@codeqr/ts-mcp 0.24.1 → 0.25.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.
@@ -84,7 +84,7 @@ const EMBEDDED_METHODS: MethodEntry[] = [
84
84
  'proxy?: boolean;',
85
85
  'publicStats?: boolean;',
86
86
  'rewrite?: boolean;',
87
- "rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[];",
87
+ "rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[];",
88
88
  'tagId?: string;',
89
89
  'tagIds?: string | string[];',
90
90
  'tagNames?: string | string[];',
@@ -95,14 +95,14 @@ const EMBEDDED_METHODS: MethodEntry[] = [
95
95
  'webhookIds?: string[];',
96
96
  ],
97
97
  response:
98
- "{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }",
98
+ "{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }",
99
99
  markdown:
100
- "## create\n\n`client.links.create(url: string, android?: string, archived?: boolean, comments?: string, description?: string, doIndex?: boolean, domain?: string, expiredUrl?: string, expiresAt?: string, externalId?: string, flexible?: boolean, folderId?: string, geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }, image?: string, ios?: string, isFormMandatory?: boolean, key?: string, pageId?: string, pageUrl?: string, password?: string, prefix?: string, preRedirection?: boolean, proxy?: boolean, publicStats?: boolean, rewrite?: boolean, rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[], tagId?: string, tagIds?: string | string[], tagNames?: string | string[], title?: string, trackConversion?: boolean, useAsTemplate?: boolean, video?: string, webhookIds?: string[]): { id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; tagId: string; tags: tag[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n**post** `/links`\n\nCreate a new link for the authenticated workspace.\n\n### Parameters\n\n- `url: string`\n The destination URL of the short link.\n\n- `android?: string`\n The Android destination URL for the short link for Android device targeting.\n\n- `archived?: boolean`\n Whether the short link is archived.\n\n- `comments?: string`\n The comments for the short link.\n\n- `description?: string`\n The description of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `doIndex?: boolean`\n Allow search engines to index your short link. Default is `false` if not provided. Learn more: https://codeqr.link/noindex\n\n- `domain?: string`\n The domain of the short link. If not provided, the main domain of the project will be used (or `codeqr.link` if the project has no domains).\n\n- `expiredUrl?: string`\n The URL to redirect to when the short link expires.\n\n- `expiresAt?: string`\n The date and time when the short link will expire in ISO-8601 format. Must be in the future.\n\n- `externalId?: string`\n 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.\n\n- `flexible?: boolean`\n Whether the short link is flexible.\n\n- `folderId?: string`\n The unique ID existing folder to assign the short link to.\n\n- `geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }`\n Geographic targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`.\n - `AD?: string`\n - `AE?: string`\n - `AF?: string`\n - `AG?: string`\n - `AI?: string`\n - `AL?: string`\n - `AM?: string`\n - `AO?: string`\n - `AQ?: string`\n - `AR?: string`\n - `AS?: string`\n - `AT?: string`\n - `AU?: string`\n - `AW?: string`\n - `AX?: string`\n - `AZ?: string`\n - `BA?: string`\n - `BB?: string`\n - `BD?: string`\n - `BE?: string`\n - `BF?: string`\n - `BG?: string`\n - `BH?: string`\n - `BI?: string`\n - `BJ?: string`\n - `BL?: string`\n - `BM?: string`\n - `BN?: string`\n - `BO?: string`\n - `BQ?: string`\n - `BR?: string`\n - `BS?: string`\n - `BT?: string`\n - `BV?: string`\n - `BW?: string`\n - `BY?: string`\n - `BZ?: string`\n - `CA?: string`\n - `CC?: string`\n - `CD?: string`\n - `CF?: string`\n - `CG?: string`\n - `CH?: string`\n - `CI?: string`\n - `CK?: string`\n - `CL?: string`\n - `CM?: string`\n - `CN?: string`\n - `CO?: string`\n - `CR?: string`\n - `CU?: string`\n - `CV?: string`\n - `CW?: string`\n - `CX?: string`\n - `CY?: string`\n - `CZ?: string`\n - `DE?: string`\n - `DJ?: string`\n - `DK?: string`\n - `DM?: string`\n - `DO?: string`\n - `DZ?: string`\n - `EC?: string`\n - `EE?: string`\n - `EG?: string`\n - `EH?: string`\n - `ER?: string`\n - `ES?: string`\n - `ET?: string`\n - `FI?: string`\n - `FJ?: string`\n - `FK?: string`\n - `FM?: string`\n - `FO?: string`\n - `FR?: string`\n - `GA?: string`\n - `GB?: string`\n - `GD?: string`\n - `GE?: string`\n - `GF?: string`\n - `GG?: string`\n - `GH?: string`\n - `GI?: string`\n - `GL?: string`\n - `GM?: string`\n - `GN?: string`\n - `GP?: string`\n - `GQ?: string`\n - `GR?: string`\n - `GS?: string`\n - `GT?: string`\n - `GU?: string`\n - `GW?: string`\n - `GY?: string`\n - `HK?: string`\n - `HM?: string`\n - `HN?: string`\n - `HR?: string`\n - `HT?: string`\n - `HU?: string`\n - `ID?: string`\n - `IE?: string`\n - `IL?: string`\n - `IM?: string`\n - `IN?: string`\n - `IO?: string`\n - `IQ?: string`\n - `IR?: string`\n - `IS?: string`\n - `IT?: string`\n - `JE?: string`\n - `JM?: string`\n - `JO?: string`\n - `JP?: string`\n - `KE?: string`\n - `KG?: string`\n - `KH?: string`\n - `KI?: string`\n - `KM?: string`\n - `KN?: string`\n - `KP?: string`\n - `KR?: string`\n - `KW?: string`\n - `KY?: string`\n - `KZ?: string`\n - `LA?: string`\n - `LB?: string`\n - `LC?: string`\n - `LI?: string`\n - `LK?: string`\n - `LR?: string`\n - `LS?: string`\n - `LT?: string`\n - `LU?: string`\n - `LV?: string`\n - `LY?: string`\n - `MA?: string`\n - `MC?: string`\n - `MD?: string`\n - `ME?: string`\n - `MF?: string`\n - `MG?: string`\n - `MH?: string`\n - `MK?: string`\n - `ML?: string`\n - `MM?: string`\n - `MN?: string`\n - `MO?: string`\n - `MP?: string`\n - `MQ?: string`\n - `MR?: string`\n - `MS?: string`\n - `MT?: string`\n - `MU?: string`\n - `MV?: string`\n - `MW?: string`\n - `MX?: string`\n - `MY?: string`\n - `MZ?: string`\n - `NA?: string`\n - `NC?: string`\n - `NE?: string`\n - `NF?: string`\n - `NG?: string`\n - `NI?: string`\n - `NL?: string`\n - `NO?: string`\n - `NP?: string`\n - `NR?: string`\n - `NU?: string`\n - `NZ?: string`\n - `OM?: string`\n - `PA?: string`\n - `PE?: string`\n - `PF?: string`\n - `PG?: string`\n - `PH?: string`\n - `PK?: string`\n - `PL?: string`\n - `PM?: string`\n - `PN?: string`\n - `PR?: string`\n - `PS?: string`\n - `PT?: string`\n - `PW?: string`\n - `PY?: string`\n - `QA?: string`\n - `RE?: string`\n - `RO?: string`\n - `RS?: string`\n - `RU?: string`\n - `RW?: string`\n - `SA?: string`\n - `SB?: string`\n - `SC?: string`\n - `SD?: string`\n - `SE?: string`\n - `SG?: string`\n - `SH?: string`\n - `SI?: string`\n - `SJ?: string`\n - `SK?: string`\n - `SL?: string`\n - `SM?: string`\n - `SN?: string`\n - `SO?: string`\n - `SR?: string`\n - `SS?: string`\n - `ST?: string`\n - `SV?: string`\n - `SX?: string`\n - `SY?: string`\n - `SZ?: string`\n - `TC?: string`\n - `TD?: string`\n - `TF?: string`\n - `TG?: string`\n - `TH?: string`\n - `TJ?: string`\n - `TK?: string`\n - `TL?: string`\n - `TM?: string`\n - `TN?: string`\n - `TO?: string`\n - `TR?: string`\n - `TT?: string`\n - `TV?: string`\n - `TW?: string`\n - `TZ?: string`\n - `UA?: string`\n - `UG?: string`\n - `UM?: string`\n - `US?: string`\n - `UY?: string`\n - `UZ?: string`\n - `VA?: string`\n - `VC?: string`\n - `VE?: string`\n - `VG?: string`\n - `VI?: string`\n - `VN?: string`\n - `VU?: string`\n - `WF?: string`\n - `WS?: string`\n - `XK?: string`\n - `YE?: string`\n - `YT?: string`\n - `ZA?: string`\n - `ZM?: string`\n - `ZW?: string`\n\n- `image?: string`\n The image of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `ios?: string`\n The iOS destination URL for the short link for iOS device targeting.\n\n- `isFormMandatory?: boolean`\n If the form is mandatory for the page.\n\n- `key?: string`\n The slug of the short link. If not provided, a random 7-character slug will be generated.\n\n- `pageId?: string`\n The ID of the page to redirect to before the link destination.\n\n- `pageUrl?: string`\n The URL of the page to redirect to before the link destination.\n\n- `password?: string`\n The password required to access the short link destination URL.\n\n- `prefix?: string`\n The prefix of the short link slug for randomly generated keys (for example, if the prefix is `/c/`, the generated keys will be in the format `/c/:key`). Will be ignored if `key` is provided.\n\n- `preRedirection?: boolean`\n Whether the short link has pre-redirection.\n\n- `proxy?: boolean`\n Whether the short link uses the custom link preview feature.\n\n- `publicStats?: boolean`\n Whether the short link statistics are publicly accessible.\n\n- `rewrite?: boolean`\n Whether the short link uses link cloaking.\n\n- `rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]`\n Smart rules for conditional destination routing by request attribute.\n\n- `tagId?: string`\n The unique ID of the tag assigned to the short link. This field is deprecated – use `tagIds` instead.\n\n- `tagIds?: string | string[]`\n The unique IDs of the tags assigned to the short link.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the short link (case insensitive).\n\n- `title?: string`\n The title of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `trackConversion?: boolean`\n Whether to track conversions for the short link.\n\n- `useAsTemplate?: boolean`\n Whether this link should be used as a reusable template.\n\n- `video?: string`\n The video of the short link.\n\n- `webhookIds?: string[]`\n An array of webhook IDs to trigger when the link is clicked. These webhooks will receive click event data.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `clicks: number`\n - `comments: string`\n - `createdAt: string`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `leads: number`\n - `notificationToken: string`\n - `password: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `title: string`\n - `trackConversion: boolean`\n - `updatedAt: string`\n - `url: string`\n - `useAsTemplate: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `video: string`\n - `pageId?: string`\n - `pageUrl?: string`\n - `qrCode?: string`\n - `shortLink?: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst link = await client.links.create({ url: 'https://google.com' });\n\nconsole.log(link);\n```",
100
+ "## create\n\n`client.links.create(url: string, android?: string, archived?: boolean, comments?: string, description?: string, doIndex?: boolean, domain?: string, expiredUrl?: string, expiresAt?: string, externalId?: string, flexible?: boolean, folderId?: string, geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }, image?: string, ios?: string, isFormMandatory?: boolean, key?: string, pageId?: string, pageUrl?: string, password?: string, prefix?: string, preRedirection?: boolean, proxy?: boolean, publicStats?: boolean, rewrite?: boolean, rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[], tagId?: string, tagIds?: string | string[], tagNames?: string | string[], title?: string, trackConversion?: boolean, useAsTemplate?: boolean, video?: string, webhookIds?: string[]): { id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; tagId: string; tags: tag[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n**post** `/links`\n\nCreate a new link for the authenticated workspace.\n\n### Parameters\n\n- `url: string`\n The destination URL of the short link.\n\n- `android?: string`\n The Android destination URL for the short link for Android device targeting.\n\n- `archived?: boolean`\n Whether the short link is archived. Archiving hides it from the default dashboard listing; the link keeps redirecting and keeps counting clicks.\n\n- `comments?: string`\n The comments for the short link.\n\n- `description?: string`\n The description of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `doIndex?: boolean`\n Allow search engines to index your short link. Default is `false` if not provided. Learn more: https://codeqr.link/noindex\n\n- `domain?: string`\n The domain of the short link. If not provided, the main domain of the project will be used (or `codeqr.link` if the project has no domains).\n\n- `expiredUrl?: string`\n The URL to redirect to when the short link expires.\n\n- `expiresAt?: string`\n The date and time when the short link will expire in ISO-8601 format. Must be in the future.\n\n- `externalId?: string`\n 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.\n\n- `flexible?: boolean`\n Whether the short link is flexible.\n\n- `folderId?: string`\n The unique ID existing folder to assign the short link to.\n\n- `geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }`\n Geographic targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`.\n - `AD?: string`\n - `AE?: string`\n - `AF?: string`\n - `AG?: string`\n - `AI?: string`\n - `AL?: string`\n - `AM?: string`\n - `AO?: string`\n - `AQ?: string`\n - `AR?: string`\n - `AS?: string`\n - `AT?: string`\n - `AU?: string`\n - `AW?: string`\n - `AX?: string`\n - `AZ?: string`\n - `BA?: string`\n - `BB?: string`\n - `BD?: string`\n - `BE?: string`\n - `BF?: string`\n - `BG?: string`\n - `BH?: string`\n - `BI?: string`\n - `BJ?: string`\n - `BL?: string`\n - `BM?: string`\n - `BN?: string`\n - `BO?: string`\n - `BQ?: string`\n - `BR?: string`\n - `BS?: string`\n - `BT?: string`\n - `BV?: string`\n - `BW?: string`\n - `BY?: string`\n - `BZ?: string`\n - `CA?: string`\n - `CC?: string`\n - `CD?: string`\n - `CF?: string`\n - `CG?: string`\n - `CH?: string`\n - `CI?: string`\n - `CK?: string`\n - `CL?: string`\n - `CM?: string`\n - `CN?: string`\n - `CO?: string`\n - `CR?: string`\n - `CU?: string`\n - `CV?: string`\n - `CW?: string`\n - `CX?: string`\n - `CY?: string`\n - `CZ?: string`\n - `DE?: string`\n - `DJ?: string`\n - `DK?: string`\n - `DM?: string`\n - `DO?: string`\n - `DZ?: string`\n - `EC?: string`\n - `EE?: string`\n - `EG?: string`\n - `EH?: string`\n - `ER?: string`\n - `ES?: string`\n - `ET?: string`\n - `FI?: string`\n - `FJ?: string`\n - `FK?: string`\n - `FM?: string`\n - `FO?: string`\n - `FR?: string`\n - `GA?: string`\n - `GB?: string`\n - `GD?: string`\n - `GE?: string`\n - `GF?: string`\n - `GG?: string`\n - `GH?: string`\n - `GI?: string`\n - `GL?: string`\n - `GM?: string`\n - `GN?: string`\n - `GP?: string`\n - `GQ?: string`\n - `GR?: string`\n - `GS?: string`\n - `GT?: string`\n - `GU?: string`\n - `GW?: string`\n - `GY?: string`\n - `HK?: string`\n - `HM?: string`\n - `HN?: string`\n - `HR?: string`\n - `HT?: string`\n - `HU?: string`\n - `ID?: string`\n - `IE?: string`\n - `IL?: string`\n - `IM?: string`\n - `IN?: string`\n - `IO?: string`\n - `IQ?: string`\n - `IR?: string`\n - `IS?: string`\n - `IT?: string`\n - `JE?: string`\n - `JM?: string`\n - `JO?: string`\n - `JP?: string`\n - `KE?: string`\n - `KG?: string`\n - `KH?: string`\n - `KI?: string`\n - `KM?: string`\n - `KN?: string`\n - `KP?: string`\n - `KR?: string`\n - `KW?: string`\n - `KY?: string`\n - `KZ?: string`\n - `LA?: string`\n - `LB?: string`\n - `LC?: string`\n - `LI?: string`\n - `LK?: string`\n - `LR?: string`\n - `LS?: string`\n - `LT?: string`\n - `LU?: string`\n - `LV?: string`\n - `LY?: string`\n - `MA?: string`\n - `MC?: string`\n - `MD?: string`\n - `ME?: string`\n - `MF?: string`\n - `MG?: string`\n - `MH?: string`\n - `MK?: string`\n - `ML?: string`\n - `MM?: string`\n - `MN?: string`\n - `MO?: string`\n - `MP?: string`\n - `MQ?: string`\n - `MR?: string`\n - `MS?: string`\n - `MT?: string`\n - `MU?: string`\n - `MV?: string`\n - `MW?: string`\n - `MX?: string`\n - `MY?: string`\n - `MZ?: string`\n - `NA?: string`\n - `NC?: string`\n - `NE?: string`\n - `NF?: string`\n - `NG?: string`\n - `NI?: string`\n - `NL?: string`\n - `NO?: string`\n - `NP?: string`\n - `NR?: string`\n - `NU?: string`\n - `NZ?: string`\n - `OM?: string`\n - `PA?: string`\n - `PE?: string`\n - `PF?: string`\n - `PG?: string`\n - `PH?: string`\n - `PK?: string`\n - `PL?: string`\n - `PM?: string`\n - `PN?: string`\n - `PR?: string`\n - `PS?: string`\n - `PT?: string`\n - `PW?: string`\n - `PY?: string`\n - `QA?: string`\n - `RE?: string`\n - `RO?: string`\n - `RS?: string`\n - `RU?: string`\n - `RW?: string`\n - `SA?: string`\n - `SB?: string`\n - `SC?: string`\n - `SD?: string`\n - `SE?: string`\n - `SG?: string`\n - `SH?: string`\n - `SI?: string`\n - `SJ?: string`\n - `SK?: string`\n - `SL?: string`\n - `SM?: string`\n - `SN?: string`\n - `SO?: string`\n - `SR?: string`\n - `SS?: string`\n - `ST?: string`\n - `SV?: string`\n - `SX?: string`\n - `SY?: string`\n - `SZ?: string`\n - `TC?: string`\n - `TD?: string`\n - `TF?: string`\n - `TG?: string`\n - `TH?: string`\n - `TJ?: string`\n - `TK?: string`\n - `TL?: string`\n - `TM?: string`\n - `TN?: string`\n - `TO?: string`\n - `TR?: string`\n - `TT?: string`\n - `TV?: string`\n - `TW?: string`\n - `TZ?: string`\n - `UA?: string`\n - `UG?: string`\n - `UM?: string`\n - `US?: string`\n - `UY?: string`\n - `UZ?: string`\n - `VA?: string`\n - `VC?: string`\n - `VE?: string`\n - `VG?: string`\n - `VI?: string`\n - `VN?: string`\n - `VU?: string`\n - `WF?: string`\n - `WS?: string`\n - `XK?: string`\n - `YE?: string`\n - `YT?: string`\n - `ZA?: string`\n - `ZM?: string`\n - `ZW?: string`\n\n- `image?: string`\n The image of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `ios?: string`\n The iOS destination URL for the short link for iOS device targeting.\n\n- `isFormMandatory?: boolean`\n If the form is mandatory for the page.\n\n- `key?: string`\n The slug of the short link. If not provided, a random 7-character slug will be generated.\n\n- `pageId?: string`\n The ID of the page to redirect to before the link destination.\n\n- `pageUrl?: string`\n The URL of the page to redirect to before the link destination.\n\n- `password?: string`\n The password required to access the short link destination URL.\n\n- `prefix?: string`\n The prefix of the short link slug for randomly generated keys (for example, if the prefix is `/c/`, the generated keys will be in the format `/c/:key`). Will be ignored if `key` is provided.\n\n- `preRedirection?: boolean`\n Whether the short link has pre-redirection.\n\n- `proxy?: boolean`\n Whether the short link uses the custom link preview feature.\n\n- `publicStats?: boolean`\n Whether the short link statistics are publicly accessible.\n\n- `rewrite?: boolean`\n Whether the short link uses link cloaking.\n\n- `rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]`\n Smart rules for conditional destination routing by request attribute.\n\n- `tagId?: string`\n The unique ID of the tag assigned to the short link. This field is deprecated – use `tagIds` instead.\n\n- `tagIds?: string | string[]`\n The unique IDs of the tags assigned to the short link.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the short link (case insensitive). Ignored when `tagIds` is also present.\n\n- `title?: string`\n The title of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `trackConversion?: boolean`\n Whether to track conversions for the short link.\n\n- `useAsTemplate?: boolean`\n Whether this link should be used as a reusable template.\n\n- `video?: string`\n The video of the short link.\n\n- `webhookIds?: string[]`\n An array of webhook IDs to trigger when the link is clicked. These webhooks will receive click event data.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `clicks: number`\n - `comments: string`\n - `createdAt: string`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `leads: number`\n - `notificationToken: string`\n - `password: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `title: string`\n - `trackConversion: boolean`\n - `updatedAt: string`\n - `url: string`\n - `useAsTemplate: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `video: string`\n - `pageId?: string`\n - `pageUrl?: string`\n - `qrCode?: string`\n - `shortLink?: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst link = await client.links.create({ url: 'https://google.com' });\n\nconsole.log(link);\n```",
101
101
  perLanguage: {
102
102
  typescript: {
103
103
  method: 'client.links.create',
104
104
  example:
105
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst link = await client.links.create({ url: 'https://google.com' });\n\nconsole.log(link.id);",
105
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst link = await client.links.create({ url: 'https://google.com' });\n\nconsole.log(link.id);",
106
106
  },
107
107
  http: {
108
108
  example:
@@ -162,14 +162,14 @@ const EMBEDDED_METHODS: MethodEntry[] = [
162
162
  'withTags?: boolean;',
163
163
  ],
164
164
  response:
165
- "{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }[]",
165
+ "{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: object[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }[]",
166
166
  markdown:
167
- "## list\n\n`client.links.list(android?: string, clicksMax?: number, clicksMin?: number, comments?: string, createdAfter?: string, createdBefore?: string, domain?: string, expiresAfter?: string, expiresAt?: string, expiresBefore?: string, folderId?: string, geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }, hasComments?: boolean, hasCustomSocial?: boolean, hasDevice?: boolean, hasExpiration?: boolean, hasGeo?: boolean, hasPassword?: boolean, hasTags?: boolean, hasUTM?: boolean, ios?: string, linkIds?: string | string[], page?: number, pageSize?: number, password?: string, projectSlug?: string, search?: string, showArchived?: boolean, sort?: 'createdAt' | 'clicks' | 'lastClicked', tagId?: string, tagIds?: string | string[], tagNames?: string | string[], trackConversion?: boolean, useAsTemplate?: boolean, userId?: string, utm_campaign?: string, utm_content?: string, utm_medium?: string, utm_source?: string, utm_term?: string, withTags?: boolean): object[]`\n\n**get** `/links`\n\nRetrieve a paginated list of links for the authenticated workspace.\n\n### Parameters\n\n- `android?: string`\n The Android device to filter by.\n\n- `clicksMax?: number`\n Maximum number of clicks\n\n- `clicksMin?: number`\n Minimum number of clicks\n\n- `comments?: string`\n The comments to filter by.\n\n- `createdAfter?: string`\n Created after date (ISO string)\n\n- `createdBefore?: string`\n Created before date (ISO string)\n\n- `domain?: string`\n The domain to filter the links. For example, `ac.me`. If not provided, all links of the project will be returned.\n\n- `expiresAfter?: string`\n Expires after date (ISO string)\n\n- `expiresAt?: string`\n The date and time the short link will expire in ISO-8601 format. Must be in the future.\n\n- `expiresBefore?: string`\n Expires before date (ISO string)\n\n- `folderId?: string`\n The folder ID to filter the links by.\n\n- `geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }`\n Geographic segmentation information for the short link in JSON format `{[COUNTRY]: https://example.com }`.\n - `AD?: string`\n - `AE?: string`\n - `AF?: string`\n - `AG?: string`\n - `AI?: string`\n - `AL?: string`\n - `AM?: string`\n - `AO?: string`\n - `AQ?: string`\n - `AR?: string`\n - `AS?: string`\n - `AT?: string`\n - `AU?: string`\n - `AW?: string`\n - `AX?: string`\n - `AZ?: string`\n - `BA?: string`\n - `BB?: string`\n - `BD?: string`\n - `BE?: string`\n - `BF?: string`\n - `BG?: string`\n - `BH?: string`\n - `BI?: string`\n - `BJ?: string`\n - `BL?: string`\n - `BM?: string`\n - `BN?: string`\n - `BO?: string`\n - `BQ?: string`\n - `BR?: string`\n - `BS?: string`\n - `BT?: string`\n - `BV?: string`\n - `BW?: string`\n - `BY?: string`\n - `BZ?: string`\n - `CA?: string`\n - `CC?: string`\n - `CD?: string`\n - `CF?: string`\n - `CG?: string`\n - `CH?: string`\n - `CI?: string`\n - `CK?: string`\n - `CL?: string`\n - `CM?: string`\n - `CN?: string`\n - `CO?: string`\n - `CR?: string`\n - `CU?: string`\n - `CV?: string`\n - `CW?: string`\n - `CX?: string`\n - `CY?: string`\n - `CZ?: string`\n - `DE?: string`\n - `DJ?: string`\n - `DK?: string`\n - `DM?: string`\n - `DO?: string`\n - `DZ?: string`\n - `EC?: string`\n - `EE?: string`\n - `EG?: string`\n - `EH?: string`\n - `ER?: string`\n - `ES?: string`\n - `ET?: string`\n - `FI?: string`\n - `FJ?: string`\n - `FK?: string`\n - `FM?: string`\n - `FO?: string`\n - `FR?: string`\n - `GA?: string`\n - `GB?: string`\n - `GD?: string`\n - `GE?: string`\n - `GF?: string`\n - `GG?: string`\n - `GH?: string`\n - `GI?: string`\n - `GL?: string`\n - `GM?: string`\n - `GN?: string`\n - `GP?: string`\n - `GQ?: string`\n - `GR?: string`\n - `GS?: string`\n - `GT?: string`\n - `GU?: string`\n - `GW?: string`\n - `GY?: string`\n - `HK?: string`\n - `HM?: string`\n - `HN?: string`\n - `HR?: string`\n - `HT?: string`\n - `HU?: string`\n - `ID?: string`\n - `IE?: string`\n - `IL?: string`\n - `IM?: string`\n - `IN?: string`\n - `IO?: string`\n - `IQ?: string`\n - `IR?: string`\n - `IS?: string`\n - `IT?: string`\n - `JE?: string`\n - `JM?: string`\n - `JO?: string`\n - `JP?: string`\n - `KE?: string`\n - `KG?: string`\n - `KH?: string`\n - `KI?: string`\n - `KM?: string`\n - `KN?: string`\n - `KP?: string`\n - `KR?: string`\n - `KW?: string`\n - `KY?: string`\n - `KZ?: string`\n - `LA?: string`\n - `LB?: string`\n - `LC?: string`\n - `LI?: string`\n - `LK?: string`\n - `LR?: string`\n - `LS?: string`\n - `LT?: string`\n - `LU?: string`\n - `LV?: string`\n - `LY?: string`\n - `MA?: string`\n - `MC?: string`\n - `MD?: string`\n - `ME?: string`\n - `MF?: string`\n - `MG?: string`\n - `MH?: string`\n - `MK?: string`\n - `ML?: string`\n - `MM?: string`\n - `MN?: string`\n - `MO?: string`\n - `MP?: string`\n - `MQ?: string`\n - `MR?: string`\n - `MS?: string`\n - `MT?: string`\n - `MU?: string`\n - `MV?: string`\n - `MW?: string`\n - `MX?: string`\n - `MY?: string`\n - `MZ?: string`\n - `NA?: string`\n - `NC?: string`\n - `NE?: string`\n - `NF?: string`\n - `NG?: string`\n - `NI?: string`\n - `NL?: string`\n - `NO?: string`\n - `NP?: string`\n - `NR?: string`\n - `NU?: string`\n - `NZ?: string`\n - `OM?: string`\n - `PA?: string`\n - `PE?: string`\n - `PF?: string`\n - `PG?: string`\n - `PH?: string`\n - `PK?: string`\n - `PL?: string`\n - `PM?: string`\n - `PN?: string`\n - `PR?: string`\n - `PS?: string`\n - `PT?: string`\n - `PW?: string`\n - `PY?: string`\n - `QA?: string`\n - `RE?: string`\n - `RO?: string`\n - `RS?: string`\n - `RU?: string`\n - `RW?: string`\n - `SA?: string`\n - `SB?: string`\n - `SC?: string`\n - `SD?: string`\n - `SE?: string`\n - `SG?: string`\n - `SH?: string`\n - `SI?: string`\n - `SJ?: string`\n - `SK?: string`\n - `SL?: string`\n - `SM?: string`\n - `SN?: string`\n - `SO?: string`\n - `SR?: string`\n - `SS?: string`\n - `ST?: string`\n - `SV?: string`\n - `SX?: string`\n - `SY?: string`\n - `SZ?: string`\n - `TC?: string`\n - `TD?: string`\n - `TF?: string`\n - `TG?: string`\n - `TH?: string`\n - `TJ?: string`\n - `TK?: string`\n - `TL?: string`\n - `TM?: string`\n - `TN?: string`\n - `TO?: string`\n - `TR?: string`\n - `TT?: string`\n - `TV?: string`\n - `TW?: string`\n - `TZ?: string`\n - `UA?: string`\n - `UG?: string`\n - `UM?: string`\n - `US?: string`\n - `UY?: string`\n - `UZ?: string`\n - `VA?: string`\n - `VC?: string`\n - `VE?: string`\n - `VG?: string`\n - `VI?: string`\n - `VN?: string`\n - `VU?: string`\n - `WF?: string`\n - `WS?: string`\n - `XK?: string`\n - `YE?: string`\n - `YT?: string`\n - `ZA?: string`\n - `ZM?: string`\n - `ZW?: string`\n\n- `hasComments?: boolean`\n Filter links that have comments (any comments)\n\n- `hasCustomSocial?: boolean`\n Filter links that have custom social media cards\n\n- `hasDevice?: boolean`\n Filter links that have device targeting\n\n- `hasExpiration?: boolean`\n Filter links that have expiration date (any expiration)\n\n- `hasGeo?: boolean`\n Filter links that have geo-targeting\n\n- `hasPassword?: boolean`\n Filter links that have password protection (any password)\n\n- `hasTags?: boolean`\n Filter links that have tags (any tags)\n\n- `hasUTM?: boolean`\n Filter links that have UTM parameters\n\n- `ios?: string`\n The iOS device to filter by.\n\n- `linkIds?: string | string[]`\n Link IDs to filter by.\n\n- `page?: number`\n The page number for pagination.\n\n- `pageSize?: number`\n The number of items per page.\n\n- `password?: string`\n The password to filter by.\n\n- `projectSlug?: string`\n The slug of the project to which the link belongs. For example, for `app.codeqr.io/acme`, the projectSlug is `acme`.\n\n- `search?: string`\n The search term to filter the links. The search term will be matched against the short link slug and the destination URL.\n\n- `showArchived?: boolean`\n If should include archived links in the response. The default is `false` if not provided.\n\n- `sort?: 'createdAt' | 'clicks' | 'lastClicked'`\n The field to sort the links by. The default is `createdAt`, and sort order is always descending.\n\n- `tagId?: string`\n [OBSOLETO (use tagIds em vez disso)]: The unique ID of the tag assigned to the short link.\n\n- `tagIds?: string | string[]`\n The IDs of the tags to filter the links.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the short link (case insensitive).\n\n- `trackConversion?: boolean`\n If should include links with conversion tracking enabled. The default is `false` if not provided.\n\n- `useAsTemplate?: boolean`\n Filter links marked as templates.\n\n- `userId?: string`\n The ID of the user to filter by.\n\n- `utm_campaign?: string`\n Filter by UTM campaign value\n\n- `utm_content?: string`\n Filter by UTM content value\n\n- `utm_medium?: string`\n Filter by UTM medium value\n\n- `utm_source?: string`\n Filter by UTM source value\n\n- `utm_term?: string`\n Filter by UTM term value\n\n- `withTags?: boolean`\n If should include tags in the response. The default is `false` if not provided.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }[]`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst links = await client.links.list();\n\nconsole.log(links);\n```",
167
+ "## list\n\n`client.links.list(android?: string, clicksMax?: number, clicksMin?: number, comments?: string, createdAfter?: string, createdBefore?: string, domain?: string, expiresAfter?: string, expiresAt?: string, expiresBefore?: string, folderId?: string, geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }, hasComments?: boolean, hasCustomSocial?: boolean, hasDevice?: boolean, hasExpiration?: boolean, hasGeo?: boolean, hasPassword?: boolean, hasTags?: boolean, hasUTM?: boolean, ios?: string, linkIds?: string | string[], page?: number, pageSize?: number, password?: string, projectSlug?: string, search?: string, showArchived?: boolean, sort?: 'createdAt' | 'clicks' | 'lastClicked', tagId?: string, tagIds?: string | string[], tagNames?: string | string[], trackConversion?: boolean, useAsTemplate?: boolean, userId?: string, utm_campaign?: string, utm_content?: string, utm_medium?: string, utm_source?: string, utm_term?: string, withTags?: boolean): object[]`\n\n**get** `/links`\n\nRetrieve a paginated list of links for the authenticated workspace.\n\n### Parameters\n\n- `android?: string`\n The Android device to filter by.\n\n- `clicksMax?: number`\n Maximum number of clicks\n\n- `clicksMin?: number`\n Minimum number of clicks\n\n- `comments?: string`\n The comments to filter by.\n\n- `createdAfter?: string`\n Created after date (ISO string)\n\n- `createdBefore?: string`\n Created before date (ISO string)\n\n- `domain?: string`\n The domain to filter the links. For example, `ac.me`. If not provided, all links of the project will be returned.\n\n- `expiresAfter?: string`\n Expires after date (ISO string)\n\n- `expiresAt?: string`\n The date and time the short link will expire in ISO-8601 format. Must be in the future.\n\n- `expiresBefore?: string`\n Expires before date (ISO string)\n\n- `folderId?: string`\n The folder ID to filter the links by.\n\n- `geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }`\n Geographic segmentation information for the short link in JSON format `{[COUNTRY]: https://example.com }`.\n - `AD?: string`\n - `AE?: string`\n - `AF?: string`\n - `AG?: string`\n - `AI?: string`\n - `AL?: string`\n - `AM?: string`\n - `AO?: string`\n - `AQ?: string`\n - `AR?: string`\n - `AS?: string`\n - `AT?: string`\n - `AU?: string`\n - `AW?: string`\n - `AX?: string`\n - `AZ?: string`\n - `BA?: string`\n - `BB?: string`\n - `BD?: string`\n - `BE?: string`\n - `BF?: string`\n - `BG?: string`\n - `BH?: string`\n - `BI?: string`\n - `BJ?: string`\n - `BL?: string`\n - `BM?: string`\n - `BN?: string`\n - `BO?: string`\n - `BQ?: string`\n - `BR?: string`\n - `BS?: string`\n - `BT?: string`\n - `BV?: string`\n - `BW?: string`\n - `BY?: string`\n - `BZ?: string`\n - `CA?: string`\n - `CC?: string`\n - `CD?: string`\n - `CF?: string`\n - `CG?: string`\n - `CH?: string`\n - `CI?: string`\n - `CK?: string`\n - `CL?: string`\n - `CM?: string`\n - `CN?: string`\n - `CO?: string`\n - `CR?: string`\n - `CU?: string`\n - `CV?: string`\n - `CW?: string`\n - `CX?: string`\n - `CY?: string`\n - `CZ?: string`\n - `DE?: string`\n - `DJ?: string`\n - `DK?: string`\n - `DM?: string`\n - `DO?: string`\n - `DZ?: string`\n - `EC?: string`\n - `EE?: string`\n - `EG?: string`\n - `EH?: string`\n - `ER?: string`\n - `ES?: string`\n - `ET?: string`\n - `FI?: string`\n - `FJ?: string`\n - `FK?: string`\n - `FM?: string`\n - `FO?: string`\n - `FR?: string`\n - `GA?: string`\n - `GB?: string`\n - `GD?: string`\n - `GE?: string`\n - `GF?: string`\n - `GG?: string`\n - `GH?: string`\n - `GI?: string`\n - `GL?: string`\n - `GM?: string`\n - `GN?: string`\n - `GP?: string`\n - `GQ?: string`\n - `GR?: string`\n - `GS?: string`\n - `GT?: string`\n - `GU?: string`\n - `GW?: string`\n - `GY?: string`\n - `HK?: string`\n - `HM?: string`\n - `HN?: string`\n - `HR?: string`\n - `HT?: string`\n - `HU?: string`\n - `ID?: string`\n - `IE?: string`\n - `IL?: string`\n - `IM?: string`\n - `IN?: string`\n - `IO?: string`\n - `IQ?: string`\n - `IR?: string`\n - `IS?: string`\n - `IT?: string`\n - `JE?: string`\n - `JM?: string`\n - `JO?: string`\n - `JP?: string`\n - `KE?: string`\n - `KG?: string`\n - `KH?: string`\n - `KI?: string`\n - `KM?: string`\n - `KN?: string`\n - `KP?: string`\n - `KR?: string`\n - `KW?: string`\n - `KY?: string`\n - `KZ?: string`\n - `LA?: string`\n - `LB?: string`\n - `LC?: string`\n - `LI?: string`\n - `LK?: string`\n - `LR?: string`\n - `LS?: string`\n - `LT?: string`\n - `LU?: string`\n - `LV?: string`\n - `LY?: string`\n - `MA?: string`\n - `MC?: string`\n - `MD?: string`\n - `ME?: string`\n - `MF?: string`\n - `MG?: string`\n - `MH?: string`\n - `MK?: string`\n - `ML?: string`\n - `MM?: string`\n - `MN?: string`\n - `MO?: string`\n - `MP?: string`\n - `MQ?: string`\n - `MR?: string`\n - `MS?: string`\n - `MT?: string`\n - `MU?: string`\n - `MV?: string`\n - `MW?: string`\n - `MX?: string`\n - `MY?: string`\n - `MZ?: string`\n - `NA?: string`\n - `NC?: string`\n - `NE?: string`\n - `NF?: string`\n - `NG?: string`\n - `NI?: string`\n - `NL?: string`\n - `NO?: string`\n - `NP?: string`\n - `NR?: string`\n - `NU?: string`\n - `NZ?: string`\n - `OM?: string`\n - `PA?: string`\n - `PE?: string`\n - `PF?: string`\n - `PG?: string`\n - `PH?: string`\n - `PK?: string`\n - `PL?: string`\n - `PM?: string`\n - `PN?: string`\n - `PR?: string`\n - `PS?: string`\n - `PT?: string`\n - `PW?: string`\n - `PY?: string`\n - `QA?: string`\n - `RE?: string`\n - `RO?: string`\n - `RS?: string`\n - `RU?: string`\n - `RW?: string`\n - `SA?: string`\n - `SB?: string`\n - `SC?: string`\n - `SD?: string`\n - `SE?: string`\n - `SG?: string`\n - `SH?: string`\n - `SI?: string`\n - `SJ?: string`\n - `SK?: string`\n - `SL?: string`\n - `SM?: string`\n - `SN?: string`\n - `SO?: string`\n - `SR?: string`\n - `SS?: string`\n - `ST?: string`\n - `SV?: string`\n - `SX?: string`\n - `SY?: string`\n - `SZ?: string`\n - `TC?: string`\n - `TD?: string`\n - `TF?: string`\n - `TG?: string`\n - `TH?: string`\n - `TJ?: string`\n - `TK?: string`\n - `TL?: string`\n - `TM?: string`\n - `TN?: string`\n - `TO?: string`\n - `TR?: string`\n - `TT?: string`\n - `TV?: string`\n - `TW?: string`\n - `TZ?: string`\n - `UA?: string`\n - `UG?: string`\n - `UM?: string`\n - `US?: string`\n - `UY?: string`\n - `UZ?: string`\n - `VA?: string`\n - `VC?: string`\n - `VE?: string`\n - `VG?: string`\n - `VI?: string`\n - `VN?: string`\n - `VU?: string`\n - `WF?: string`\n - `WS?: string`\n - `XK?: string`\n - `YE?: string`\n - `YT?: string`\n - `ZA?: string`\n - `ZM?: string`\n - `ZW?: string`\n\n- `hasComments?: boolean`\n Filter links that have comments (any comments)\n\n- `hasCustomSocial?: boolean`\n Filter links that have custom social media cards\n\n- `hasDevice?: boolean`\n Filter links that have device targeting\n\n- `hasExpiration?: boolean`\n Filter links that have expiration date (any expiration)\n\n- `hasGeo?: boolean`\n Filter links that have geo-targeting\n\n- `hasPassword?: boolean`\n Filter links that have password protection (any password)\n\n- `hasTags?: boolean`\n Filter links that have tags (any tags)\n\n- `hasUTM?: boolean`\n Filter links that have UTM parameters\n\n- `ios?: string`\n The iOS device to filter by.\n\n- `linkIds?: string | string[]`\n Link IDs to filter by.\n\n- `page?: number`\n The page number for pagination.\n\n- `pageSize?: number`\n The number of items per page.\n\n- `password?: string`\n The password to filter by.\n\n- `projectSlug?: string`\n The slug of the project to which the link belongs. For example, for `app.codeqr.io/acme`, the projectSlug is `acme`.\n\n- `search?: string`\n The search term to filter the links. The search term will be matched against the short link slug and the destination URL.\n\n- `showArchived?: boolean`\n If should include archived links in the response. The default is `false` if not provided.\n\n- `sort?: 'createdAt' | 'clicks' | 'lastClicked'`\n The field to sort the links by. The default is `createdAt`, and sort order is always descending.\n\n- `tagId?: string`\n [OBSOLETO (use tagIds em vez disso)]: The unique ID of the tag assigned to the short link.\n\n- `tagIds?: string | string[]`\n The IDs of the tags to filter the links.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the short link (case insensitive).\n\n- `trackConversion?: boolean`\n If should include links with conversion tracking enabled. The default is `false` if not provided.\n\n- `useAsTemplate?: boolean`\n Filter links marked as templates.\n\n- `userId?: string`\n The ID of the user to filter by.\n\n- `utm_campaign?: string`\n Filter by UTM campaign value\n\n- `utm_content?: string`\n Filter by UTM content value\n\n- `utm_medium?: string`\n Filter by UTM medium value\n\n- `utm_source?: string`\n Filter by UTM source value\n\n- `utm_term?: string`\n Filter by UTM term value\n\n- `withTags?: boolean`\n If should include tags in the response. The default is `false` if not provided.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: object[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }[]`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst links = await client.links.list();\n\nconsole.log(links);\n```",
168
168
  perLanguage: {
169
169
  typescript: {
170
170
  method: 'client.links.list',
171
171
  example:
172
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst links = await client.links.list();\n\nconsole.log(links);",
172
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst links = await client.links.list();\n\nconsole.log(links);",
173
173
  },
174
174
  http: {
175
175
  example: 'curl https://api.codeqr.io/links \\\n -H "Authorization: Bearer $CODEQR_API_KEY"',
@@ -192,14 +192,14 @@ const EMBEDDED_METHODS: MethodEntry[] = [
192
192
  'linkId?: string;',
193
193
  ],
194
194
  response:
195
- "{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }",
195
+ "{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }",
196
196
  markdown:
197
- "## retrieve_info\n\n`client.links.retrieveInfo(domain: string, key: string, projectSlug: string, externalId?: string, linkId?: string): { id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; tagId: string; tags: tag[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n**get** `/links/info`\n\nRetrieve the info for a link.\n\n### Parameters\n\n- `domain: string`\n The domain of the link to be retrieved. For example, for `codeqr.link/github`, the domain is `codeqr.link`.\n\n- `key: string`\n The key of the link to be retrieved. For example, for `codeqr.link/github`, the key is `github`.\n\n- `projectSlug: string`\n The slug of the project to which the link belongs. For example, for `app.codeqr.io/acme`, the projectSlug is `acme`.\n\n- `externalId?: string`\n This is the ID of the link in your database. Must be prefixed with `ext_` when passed as a query parameter.\n\n- `linkId?: string`\n The unique ID of the short link.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `clicks: number`\n - `comments: string`\n - `createdAt: string`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `leads: number`\n - `notificationToken: string`\n - `password: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `title: string`\n - `trackConversion: boolean`\n - `updatedAt: string`\n - `url: string`\n - `useAsTemplate: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `video: string`\n - `pageId?: string`\n - `pageUrl?: string`\n - `qrCode?: string`\n - `shortLink?: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst link = await client.links.retrieveInfo({\n domain: 'x',\n key: 'x',\n projectSlug: 'x',\n});\n\nconsole.log(link);\n```",
197
+ "## retrieve_info\n\n`client.links.retrieveInfo(domain: string, key: string, projectSlug: string, externalId?: string, linkId?: string): { id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; tagId: string; tags: tag[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n**get** `/links/info`\n\nRetrieve the info for a link.\n\n### Parameters\n\n- `domain: string`\n The domain of the link to be retrieved. For example, for `codeqr.link/github`, the domain is `codeqr.link`.\n\n- `key: string`\n The key of the link to be retrieved. For example, for `codeqr.link/github`, the key is `github`.\n\n- `projectSlug: string`\n The slug of the project to which the link belongs. For example, for `app.codeqr.io/acme`, the projectSlug is `acme`.\n\n- `externalId?: string`\n This is the ID of the link in your database. Must be prefixed with `ext_` when passed as a query parameter.\n\n- `linkId?: string`\n The unique ID of the short link.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `clicks: number`\n - `comments: string`\n - `createdAt: string`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `leads: number`\n - `notificationToken: string`\n - `password: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `title: string`\n - `trackConversion: boolean`\n - `updatedAt: string`\n - `url: string`\n - `useAsTemplate: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `video: string`\n - `pageId?: string`\n - `pageUrl?: string`\n - `qrCode?: string`\n - `shortLink?: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst link = await client.links.retrieveInfo({\n domain: 'x',\n key: 'x',\n projectSlug: 'x',\n});\n\nconsole.log(link);\n```",
198
198
  perLanguage: {
199
199
  typescript: {
200
200
  method: 'client.links.retrieveInfo',
201
201
  example:
202
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst link = await client.links.retrieveInfo({\n domain: 'x',\n key: 'x',\n projectSlug: 'x',\n});\n\nconsole.log(link.id);",
202
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst link = await client.links.retrieveInfo({\n domain: 'x',\n key: 'x',\n projectSlug: 'x',\n});\n\nconsole.log(link.id);",
203
203
  },
204
204
  http: {
205
205
  example: 'curl https://api.codeqr.io/links/info \\\n -H "Authorization: Bearer $CODEQR_API_KEY"',
@@ -240,7 +240,7 @@ const EMBEDDED_METHODS: MethodEntry[] = [
240
240
  'proxy?: boolean;',
241
241
  'publicStats?: boolean;',
242
242
  'rewrite?: boolean;',
243
- "rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[];",
243
+ "rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[];",
244
244
  'tagId?: string;',
245
245
  'tagIds?: string | string[];',
246
246
  'tagNames?: string | string[];',
@@ -252,14 +252,14 @@ const EMBEDDED_METHODS: MethodEntry[] = [
252
252
  'webhookIds?: string[];',
253
253
  ],
254
254
  response:
255
- "{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }",
255
+ "{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }",
256
256
  markdown:
257
- "## update\n\n`client.links.update(linkId: string, android?: string, archived?: boolean, comments?: string, description?: string, doIndex?: boolean, domain?: string, expiredUrl?: string, expiresAt?: string, externalId?: string, flexible?: boolean, folderId?: string, geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }, image?: string, ios?: string, isFormMandatory?: boolean, key?: string, pageId?: string, pageUrl?: string, password?: string, prefix?: string, preRedirection?: boolean, proxy?: boolean, publicStats?: boolean, rewrite?: boolean, rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[], tagId?: string, tagIds?: string | string[], tagNames?: string | string[], title?: string, trackConversion?: boolean, url?: string, useAsTemplate?: boolean, video?: string, webhookIds?: string[]): { id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; tagId: string; tags: tag[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n**put** `/links/{linkId}`\n\nUpdate a link for the authenticated workspace. If there's no change, returns it as it is.\n\n### Parameters\n\n- `linkId: string`\n The id of the link to update. You may use either `linkId` (obtained via `/links/info` endpoint) or `externalId` prefixed with `ext_`.\n\n- `android?: string`\n The Android destination URL for the short link for Android device targeting.\n\n- `archived?: boolean`\n Whether the short link is archived.\n\n- `comments?: string`\n The comments for the short link.\n\n- `description?: string`\n The description of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `doIndex?: boolean`\n Allow search engines to index your short link. Default is `false` if not provided. Learn more: https://codeqr.link/noindex\n\n- `domain?: string`\n The domain of the short link. If not provided, the main domain of the project will be used (or `codeqr.link` if the project has no domains).\n\n- `expiredUrl?: string`\n The URL to redirect to when the short link expires.\n\n- `expiresAt?: string`\n The date and time when the short link will expire in ISO-8601 format. Must be in the future.\n\n- `externalId?: string`\n 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.\n\n- `flexible?: boolean`\n Whether the short link is flexible.\n\n- `folderId?: string`\n The unique ID existing folder to assign the short link to.\n\n- `geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }`\n Geographic targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`.\n - `AD?: string`\n - `AE?: string`\n - `AF?: string`\n - `AG?: string`\n - `AI?: string`\n - `AL?: string`\n - `AM?: string`\n - `AO?: string`\n - `AQ?: string`\n - `AR?: string`\n - `AS?: string`\n - `AT?: string`\n - `AU?: string`\n - `AW?: string`\n - `AX?: string`\n - `AZ?: string`\n - `BA?: string`\n - `BB?: string`\n - `BD?: string`\n - `BE?: string`\n - `BF?: string`\n - `BG?: string`\n - `BH?: string`\n - `BI?: string`\n - `BJ?: string`\n - `BL?: string`\n - `BM?: string`\n - `BN?: string`\n - `BO?: string`\n - `BQ?: string`\n - `BR?: string`\n - `BS?: string`\n - `BT?: string`\n - `BV?: string`\n - `BW?: string`\n - `BY?: string`\n - `BZ?: string`\n - `CA?: string`\n - `CC?: string`\n - `CD?: string`\n - `CF?: string`\n - `CG?: string`\n - `CH?: string`\n - `CI?: string`\n - `CK?: string`\n - `CL?: string`\n - `CM?: string`\n - `CN?: string`\n - `CO?: string`\n - `CR?: string`\n - `CU?: string`\n - `CV?: string`\n - `CW?: string`\n - `CX?: string`\n - `CY?: string`\n - `CZ?: string`\n - `DE?: string`\n - `DJ?: string`\n - `DK?: string`\n - `DM?: string`\n - `DO?: string`\n - `DZ?: string`\n - `EC?: string`\n - `EE?: string`\n - `EG?: string`\n - `EH?: string`\n - `ER?: string`\n - `ES?: string`\n - `ET?: string`\n - `FI?: string`\n - `FJ?: string`\n - `FK?: string`\n - `FM?: string`\n - `FO?: string`\n - `FR?: string`\n - `GA?: string`\n - `GB?: string`\n - `GD?: string`\n - `GE?: string`\n - `GF?: string`\n - `GG?: string`\n - `GH?: string`\n - `GI?: string`\n - `GL?: string`\n - `GM?: string`\n - `GN?: string`\n - `GP?: string`\n - `GQ?: string`\n - `GR?: string`\n - `GS?: string`\n - `GT?: string`\n - `GU?: string`\n - `GW?: string`\n - `GY?: string`\n - `HK?: string`\n - `HM?: string`\n - `HN?: string`\n - `HR?: string`\n - `HT?: string`\n - `HU?: string`\n - `ID?: string`\n - `IE?: string`\n - `IL?: string`\n - `IM?: string`\n - `IN?: string`\n - `IO?: string`\n - `IQ?: string`\n - `IR?: string`\n - `IS?: string`\n - `IT?: string`\n - `JE?: string`\n - `JM?: string`\n - `JO?: string`\n - `JP?: string`\n - `KE?: string`\n - `KG?: string`\n - `KH?: string`\n - `KI?: string`\n - `KM?: string`\n - `KN?: string`\n - `KP?: string`\n - `KR?: string`\n - `KW?: string`\n - `KY?: string`\n - `KZ?: string`\n - `LA?: string`\n - `LB?: string`\n - `LC?: string`\n - `LI?: string`\n - `LK?: string`\n - `LR?: string`\n - `LS?: string`\n - `LT?: string`\n - `LU?: string`\n - `LV?: string`\n - `LY?: string`\n - `MA?: string`\n - `MC?: string`\n - `MD?: string`\n - `ME?: string`\n - `MF?: string`\n - `MG?: string`\n - `MH?: string`\n - `MK?: string`\n - `ML?: string`\n - `MM?: string`\n - `MN?: string`\n - `MO?: string`\n - `MP?: string`\n - `MQ?: string`\n - `MR?: string`\n - `MS?: string`\n - `MT?: string`\n - `MU?: string`\n - `MV?: string`\n - `MW?: string`\n - `MX?: string`\n - `MY?: string`\n - `MZ?: string`\n - `NA?: string`\n - `NC?: string`\n - `NE?: string`\n - `NF?: string`\n - `NG?: string`\n - `NI?: string`\n - `NL?: string`\n - `NO?: string`\n - `NP?: string`\n - `NR?: string`\n - `NU?: string`\n - `NZ?: string`\n - `OM?: string`\n - `PA?: string`\n - `PE?: string`\n - `PF?: string`\n - `PG?: string`\n - `PH?: string`\n - `PK?: string`\n - `PL?: string`\n - `PM?: string`\n - `PN?: string`\n - `PR?: string`\n - `PS?: string`\n - `PT?: string`\n - `PW?: string`\n - `PY?: string`\n - `QA?: string`\n - `RE?: string`\n - `RO?: string`\n - `RS?: string`\n - `RU?: string`\n - `RW?: string`\n - `SA?: string`\n - `SB?: string`\n - `SC?: string`\n - `SD?: string`\n - `SE?: string`\n - `SG?: string`\n - `SH?: string`\n - `SI?: string`\n - `SJ?: string`\n - `SK?: string`\n - `SL?: string`\n - `SM?: string`\n - `SN?: string`\n - `SO?: string`\n - `SR?: string`\n - `SS?: string`\n - `ST?: string`\n - `SV?: string`\n - `SX?: string`\n - `SY?: string`\n - `SZ?: string`\n - `TC?: string`\n - `TD?: string`\n - `TF?: string`\n - `TG?: string`\n - `TH?: string`\n - `TJ?: string`\n - `TK?: string`\n - `TL?: string`\n - `TM?: string`\n - `TN?: string`\n - `TO?: string`\n - `TR?: string`\n - `TT?: string`\n - `TV?: string`\n - `TW?: string`\n - `TZ?: string`\n - `UA?: string`\n - `UG?: string`\n - `UM?: string`\n - `US?: string`\n - `UY?: string`\n - `UZ?: string`\n - `VA?: string`\n - `VC?: string`\n - `VE?: string`\n - `VG?: string`\n - `VI?: string`\n - `VN?: string`\n - `VU?: string`\n - `WF?: string`\n - `WS?: string`\n - `XK?: string`\n - `YE?: string`\n - `YT?: string`\n - `ZA?: string`\n - `ZM?: string`\n - `ZW?: string`\n\n- `image?: string`\n The image of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `ios?: string`\n The iOS destination URL for the short link for iOS device targeting.\n\n- `isFormMandatory?: boolean`\n If the form is mandatory for the page.\n\n- `key?: string`\n The slug of the short link. If not provided, a random 7-character slug will be generated.\n\n- `pageId?: string`\n The ID of the page to redirect to before the link destination.\n\n- `pageUrl?: string`\n The URL of the page to redirect to before the link destination.\n\n- `password?: string`\n The password required to access the short link destination URL.\n\n- `prefix?: string`\n The prefix of the short link slug for randomly generated keys (for example, if the prefix is `/c/`, the generated keys will be in the format `/c/:key`). Will be ignored if `key` is provided.\n\n- `preRedirection?: boolean`\n Whether the short link has pre-redirection.\n\n- `proxy?: boolean`\n Whether the short link uses the custom link preview feature.\n\n- `publicStats?: boolean`\n Whether the short link statistics are publicly accessible.\n\n- `rewrite?: boolean`\n Whether the short link uses link cloaking.\n\n- `rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]`\n Smart rules for conditional destination routing by request attribute.\n\n- `tagId?: string`\n The unique ID of the tag assigned to the short link. This field is deprecated – use `tagIds` instead.\n\n- `tagIds?: string | string[]`\n The unique IDs of the tags assigned to the short link.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the short link (case insensitive).\n\n- `title?: string`\n The title of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `trackConversion?: boolean`\n Whether to track conversions for the short link.\n\n- `url?: string`\n The destination URL of the short link.\n\n- `useAsTemplate?: boolean`\n Whether this link should be used as a reusable template.\n\n- `video?: string`\n The video of the short link.\n\n- `webhookIds?: string[]`\n An array of webhook IDs to trigger when the link is clicked. These webhooks will receive click event data.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `clicks: number`\n - `comments: string`\n - `createdAt: string`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `leads: number`\n - `notificationToken: string`\n - `password: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `title: string`\n - `trackConversion: boolean`\n - `updatedAt: string`\n - `url: string`\n - `useAsTemplate: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `video: string`\n - `pageId?: string`\n - `pageUrl?: string`\n - `qrCode?: string`\n - `shortLink?: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst link = await client.links.update('linkId');\n\nconsole.log(link);\n```",
257
+ "## update\n\n`client.links.update(linkId: string, android?: string, archived?: boolean, comments?: string, description?: string, doIndex?: boolean, domain?: string, expiredUrl?: string, expiresAt?: string, externalId?: string, flexible?: boolean, folderId?: string, geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }, image?: string, ios?: string, isFormMandatory?: boolean, key?: string, pageId?: string, pageUrl?: string, password?: string, prefix?: string, preRedirection?: boolean, proxy?: boolean, publicStats?: boolean, rewrite?: boolean, rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[], tagId?: string, tagIds?: string | string[], tagNames?: string | string[], title?: string, trackConversion?: boolean, url?: string, useAsTemplate?: boolean, video?: string, webhookIds?: string[]): { id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; tagId: string; tags: tag[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n**put** `/links/{linkId}`\n\nUpdate a link for the authenticated workspace. If there's no change, returns it as it is.\n\n### Parameters\n\n- `linkId: string`\n The id of the link to update. You may use either `linkId` (obtained via `/links/info` endpoint) or `externalId` prefixed with `ext_`.\n\n- `android?: string`\n The Android destination URL for the short link for Android device targeting.\n\n- `archived?: boolean`\n Whether the short link is archived. Archiving hides it from the default dashboard listing; the link keeps redirecting and keeps counting clicks.\n\n- `comments?: string`\n The comments for the short link.\n\n- `description?: string`\n The description of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `doIndex?: boolean`\n Allow search engines to index your short link. Default is `false` if not provided. Learn more: https://codeqr.link/noindex\n\n- `domain?: string`\n The domain of the short link. If not provided, the main domain of the project will be used (or `codeqr.link` if the project has no domains).\n\n- `expiredUrl?: string`\n The URL to redirect to when the short link expires.\n\n- `expiresAt?: string`\n The date and time when the short link will expire in ISO-8601 format. Must be in the future.\n\n- `externalId?: string`\n 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.\n\n- `flexible?: boolean`\n Whether the short link is flexible.\n\n- `folderId?: string`\n The unique ID existing folder to assign the short link to.\n\n- `geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }`\n Geographic targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`.\n - `AD?: string`\n - `AE?: string`\n - `AF?: string`\n - `AG?: string`\n - `AI?: string`\n - `AL?: string`\n - `AM?: string`\n - `AO?: string`\n - `AQ?: string`\n - `AR?: string`\n - `AS?: string`\n - `AT?: string`\n - `AU?: string`\n - `AW?: string`\n - `AX?: string`\n - `AZ?: string`\n - `BA?: string`\n - `BB?: string`\n - `BD?: string`\n - `BE?: string`\n - `BF?: string`\n - `BG?: string`\n - `BH?: string`\n - `BI?: string`\n - `BJ?: string`\n - `BL?: string`\n - `BM?: string`\n - `BN?: string`\n - `BO?: string`\n - `BQ?: string`\n - `BR?: string`\n - `BS?: string`\n - `BT?: string`\n - `BV?: string`\n - `BW?: string`\n - `BY?: string`\n - `BZ?: string`\n - `CA?: string`\n - `CC?: string`\n - `CD?: string`\n - `CF?: string`\n - `CG?: string`\n - `CH?: string`\n - `CI?: string`\n - `CK?: string`\n - `CL?: string`\n - `CM?: string`\n - `CN?: string`\n - `CO?: string`\n - `CR?: string`\n - `CU?: string`\n - `CV?: string`\n - `CW?: string`\n - `CX?: string`\n - `CY?: string`\n - `CZ?: string`\n - `DE?: string`\n - `DJ?: string`\n - `DK?: string`\n - `DM?: string`\n - `DO?: string`\n - `DZ?: string`\n - `EC?: string`\n - `EE?: string`\n - `EG?: string`\n - `EH?: string`\n - `ER?: string`\n - `ES?: string`\n - `ET?: string`\n - `FI?: string`\n - `FJ?: string`\n - `FK?: string`\n - `FM?: string`\n - `FO?: string`\n - `FR?: string`\n - `GA?: string`\n - `GB?: string`\n - `GD?: string`\n - `GE?: string`\n - `GF?: string`\n - `GG?: string`\n - `GH?: string`\n - `GI?: string`\n - `GL?: string`\n - `GM?: string`\n - `GN?: string`\n - `GP?: string`\n - `GQ?: string`\n - `GR?: string`\n - `GS?: string`\n - `GT?: string`\n - `GU?: string`\n - `GW?: string`\n - `GY?: string`\n - `HK?: string`\n - `HM?: string`\n - `HN?: string`\n - `HR?: string`\n - `HT?: string`\n - `HU?: string`\n - `ID?: string`\n - `IE?: string`\n - `IL?: string`\n - `IM?: string`\n - `IN?: string`\n - `IO?: string`\n - `IQ?: string`\n - `IR?: string`\n - `IS?: string`\n - `IT?: string`\n - `JE?: string`\n - `JM?: string`\n - `JO?: string`\n - `JP?: string`\n - `KE?: string`\n - `KG?: string`\n - `KH?: string`\n - `KI?: string`\n - `KM?: string`\n - `KN?: string`\n - `KP?: string`\n - `KR?: string`\n - `KW?: string`\n - `KY?: string`\n - `KZ?: string`\n - `LA?: string`\n - `LB?: string`\n - `LC?: string`\n - `LI?: string`\n - `LK?: string`\n - `LR?: string`\n - `LS?: string`\n - `LT?: string`\n - `LU?: string`\n - `LV?: string`\n - `LY?: string`\n - `MA?: string`\n - `MC?: string`\n - `MD?: string`\n - `ME?: string`\n - `MF?: string`\n - `MG?: string`\n - `MH?: string`\n - `MK?: string`\n - `ML?: string`\n - `MM?: string`\n - `MN?: string`\n - `MO?: string`\n - `MP?: string`\n - `MQ?: string`\n - `MR?: string`\n - `MS?: string`\n - `MT?: string`\n - `MU?: string`\n - `MV?: string`\n - `MW?: string`\n - `MX?: string`\n - `MY?: string`\n - `MZ?: string`\n - `NA?: string`\n - `NC?: string`\n - `NE?: string`\n - `NF?: string`\n - `NG?: string`\n - `NI?: string`\n - `NL?: string`\n - `NO?: string`\n - `NP?: string`\n - `NR?: string`\n - `NU?: string`\n - `NZ?: string`\n - `OM?: string`\n - `PA?: string`\n - `PE?: string`\n - `PF?: string`\n - `PG?: string`\n - `PH?: string`\n - `PK?: string`\n - `PL?: string`\n - `PM?: string`\n - `PN?: string`\n - `PR?: string`\n - `PS?: string`\n - `PT?: string`\n - `PW?: string`\n - `PY?: string`\n - `QA?: string`\n - `RE?: string`\n - `RO?: string`\n - `RS?: string`\n - `RU?: string`\n - `RW?: string`\n - `SA?: string`\n - `SB?: string`\n - `SC?: string`\n - `SD?: string`\n - `SE?: string`\n - `SG?: string`\n - `SH?: string`\n - `SI?: string`\n - `SJ?: string`\n - `SK?: string`\n - `SL?: string`\n - `SM?: string`\n - `SN?: string`\n - `SO?: string`\n - `SR?: string`\n - `SS?: string`\n - `ST?: string`\n - `SV?: string`\n - `SX?: string`\n - `SY?: string`\n - `SZ?: string`\n - `TC?: string`\n - `TD?: string`\n - `TF?: string`\n - `TG?: string`\n - `TH?: string`\n - `TJ?: string`\n - `TK?: string`\n - `TL?: string`\n - `TM?: string`\n - `TN?: string`\n - `TO?: string`\n - `TR?: string`\n - `TT?: string`\n - `TV?: string`\n - `TW?: string`\n - `TZ?: string`\n - `UA?: string`\n - `UG?: string`\n - `UM?: string`\n - `US?: string`\n - `UY?: string`\n - `UZ?: string`\n - `VA?: string`\n - `VC?: string`\n - `VE?: string`\n - `VG?: string`\n - `VI?: string`\n - `VN?: string`\n - `VU?: string`\n - `WF?: string`\n - `WS?: string`\n - `XK?: string`\n - `YE?: string`\n - `YT?: string`\n - `ZA?: string`\n - `ZM?: string`\n - `ZW?: string`\n\n- `image?: string`\n The image of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `ios?: string`\n The iOS destination URL for the short link for iOS device targeting.\n\n- `isFormMandatory?: boolean`\n If the form is mandatory for the page.\n\n- `key?: string`\n The slug of the short link. If not provided, a random 7-character slug will be generated.\n\n- `pageId?: string`\n The ID of the page to redirect to before the link destination.\n\n- `pageUrl?: string`\n The URL of the page to redirect to before the link destination.\n\n- `password?: string`\n The password required to access the short link destination URL.\n\n- `prefix?: string`\n The prefix of the short link slug for randomly generated keys (for example, if the prefix is `/c/`, the generated keys will be in the format `/c/:key`). Will be ignored if `key` is provided.\n\n- `preRedirection?: boolean`\n Whether the short link has pre-redirection.\n\n- `proxy?: boolean`\n Whether the short link uses the custom link preview feature.\n\n- `publicStats?: boolean`\n Whether the short link statistics are publicly accessible.\n\n- `rewrite?: boolean`\n Whether the short link uses link cloaking.\n\n- `rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]`\n Smart rules for conditional destination routing by request attribute.\n\n- `tagId?: string`\n The unique ID of the tag assigned to the short link. This field is deprecated – use `tagIds` instead.\n\n- `tagIds?: string | string[]`\n The unique IDs of the tags assigned to the short link.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the short link (case insensitive). Ignored when `tagIds` is also present.\n\n- `title?: string`\n The title of the short link generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `trackConversion?: boolean`\n Whether to track conversions for the short link.\n\n- `url?: string`\n The destination URL of the short link.\n\n- `useAsTemplate?: boolean`\n Whether this link should be used as a reusable template.\n\n- `video?: string`\n The video of the short link.\n\n- `webhookIds?: string[]`\n An array of webhook IDs to trigger when the link is clicked. These webhooks will receive click event data.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `clicks: number`\n - `comments: string`\n - `createdAt: string`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `leads: number`\n - `notificationToken: string`\n - `password: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `title: string`\n - `trackConversion: boolean`\n - `updatedAt: string`\n - `url: string`\n - `useAsTemplate: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `video: string`\n - `pageId?: string`\n - `pageUrl?: string`\n - `qrCode?: string`\n - `shortLink?: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst link = await client.links.update('linkId');\n\nconsole.log(link);\n```",
258
258
  perLanguage: {
259
259
  typescript: {
260
260
  method: 'client.links.update',
261
261
  example:
262
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst link = await client.links.update('linkId');\n\nconsole.log(link.id);",
262
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst link = await client.links.update('linkId');\n\nconsole.log(link.id);",
263
263
  },
264
264
  http: {
265
265
  example:
@@ -278,12 +278,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
278
278
  params: ['linkId: string;'],
279
279
  response: '{ id: string; }',
280
280
  markdown:
281
- "## delete\n\n`client.links.delete(linkId: string): { id: string; }`\n\n**delete** `/links/{linkId}`\n\nDelete a link for the authenticated workspace.\n\n### Parameters\n\n- `linkId: string`\n The id of the link to delete. You may use either `linkId` (obtained via `/links/info` endpoint) or `externalId` prefixed with `ext_`.\n\n### Returns\n\n- `{ id: string; }`\n\n - `id: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst link = await client.links.delete('linkId');\n\nconsole.log(link);\n```",
281
+ "## delete\n\n`client.links.delete(linkId: string): { id: string; }`\n\n**delete** `/links/{linkId}`\n\nDelete a link for the authenticated workspace.\n\n### Parameters\n\n- `linkId: string`\n The id of the link to delete. You may use either `linkId` (obtained via `/links/info` endpoint) or `externalId` prefixed with `ext_`.\n\n### Returns\n\n- `{ id: string; }`\n\n - `id: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst link = await client.links.delete('linkId');\n\nconsole.log(link);\n```",
282
282
  perLanguage: {
283
283
  typescript: {
284
284
  method: 'client.links.delete',
285
285
  example:
286
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst link = await client.links.delete('linkId');\n\nconsole.log(link.id);",
286
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst link = await client.links.delete('linkId');\n\nconsole.log(link.id);",
287
287
  },
288
288
  http: {
289
289
  example:
@@ -300,17 +300,17 @@ const EMBEDDED_METHODS: MethodEntry[] = [
300
300
  stainlessPath: '(resource) links.bulk > (method) create',
301
301
  qualified: 'client.links.bulk.create',
302
302
  params: [
303
- "body?: { url: string; android?: string; archived?: boolean; comments?: string; description?: string; doIndex?: boolean; domain?: string; expiredUrl?: string; expiresAt?: string; externalId?: string; flexible?: boolean; folderId?: string; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; pageId?: string; pageUrl?: string; password?: string; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; title?: string; trackConversion?: boolean; useAsTemplate?: boolean; video?: string; webhookIds?: string[]; }[];",
303
+ "body?: { url: string; android?: string; archived?: boolean; comments?: string; description?: string; doIndex?: boolean; domain?: string; expiredUrl?: string; expiresAt?: string; externalId?: string; flexible?: boolean; folderId?: string; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; pageId?: string; pageUrl?: string; password?: string; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; title?: string; trackConversion?: boolean; useAsTemplate?: boolean; video?: string; webhookIds?: string[]; }[];",
304
304
  ],
305
305
  response:
306
- "{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; } | { code: string; error: string; link?: object; }[]",
306
+ "{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: object[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; } | { code: string; error: string; link?: object; }[]",
307
307
  markdown:
308
- "## create\n\n`client.links.bulk.create(body?: { url: string; android?: string; archived?: boolean; comments?: string; description?: string; doIndex?: boolean; domain?: string; expiredUrl?: string; expiresAt?: string; externalId?: string; flexible?: boolean; folderId?: string; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; pageId?: string; pageUrl?: string; password?: string; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; title?: string; trackConversion?: boolean; useAsTemplate?: boolean; video?: string; webhookIds?: string[]; }[]): object | { code: string; error: string; link?: object; }[]`\n\n**post** `/links/bulk`\n\nBulk create up to 100 links for the authenticated workspace.\n\n### Parameters\n\n- `body?: { url: string; android?: string; archived?: boolean; comments?: string; description?: string; doIndex?: boolean; domain?: string; expiredUrl?: string; expiresAt?: string; externalId?: string; flexible?: boolean; folderId?: string; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; pageId?: string; pageUrl?: string; password?: string; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; title?: string; trackConversion?: boolean; useAsTemplate?: boolean; video?: string; webhookIds?: string[]; }[]`\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; } | { code: string; error: string; link?: object; }[]`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst bulks = await client.links.bulk.create();\n\nconsole.log(bulks);\n```",
308
+ "## create\n\n`client.links.bulk.create(body?: { url: string; android?: string; archived?: boolean; comments?: string; description?: string; doIndex?: boolean; domain?: string; expiredUrl?: string; expiresAt?: string; externalId?: string; flexible?: boolean; folderId?: string; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; pageId?: string; pageUrl?: string; password?: string; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: object[]; url?: string; value?: string; }[]; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; title?: string; trackConversion?: boolean; useAsTemplate?: boolean; video?: string; webhookIds?: string[]; }[]): object | { code: string; error: string; link?: object; }[]`\n\n**post** `/links/bulk`\n\nBulk create up to 100 links for the authenticated workspace.\n\n### Parameters\n\n- `body?: { url: string; android?: string; archived?: boolean; comments?: string; description?: string; doIndex?: boolean; domain?: string; expiredUrl?: string; expiresAt?: string; externalId?: string; flexible?: boolean; folderId?: string; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; pageId?: string; pageUrl?: string; password?: string; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; title?: string; trackConversion?: boolean; useAsTemplate?: boolean; video?: string; webhookIds?: string[]; }[]`\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; clicks: number; comments: string; createdAt: string; description: string; doIndex: boolean; domain: string; expiredUrl: string; expiresAt: string; externalId: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: object[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; trackConversion: boolean; updatedAt: string; url: string; useAsTemplate: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; pageId?: string; pageUrl?: string; qrCode?: string; shortLink?: string; } | { code: string; error: string; link?: object; }[]`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst bulks = await client.links.bulk.create();\n\nconsole.log(bulks);\n```",
309
309
  perLanguage: {
310
310
  typescript: {
311
311
  method: 'client.links.bulk.create',
312
312
  example:
313
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst bulks = await client.links.bulk.create();\n\nconsole.log(bulks);",
313
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst bulks = await client.links.bulk.create();\n\nconsole.log(bulks);",
314
314
  },
315
315
  http: {
316
316
  example:
@@ -332,8 +332,7 @@ const EMBEDDED_METHODS: MethodEntry[] = [
332
332
  'archived?: boolean;',
333
333
  'bgColor?: string;',
334
334
  'comments?: string;',
335
- 'contentStatic?: string;',
336
- 'crypto?: object;',
335
+ "crypto?: { address?: string; amount?: string; cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'; email?: string; message?: string; };",
337
336
  'description?: string;',
338
337
  'doIndex?: boolean;',
339
338
  'domain?: string;',
@@ -366,12 +365,13 @@ const EMBEDDED_METHODS: MethodEntry[] = [
366
365
  'password?: string;',
367
366
  'pattern?: string;',
368
367
  'phone?: string;',
368
+ 'pix?: object;',
369
369
  'prefix?: string;',
370
370
  'preRedirection?: boolean;',
371
371
  'proxy?: boolean;',
372
372
  'publicStats?: boolean;',
373
373
  'rewrite?: boolean;',
374
- "rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[];",
374
+ "rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[];",
375
375
  'shape?: string;',
376
376
  'showLogo?: boolean;',
377
377
  'size?: number;',
@@ -389,6 +389,7 @@ const EMBEDDED_METHODS: MethodEntry[] = [
389
389
  'useAsTemplate?: boolean;',
390
390
  'useDisplayPage?: boolean;',
391
391
  'vcard?: object;',
392
+ 'walletPass?: { barcodeText?: string; logo?: string; name?: string; };',
392
393
  'webhookIds?: string[];',
393
394
  'whatsapp?: { number: string; message?: string; };',
394
395
  'width?: number;',
@@ -396,16 +397,16 @@ const EMBEDDED_METHODS: MethodEntry[] = [
396
397
  ],
397
398
  response: 'object',
398
399
  markdown:
399
- "## create\n\n`client.qrcodes.create(type: string, android?: string, archived?: boolean, bgColor?: string, comments?: string, contentStatic?: string, crypto?: object, description?: string, doIndex?: boolean, domain?: string, email?: object, excavate?: boolean, expiredUrl?: string, expiresAt?: string, externalId?: string, facetime?: object, fgColor?: string, filled?: boolean, flexible?: boolean, folderId?: string, frame?: string, frameColor?: string, frameText?: string, frameTextColor?: string, frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }, geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }, height?: number, image?: string, ios?: string, isFormMandatory?: boolean, key?: string, latlog?: object, level?: string, logo?: string, pageId?: string, pageUrl?: string, password?: string, pattern?: string, phone?: string, prefix?: string, preRedirection?: boolean, proxy?: boolean, publicStats?: boolean, rewrite?: boolean, rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[], shape?: string, showLogo?: boolean, size?: number, sms?: object, src?: string, static?: boolean, tagId?: string, tagIds?: string | string[], tagNames?: string | string[], templateId?: string, text?: string, title?: string, trackConversion?: boolean, url?: string, useAsTemplate?: boolean, useDisplayPage?: boolean, vcard?: object, webhookIds?: string[], whatsapp?: { number: string; message?: string; }, width?: number, wifi?: object): { id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; notificationToken: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: tag[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; whatsapp: object; width: number; wifi: object; frameTextStyles?: object; pageId?: string; pageUrl?: string; }`\n\n**post** `/qrcodes`\n\nCreate a new QR Code for the authenticated workspace.\n\n### Parameters\n\n- `type: string`\n The type of content of the QR code.\n\n- `android?: string`\n The destination URL for Android for the QR code for device targeting Android.\n\n- `archived?: boolean`\n If the QR code is archived.\n\n- `bgColor?: string`\n The background color of the QR code (hex or CSS keyword). Invalid values are coerced to default.\n\n- `comments?: string`\n The comments for the QR code.\n\n- `contentStatic?: string`\n The static content of the QR code.\n\n- `crypto?: object`\n The cryptocurrency information of the QR code.\n\n- `description?: string`\n The description of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `doIndex?: boolean`\n Allow search engines to index your QR code. The default is `false` if not provided. Learn more: https://codeqr.link/noindex\n\n- `domain?: string`\n The domain of the QR code. If not provided, the main domain of the project will be used (or `codeqr.link` if the project does not have domains).\n\n- `email?: object`\n The email information of the QR code.\n\n- `excavate?: boolean`\n If the QR code should have excavated areas.\n\n- `expiredUrl?: string`\n The URL to redirect when the QR code expires.\n\n- `expiresAt?: string`\n The date and time the QR code will expire in ISO-8601 format. Must be in the future.\n\n- `externalId?: string`\n This is the ID of the QR code in your database. If defined, it can be used to identify the QR code in the future. It must be prefixed with `ext_` when passed as a query parameter.\n\n- `facetime?: object`\n The FaceTime information of the QR code.\n\n- `fgColor?: string`\n The foreground color of the QR code (hex or CSS keyword). Invalid values are coerced to default.\n\n- `filled?: boolean`\n If the QR code is filled.\n\n- `flexible?: boolean`\n If the QR code is flexible.\n\n- `folderId?: string`\n The unique ID of the folder assigned to the QR code. Omit or set to null for no folder.\n\n- `frame?: string`\n The type of frame of the QR code (e.g. none, frame-1, frame-2, frame-3, frame-5, frame-6). frame-5/6 are top-bar variants. Unknown ids fall back to no frame at render.\n\n- `frameColor?: string`\n The color of the frame (hex or CSS keyword). Invalid values are coerced to default.\n\n- `frameText?: string`\n Label text rendered inside the frame (e.g. \"SCAN ME\", a product SKU). Maximum 200 characters. Word-wraps to multiple lines at larger sizes; the frame bar grows vertically to fit.\n\n- `frameTextColor?: string`\n Color of the frame label text (hex `#RRGGBB`, `#RGB`, `#RRGGBBAA`, or a CSS keyword from the allowlist). When omitted, a contrasting color is derived automatically from `frameColor`.\n\n- `frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }`\n Typographic styles applied to the frame label text. Every key is enum-gated — unknown keys or out-of-enum values are rejected to prevent SVG attribute injection. All fields are optional; omitted keys fall back to the default (normal weight, normal style, sans family, medium size).\n - `family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'`\n Font family used for the frame label text. `sans` = Arial / Helvetica (default). `sans-condensed` = Arial Narrow. `serif` = Georgia / Times New Roman. `serif-elegant` = Palatino Linotype / Book Antiqua. `mono` = Courier New. Values resolve to safe system font stacks on the rendered SVG.\n - `size?: 's' | 'm' | 'l' | 'xl'`\n Font size preset for the frame label. `s` = 60 viewBox units, `m` = 89.1 (default), `l` = 120, `xl` = 150. Larger sizes grow the frame bar vertically to fit. Extremely long text auto-shrinks to keep within 4 lines (floor 48).\n - `style?: 'normal' | 'italic'`\n Font style of the frame label text. `italic` applies `font-style=\"italic\"`.\n - `weight?: 'normal' | 'bold'`\n Font weight of the frame label text. `bold` renders at SVG `font-weight=\"700\"`, `normal` at `400`.\n\n- `geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }`\n Geographic segmentation information for the QR code in the JSON format `{[COUNTRY]: https://example.com }`.\n - `AD?: string`\n - `AE?: string`\n - `AF?: string`\n - `AG?: string`\n - `AI?: string`\n - `AL?: string`\n - `AM?: string`\n - `AO?: string`\n - `AQ?: string`\n - `AR?: string`\n - `AS?: string`\n - `AT?: string`\n - `AU?: string`\n - `AW?: string`\n - `AX?: string`\n - `AZ?: string`\n - `BA?: string`\n - `BB?: string`\n - `BD?: string`\n - `BE?: string`\n - `BF?: string`\n - `BG?: string`\n - `BH?: string`\n - `BI?: string`\n - `BJ?: string`\n - `BL?: string`\n - `BM?: string`\n - `BN?: string`\n - `BO?: string`\n - `BQ?: string`\n - `BR?: string`\n - `BS?: string`\n - `BT?: string`\n - `BV?: string`\n - `BW?: string`\n - `BY?: string`\n - `BZ?: string`\n - `CA?: string`\n - `CC?: string`\n - `CD?: string`\n - `CF?: string`\n - `CG?: string`\n - `CH?: string`\n - `CI?: string`\n - `CK?: string`\n - `CL?: string`\n - `CM?: string`\n - `CN?: string`\n - `CO?: string`\n - `CR?: string`\n - `CU?: string`\n - `CV?: string`\n - `CW?: string`\n - `CX?: string`\n - `CY?: string`\n - `CZ?: string`\n - `DE?: string`\n - `DJ?: string`\n - `DK?: string`\n - `DM?: string`\n - `DO?: string`\n - `DZ?: string`\n - `EC?: string`\n - `EE?: string`\n - `EG?: string`\n - `EH?: string`\n - `ER?: string`\n - `ES?: string`\n - `ET?: string`\n - `FI?: string`\n - `FJ?: string`\n - `FK?: string`\n - `FM?: string`\n - `FO?: string`\n - `FR?: string`\n - `GA?: string`\n - `GB?: string`\n - `GD?: string`\n - `GE?: string`\n - `GF?: string`\n - `GG?: string`\n - `GH?: string`\n - `GI?: string`\n - `GL?: string`\n - `GM?: string`\n - `GN?: string`\n - `GP?: string`\n - `GQ?: string`\n - `GR?: string`\n - `GS?: string`\n - `GT?: string`\n - `GU?: string`\n - `GW?: string`\n - `GY?: string`\n - `HK?: string`\n - `HM?: string`\n - `HN?: string`\n - `HR?: string`\n - `HT?: string`\n - `HU?: string`\n - `ID?: string`\n - `IE?: string`\n - `IL?: string`\n - `IM?: string`\n - `IN?: string`\n - `IO?: string`\n - `IQ?: string`\n - `IR?: string`\n - `IS?: string`\n - `IT?: string`\n - `JE?: string`\n - `JM?: string`\n - `JO?: string`\n - `JP?: string`\n - `KE?: string`\n - `KG?: string`\n - `KH?: string`\n - `KI?: string`\n - `KM?: string`\n - `KN?: string`\n - `KP?: string`\n - `KR?: string`\n - `KW?: string`\n - `KY?: string`\n - `KZ?: string`\n - `LA?: string`\n - `LB?: string`\n - `LC?: string`\n - `LI?: string`\n - `LK?: string`\n - `LR?: string`\n - `LS?: string`\n - `LT?: string`\n - `LU?: string`\n - `LV?: string`\n - `LY?: string`\n - `MA?: string`\n - `MC?: string`\n - `MD?: string`\n - `ME?: string`\n - `MF?: string`\n - `MG?: string`\n - `MH?: string`\n - `MK?: string`\n - `ML?: string`\n - `MM?: string`\n - `MN?: string`\n - `MO?: string`\n - `MP?: string`\n - `MQ?: string`\n - `MR?: string`\n - `MS?: string`\n - `MT?: string`\n - `MU?: string`\n - `MV?: string`\n - `MW?: string`\n - `MX?: string`\n - `MY?: string`\n - `MZ?: string`\n - `NA?: string`\n - `NC?: string`\n - `NE?: string`\n - `NF?: string`\n - `NG?: string`\n - `NI?: string`\n - `NL?: string`\n - `NO?: string`\n - `NP?: string`\n - `NR?: string`\n - `NU?: string`\n - `NZ?: string`\n - `OM?: string`\n - `PA?: string`\n - `PE?: string`\n - `PF?: string`\n - `PG?: string`\n - `PH?: string`\n - `PK?: string`\n - `PL?: string`\n - `PM?: string`\n - `PN?: string`\n - `PR?: string`\n - `PS?: string`\n - `PT?: string`\n - `PW?: string`\n - `PY?: string`\n - `QA?: string`\n - `RE?: string`\n - `RO?: string`\n - `RS?: string`\n - `RU?: string`\n - `RW?: string`\n - `SA?: string`\n - `SB?: string`\n - `SC?: string`\n - `SD?: string`\n - `SE?: string`\n - `SG?: string`\n - `SH?: string`\n - `SI?: string`\n - `SJ?: string`\n - `SK?: string`\n - `SL?: string`\n - `SM?: string`\n - `SN?: string`\n - `SO?: string`\n - `SR?: string`\n - `SS?: string`\n - `ST?: string`\n - `SV?: string`\n - `SX?: string`\n - `SY?: string`\n - `SZ?: string`\n - `TC?: string`\n - `TD?: string`\n - `TF?: string`\n - `TG?: string`\n - `TH?: string`\n - `TJ?: string`\n - `TK?: string`\n - `TL?: string`\n - `TM?: string`\n - `TN?: string`\n - `TO?: string`\n - `TR?: string`\n - `TT?: string`\n - `TV?: string`\n - `TW?: string`\n - `TZ?: string`\n - `UA?: string`\n - `UG?: string`\n - `UM?: string`\n - `US?: string`\n - `UY?: string`\n - `UZ?: string`\n - `VA?: string`\n - `VC?: string`\n - `VE?: string`\n - `VG?: string`\n - `VI?: string`\n - `VN?: string`\n - `VU?: string`\n - `WF?: string`\n - `WS?: string`\n - `XK?: string`\n - `YE?: string`\n - `YT?: string`\n - `ZA?: string`\n - `ZM?: string`\n - `ZW?: string`\n\n- `height?: number`\n Logo height in pixels. When omitted, a proportional size is used based on the QR code size (about 10–20% depending on size).\n\n- `image?: string`\n The image of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `ios?: string`\n The destination URL for iOS for the QR code for device targeting iOS.\n\n- `isFormMandatory?: boolean`\n If the form is mandatory for the page.\n\n- `key?: string`\n The slug of the QR code. If not provided, a random slug of 7 characters will be generated.\n\n- `latlog?: object`\n The latitude and longitude information of the QR code.\n\n- `level?: string`\n The level of error correction of the QR code.\n\n- `logo?: string`\n The logo of the QR code.\n\n- `pageId?: string`\n The ID of the page to redirect to before the QR code destination.\n\n- `pageUrl?: string`\n The URL of the page to redirect to before the QR code destination.\n\n- `password?: string`\n The password required to access the destination URL of the QR code.\n\n- `pattern?: string`\n The pattern of the modules of the QR code.\n\n- `phone?: string`\n The phone number of the QR code.\n\n- `prefix?: string`\n The prefix for the randomly generated key. If provided, the key will be prefixed with this value.\n\n- `preRedirection?: boolean`\n If the QR code has pre-redirection.\n\n- `proxy?: boolean`\n If the QR code uses the custom link preview feature.\n\n- `publicStats?: boolean`\n If the statistics of the QR code are publicly accessible.\n\n- `rewrite?: boolean`\n If the QR code uses link cloaking.\n\n- `rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]`\n Smart rules for conditional destination routing by request attribute.\n\n- `shape?: string`\n The shape of the design around the QR code (none, square, circle).\n\n- `showLogo?: boolean`\n If the logo should be displayed in the QR code.\n\n- `size?: number`\n The size of the QR code.\n\n- `sms?: object`\n The SMS information of the QR code.\n\n- `src?: string`\n The image URL of the QR code.\n\n- `static?: boolean`\n If the QR code is static.\n\n- `tagId?: string`\n The unique ID of the tag assigned to the QR code. This field is deprecated – use `tagIds` instead.\n\n- `tagIds?: string | string[]`\n The unique IDs of the tags assigned to the QR code.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the QR code (case insensitive).\n\n- `templateId?: string`\n ID of a QR code (in the same project) marked as a template. Its customization fields (colors, logo, pattern, shape, frame) will be applied to the new QR code unless explicitly overridden.\n\n- `text?: string`\n The text of the QR code.\n\n- `title?: string`\n The title of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `trackConversion?: boolean`\n If should track conversions for the QR code.\n\n- `url?: string`\n The destination URL of the QR code.\n\n- `useAsTemplate?: boolean`\n Whether this QR code should be used as a reusable template.\n\n- `useDisplayPage?: boolean`\n For dynamic QR codes with phone, email, or sms types: if true (default), shows an action page with buttons. If false, redirects directly to tel:/mailto:/sms: URI.\n\n- `vcard?: object`\n The vCard information of the QR code.\n\n- `webhookIds?: string[]`\n An array of webhook IDs to trigger when the link is clicked. These webhooks will receive click event data.\n\n- `whatsapp?: { number: string; message?: string; }`\n The WhatsApp click-to-chat info: E.164 number (digits only) and optional prefilled message.\n - `number: string`\n - `message?: string`\n\n- `width?: number`\n Logo width in pixels. When omitted, a proportional size is used based on the QR code size (about 10–20% depending on size).\n\n- `wifi?: object`\n The WiFi information of the QR code.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; notificationToken: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; whatsapp: { number: string; message?: string; }; width: number; wifi: object; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; pageId?: string; pageUrl?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `bgColor: string`\n - `comments: string`\n - `contentStatic: string`\n - `createdAt: string`\n - `crypto: object`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `email: object`\n - `excavate: boolean`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `facetime: object`\n - `fgColor: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `height: number`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `latlog: object`\n - `leads: number`\n - `level: string`\n - `logo: string`\n - `notificationToken: string`\n - `password: string`\n - `phone: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `scans: number`\n - `showLogo: boolean`\n - `size: number`\n - `sms: object`\n - `src: string`\n - `static: boolean`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `text: string`\n - `title: string`\n - `trackConversion: boolean`\n - `type: string`\n - `updatedAt: string`\n - `url: string`\n - `useDisplayPage: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `vcard: object`\n - `whatsapp: { number: string; message?: string; }`\n - `width: number`\n - `wifi: object`\n - `frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }`\n - `pageId?: string`\n - `pageUrl?: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst qrCode = await client.qrcodes.create({ type: 'url' });\n\nconsole.log(qrCode);\n```",
400
+ "## create\n\n`client.qrcodes.create(type: string, android?: string, archived?: boolean, bgColor?: string, comments?: string, crypto?: { address?: string; amount?: string; cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'; email?: string; message?: string; }, description?: string, doIndex?: boolean, domain?: string, email?: object, excavate?: boolean, expiredUrl?: string, expiresAt?: string, externalId?: string, facetime?: object, fgColor?: string, filled?: boolean, flexible?: boolean, folderId?: string, frame?: string, frameColor?: string, frameText?: string, frameTextColor?: string, frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }, geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }, height?: number, image?: string, ios?: string, isFormMandatory?: boolean, key?: string, latlog?: object, level?: string, logo?: string, pageId?: string, pageUrl?: string, password?: string, pattern?: string, phone?: string, pix?: object, prefix?: string, preRedirection?: boolean, proxy?: boolean, publicStats?: boolean, rewrite?: boolean, rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[], shape?: string, showLogo?: boolean, size?: number, sms?: object, src?: string, static?: boolean, tagId?: string, tagIds?: string | string[], tagNames?: string | string[], templateId?: string, text?: string, title?: string, trackConversion?: boolean, url?: string, useAsTemplate?: boolean, useDisplayPage?: boolean, vcard?: object, walletPass?: { barcodeText?: string; logo?: string; name?: string; }, webhookIds?: string[], whatsapp?: { number: string; message?: string; }, width?: number, wifi?: object): { id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: tag[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; walletPass: object; whatsapp: object; width: number; wifi: object; frameTextStyles?: object; pageId?: string; pageUrl?: string; }`\n\n**post** `/qrcodes`\n\nCreate a new QR Code for the authenticated workspace.\n\n### Parameters\n\n- `type: string`\n The type of content of the QR code.\n\n- `android?: string`\n The destination URL for Android for the QR code for device targeting Android.\n\n- `archived?: boolean`\n If the QR code is archived. Archiving hides it from the default dashboard listing; the code keeps redirecting and keeps counting scans.\n\n- `bgColor?: string`\n The background color of the QR code (hex or CSS keyword). Invalid values are coerced to default.\n\n- `comments?: string`\n The comments for the QR code.\n\n- `crypto?: { address?: string; amount?: string; cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'; email?: string; message?: string; }`\n The cryptocurrency information of the QR code.\n - `address?: string`\n The wallet address, as the display page reads it.\n - `amount?: string`\n - `cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'`\n - `email?: string`\n The wallet address.\n - `message?: string`\n\n- `description?: string`\n The description of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `doIndex?: boolean`\n Allow search engines to index your QR code. The default is `false` if not provided. Learn more: https://codeqr.link/noindex\n\n- `domain?: string`\n The domain of the QR code. If not provided, the main domain of the project will be used (or `codeqr.link` if the project does not have domains).\n\n- `email?: object`\n The email information of the QR code.\n\n- `excavate?: boolean`\n If the QR code should have excavated areas.\n\n- `expiredUrl?: string`\n The URL to redirect when the QR code expires.\n\n- `expiresAt?: string`\n The date and time the QR code will expire in ISO-8601 format. Must be in the future.\n\n- `externalId?: string`\n This is the ID of the QR code in your database. If defined, it can be used to identify the QR code in the future. It must be prefixed with `ext_` when passed as a query parameter.\n\n- `facetime?: object`\n The FaceTime information of the QR code.\n\n- `fgColor?: string`\n The foreground color of the QR code (hex or CSS keyword). Invalid values are coerced to default.\n\n- `filled?: boolean`\n If the QR code is filled.\n\n- `flexible?: boolean`\n If the QR code is flexible.\n\n- `folderId?: string`\n The unique ID of the folder assigned to the QR code. Omit or set to null for no folder.\n\n- `frame?: string`\n The type of frame of the QR code (e.g. none, frame-1, frame-2, frame-3, frame-5, frame-6). frame-5/6 are top-bar variants. Unknown ids fall back to no frame at render.\n\n- `frameColor?: string`\n The color of the frame (hex or CSS keyword). Invalid values are coerced to default.\n\n- `frameText?: string`\n Label text rendered inside the frame (e.g. \"SCAN ME\", a product SKU). Maximum 200 characters. Word-wraps to multiple lines at larger sizes; the frame bar grows vertically to fit.\n\n- `frameTextColor?: string`\n Color of the frame label text (hex `#RRGGBB`, `#RGB`, `#RRGGBBAA`, or a CSS keyword from the allowlist). When omitted, a contrasting color is derived automatically from `frameColor`.\n\n- `frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }`\n Typographic styles applied to the frame label text. Every key is enum-gated — unknown keys or out-of-enum values are rejected to prevent SVG attribute injection. All fields are optional; omitted keys fall back to the default (normal weight, normal style, sans family, medium size).\n - `family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'`\n Font family used for the frame label text. `sans` = Arial / Helvetica (default). `sans-condensed` = Arial Narrow. `serif` = Georgia / Times New Roman. `serif-elegant` = Palatino Linotype / Book Antiqua. `mono` = Courier New. Values resolve to safe system font stacks on the rendered SVG.\n - `size?: 's' | 'm' | 'l' | 'xl'`\n Font size preset for the frame label. `s` = 60 viewBox units, `m` = 89.1 (default), `l` = 120, `xl` = 150. Larger sizes grow the frame bar vertically to fit. Extremely long text auto-shrinks to keep within 4 lines (floor 48).\n - `style?: 'normal' | 'italic'`\n Font style of the frame label text. `italic` applies `font-style=\"italic\"`.\n - `weight?: 'normal' | 'bold'`\n Font weight of the frame label text. `bold` renders at SVG `font-weight=\"700\"`, `normal` at `400`.\n\n- `geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }`\n Geographic segmentation information for the QR code in the JSON format `{[COUNTRY]: https://example.com }`.\n - `AD?: string`\n - `AE?: string`\n - `AF?: string`\n - `AG?: string`\n - `AI?: string`\n - `AL?: string`\n - `AM?: string`\n - `AO?: string`\n - `AQ?: string`\n - `AR?: string`\n - `AS?: string`\n - `AT?: string`\n - `AU?: string`\n - `AW?: string`\n - `AX?: string`\n - `AZ?: string`\n - `BA?: string`\n - `BB?: string`\n - `BD?: string`\n - `BE?: string`\n - `BF?: string`\n - `BG?: string`\n - `BH?: string`\n - `BI?: string`\n - `BJ?: string`\n - `BL?: string`\n - `BM?: string`\n - `BN?: string`\n - `BO?: string`\n - `BQ?: string`\n - `BR?: string`\n - `BS?: string`\n - `BT?: string`\n - `BV?: string`\n - `BW?: string`\n - `BY?: string`\n - `BZ?: string`\n - `CA?: string`\n - `CC?: string`\n - `CD?: string`\n - `CF?: string`\n - `CG?: string`\n - `CH?: string`\n - `CI?: string`\n - `CK?: string`\n - `CL?: string`\n - `CM?: string`\n - `CN?: string`\n - `CO?: string`\n - `CR?: string`\n - `CU?: string`\n - `CV?: string`\n - `CW?: string`\n - `CX?: string`\n - `CY?: string`\n - `CZ?: string`\n - `DE?: string`\n - `DJ?: string`\n - `DK?: string`\n - `DM?: string`\n - `DO?: string`\n - `DZ?: string`\n - `EC?: string`\n - `EE?: string`\n - `EG?: string`\n - `EH?: string`\n - `ER?: string`\n - `ES?: string`\n - `ET?: string`\n - `FI?: string`\n - `FJ?: string`\n - `FK?: string`\n - `FM?: string`\n - `FO?: string`\n - `FR?: string`\n - `GA?: string`\n - `GB?: string`\n - `GD?: string`\n - `GE?: string`\n - `GF?: string`\n - `GG?: string`\n - `GH?: string`\n - `GI?: string`\n - `GL?: string`\n - `GM?: string`\n - `GN?: string`\n - `GP?: string`\n - `GQ?: string`\n - `GR?: string`\n - `GS?: string`\n - `GT?: string`\n - `GU?: string`\n - `GW?: string`\n - `GY?: string`\n - `HK?: string`\n - `HM?: string`\n - `HN?: string`\n - `HR?: string`\n - `HT?: string`\n - `HU?: string`\n - `ID?: string`\n - `IE?: string`\n - `IL?: string`\n - `IM?: string`\n - `IN?: string`\n - `IO?: string`\n - `IQ?: string`\n - `IR?: string`\n - `IS?: string`\n - `IT?: string`\n - `JE?: string`\n - `JM?: string`\n - `JO?: string`\n - `JP?: string`\n - `KE?: string`\n - `KG?: string`\n - `KH?: string`\n - `KI?: string`\n - `KM?: string`\n - `KN?: string`\n - `KP?: string`\n - `KR?: string`\n - `KW?: string`\n - `KY?: string`\n - `KZ?: string`\n - `LA?: string`\n - `LB?: string`\n - `LC?: string`\n - `LI?: string`\n - `LK?: string`\n - `LR?: string`\n - `LS?: string`\n - `LT?: string`\n - `LU?: string`\n - `LV?: string`\n - `LY?: string`\n - `MA?: string`\n - `MC?: string`\n - `MD?: string`\n - `ME?: string`\n - `MF?: string`\n - `MG?: string`\n - `MH?: string`\n - `MK?: string`\n - `ML?: string`\n - `MM?: string`\n - `MN?: string`\n - `MO?: string`\n - `MP?: string`\n - `MQ?: string`\n - `MR?: string`\n - `MS?: string`\n - `MT?: string`\n - `MU?: string`\n - `MV?: string`\n - `MW?: string`\n - `MX?: string`\n - `MY?: string`\n - `MZ?: string`\n - `NA?: string`\n - `NC?: string`\n - `NE?: string`\n - `NF?: string`\n - `NG?: string`\n - `NI?: string`\n - `NL?: string`\n - `NO?: string`\n - `NP?: string`\n - `NR?: string`\n - `NU?: string`\n - `NZ?: string`\n - `OM?: string`\n - `PA?: string`\n - `PE?: string`\n - `PF?: string`\n - `PG?: string`\n - `PH?: string`\n - `PK?: string`\n - `PL?: string`\n - `PM?: string`\n - `PN?: string`\n - `PR?: string`\n - `PS?: string`\n - `PT?: string`\n - `PW?: string`\n - `PY?: string`\n - `QA?: string`\n - `RE?: string`\n - `RO?: string`\n - `RS?: string`\n - `RU?: string`\n - `RW?: string`\n - `SA?: string`\n - `SB?: string`\n - `SC?: string`\n - `SD?: string`\n - `SE?: string`\n - `SG?: string`\n - `SH?: string`\n - `SI?: string`\n - `SJ?: string`\n - `SK?: string`\n - `SL?: string`\n - `SM?: string`\n - `SN?: string`\n - `SO?: string`\n - `SR?: string`\n - `SS?: string`\n - `ST?: string`\n - `SV?: string`\n - `SX?: string`\n - `SY?: string`\n - `SZ?: string`\n - `TC?: string`\n - `TD?: string`\n - `TF?: string`\n - `TG?: string`\n - `TH?: string`\n - `TJ?: string`\n - `TK?: string`\n - `TL?: string`\n - `TM?: string`\n - `TN?: string`\n - `TO?: string`\n - `TR?: string`\n - `TT?: string`\n - `TV?: string`\n - `TW?: string`\n - `TZ?: string`\n - `UA?: string`\n - `UG?: string`\n - `UM?: string`\n - `US?: string`\n - `UY?: string`\n - `UZ?: string`\n - `VA?: string`\n - `VC?: string`\n - `VE?: string`\n - `VG?: string`\n - `VI?: string`\n - `VN?: string`\n - `VU?: string`\n - `WF?: string`\n - `WS?: string`\n - `XK?: string`\n - `YE?: string`\n - `YT?: string`\n - `ZA?: string`\n - `ZM?: string`\n - `ZW?: string`\n\n- `height?: number`\n Logo height in pixels. When omitted, a proportional size is used based on the QR code size (about 10–20% depending on size).\n\n- `image?: string`\n The image of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `ios?: string`\n The destination URL for iOS for the QR code for device targeting iOS.\n\n- `isFormMandatory?: boolean`\n If the form is mandatory for the page.\n\n- `key?: string`\n The slug of the QR code. If not provided, a random slug of 7 characters will be generated.\n\n- `latlog?: object`\n The latitude and longitude information of the QR code.\n\n- `level?: string`\n The level of error correction of the QR code.\n\n- `logo?: string`\n [DEPRECATED (use `src` instead)]: Not read by any renderer. Set `src` to an image uploaded via `POST /qrcodes/logo`.\n\n- `pageId?: string`\n The ID of the page to redirect to before the QR code destination.\n\n- `pageUrl?: string`\n The URL of the page to redirect to before the QR code destination.\n\n- `password?: string`\n The password required to access the destination URL of the QR code.\n\n- `pattern?: string`\n The pattern of the modules of the QR code.\n\n- `phone?: string`\n The phone number of the QR code.\n\n- `pix?: object`\n The Pix information of the QR code (key, name, city, amount, description).\n\n- `prefix?: string`\n The prefix for the randomly generated key. If provided, the key will be prefixed with this value.\n\n- `preRedirection?: boolean`\n If the QR code has pre-redirection.\n\n- `proxy?: boolean`\n If the QR code uses the custom link preview feature.\n\n- `publicStats?: boolean`\n If the statistics of the QR code are publicly accessible.\n\n- `rewrite?: boolean`\n If the QR code uses link cloaking.\n\n- `rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]`\n Smart rules for conditional destination routing by request attribute.\n\n- `shape?: string`\n The shape of the design around the QR code (none, square, circle).\n\n- `showLogo?: boolean`\n If the logo should be displayed in the QR code.\n\n- `size?: number`\n The size of the QR code.\n\n- `sms?: object`\n The SMS information of the QR code.\n\n- `src?: string`\n The image URL of the QR code.\n\n- `static?: boolean`\n If the QR code is static.\n\n- `tagId?: string`\n The unique ID of the tag assigned to the QR code. This field is deprecated – use `tagIds` instead.\n\n- `tagIds?: string | string[]`\n The unique IDs of the tags assigned to the QR code.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the QR code (case insensitive). Ignored when `tagIds` is also present.\n\n- `templateId?: string`\n ID of a QR code (in the same project) marked as a template. Its customization fields (colors, logo, pattern, shape, frame) will be applied to the new QR code unless explicitly overridden.\n\n- `text?: string`\n The text of the QR code.\n\n- `title?: string`\n The title of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `trackConversion?: boolean`\n If should track conversions for the QR code.\n\n- `url?: string`\n The destination URL of the QR code.\n\n- `useAsTemplate?: boolean`\n Whether this QR code should be used as a reusable template.\n\n- `useDisplayPage?: boolean`\n Kept for compatibility. A dynamic phone, email or SMS code is always served the display page, whose buttons open the dialler, the mail client or the SMS app; setting this to false changes nothing about what a scan gets.\n\n- `vcard?: object`\n The vCard information of the QR code.\n\n- `walletPass?: { barcodeText?: string; logo?: string; name?: string; }`\n Customizes the Google Wallet and Apple Wallet passes saved from this QR code. `name` and `logo` replace the workspace name and logo; left out (or `null`), the pass shows the workspace value. `barcodeText` sets the text under the QR code. On update: omit `walletPass` to keep the stored value, send `null` to clear it, or send an object to replace the stored one as a whole — fields missing from the object are cleared, not merged. Available on the Business plan and above, outside a trial: elsewhere a new value is refused with `403 forbidden` (`null` is always accepted) and a stored value is ignored, so the passes show the workspace name and logo.\n - `barcodeText?: string`\n The text shown under the QR code on the pass, such as the member's name or card number. The QR code's title is never shown there. Trimmed; 1 to 40 characters.\n - `logo?: string`\n The logo shown on the pass, in place of the workspace logo. Either the URL of an image uploaded via `POST /qrcodes/logo`, or any https URL serving a PNG, JPEG or WebP image of up to 2 MB without a redirect. An external image is copied to CodeQR storage when the QR code is written, and the response returns the URL of the copy, not the URL sent.\n - `name?: string`\n The name shown at the top of the pass, in place of the workspace name. Trimmed; 1 to 64 characters.\n\n- `webhookIds?: string[]`\n An array of webhook IDs to trigger when the link is clicked. These webhooks will receive click event data.\n\n- `whatsapp?: { number: string; message?: string; }`\n The WhatsApp click-to-chat info: E.164 number (digits only) and optional prefilled message.\n - `number: string`\n - `message?: string`\n\n- `width?: number`\n Logo width in pixels. When omitted, a proportional size is used based on the QR code size (about 10–20% depending on size).\n\n- `wifi?: object`\n The WiFi information of the QR code.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; walletPass: { barcodeText?: string; logo?: string; name?: string; }; whatsapp: { number: string; message?: string; }; width: number; wifi: object; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; pageId?: string; pageUrl?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `bgColor: string`\n - `comments: string`\n - `contentStatic: string`\n - `createdAt: string`\n - `crypto: object`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `email: object`\n - `excavate: boolean`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `facetime: object`\n - `fgColor: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `height: number`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `latlog: object`\n - `leads: number`\n - `level: string`\n - `logo: string`\n - `password: string`\n - `phone: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `scans: number`\n - `showLogo: boolean`\n - `size: number`\n - `sms: object`\n - `src: string`\n - `static: boolean`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `text: string`\n - `title: string`\n - `trackConversion: boolean`\n - `type: string`\n - `updatedAt: string`\n - `url: string`\n - `useDisplayPage: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `vcard: object`\n - `walletPass: { barcodeText?: string; logo?: string; name?: string; }`\n - `whatsapp: { number: string; message?: string; }`\n - `width: number`\n - `wifi: object`\n - `frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }`\n - `pageId?: string`\n - `pageUrl?: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst qrCode = await client.qrcodes.create({ type: 'url' });\n\nconsole.log(qrCode);\n```",
400
401
  perLanguage: {
401
402
  typescript: {
402
403
  method: 'client.qrcodes.create',
403
404
  example:
404
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst qrCode = await client.qrcodes.create({ type: 'url' });\n\nconsole.log(qrCode.id);",
405
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst qrCode = await client.qrcodes.create({ type: 'url' });\n\nconsole.log(qrCode.id);",
405
406
  },
406
407
  http: {
407
408
  example:
408
- 'curl https://api.codeqr.io/qrcodes \\\n -H \'Content-Type: application/json\' \\\n -H "Authorization: Bearer $CODEQR_API_KEY" \\\n -d \'{\n "type": "url",\n "externalId": "123456",\n "frameText": "SKU-LH905461",\n "frameTextColor": "#ffffff",\n "frameTextStyles": {\n "family": "sans",\n "size": "xl",\n "weight": "bold"\n },\n "tagIds": [\n "clux0rgak00011..."\n ]\n }\'',
409
+ 'curl https://api.codeqr.io/qrcodes \\\n -H \'Content-Type: application/json\' \\\n -H "Authorization: Bearer $CODEQR_API_KEY" \\\n -d \'{\n "type": "url",\n "externalId": "123456",\n "frameText": "SKU-LH905461",\n "frameTextColor": "#ffffff",\n "frameTextStyles": {\n "family": "sans",\n "size": "xl",\n "weight": "bold"\n },\n "tagIds": [\n "clux0rgak00011..."\n ],\n "walletPass": {\n "barcodeText": "Member 0042",\n "name": "Central Bakery"\n }\n }\'',
409
410
  },
410
411
  },
411
412
  },
@@ -460,12 +461,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
460
461
  ],
461
462
  response: 'object[]',
462
463
  markdown:
463
- "## list\n\n`client.qrcodes.list(comments?: string, createdAfter?: string, createdBefore?: string, domain?: string, expiresAfter?: string, expiresAt?: string, expiresBefore?: string, folderId?: string, format?: 'static' | 'dynamic', hasComments?: boolean, hasCustomSocial?: boolean, hasDevice?: boolean, hasExpiration?: boolean, hasGeo?: boolean, hasPassword?: boolean, hasTags?: boolean, hasUTM?: boolean, page?: number, pageSize?: number, password?: string, projectSlug?: string, scansMax?: number, scansMin?: number, search?: string, showArchived?: boolean, sort?: 'createdAt' | 'scans' | 'lastClicked', tagId?: string, tagIds?: string | string[], tagNames?: string | string[], trackConversion?: boolean, type?: string, useAsTemplate?: boolean, userId?: string, utm_campaign?: string, utm_content?: string, utm_medium?: string, utm_source?: string, utm_term?: string, withTags?: boolean): object[]`\n\n**get** `/qrcodes`\n\nRetrieve a paginated list of QR Codes for the authenticated workspace.\n\n### Parameters\n\n- `comments?: string`\n The comments to filter by.\n\n- `createdAfter?: string`\n Filter QR codes created after this date\n\n- `createdBefore?: string`\n Filter QR codes created before this date\n\n- `domain?: string`\n The domain to filter the QR codes. For example, `ac.me`. If not provided, all QR codes of the project will be returned.\n\n- `expiresAfter?: string`\n Filter QR codes expiring after this date\n\n- `expiresAt?: string`\n The date and time the QR code will expire in ISO-8601 format. Must be in the future.\n\n- `expiresBefore?: string`\n Filter QR codes expiring before this date\n\n- `folderId?: string`\n The folder ID to filter the QR codes by.\n\n- `format?: 'static' | 'dynamic'`\n Filter by QR code format - static or dynamic\n\n- `hasComments?: boolean`\n Filter QR codes with/without comments\n\n- `hasCustomSocial?: boolean`\n Filter QR codes with/without custom social media cards\n\n- `hasDevice?: boolean`\n Filter QR codes with/without device targeting\n\n- `hasExpiration?: boolean`\n Filter QR codes with/without expiration date\n\n- `hasGeo?: boolean`\n Filter QR codes with/without geo-targeting\n\n- `hasPassword?: boolean`\n Filter QR codes with/without password protection\n\n- `hasTags?: boolean`\n Filter QR codes with/without tags\n\n- `hasUTM?: boolean`\n Filter QR codes with/without UTM parameters\n\n- `page?: number`\n The page number for pagination.\n\n- `pageSize?: number`\n The number of items per page.\n\n- `password?: string`\n The password to filter by.\n\n- `projectSlug?: string`\n The slug of the project to which the QR code belongs. For example, for `app.codeqr.io/acme`, the projectSlug is `acme`.\n\n- `scansMax?: number`\n Maximum number of scans\n\n- `scansMin?: number`\n Minimum number of scans\n\n- `search?: string`\n The search term to filter the QR codes. The search term will be matched against the QR code slug, title, and the destination URL.\n\n- `showArchived?: boolean`\n If should include archived QR codes in the response. The default is `false` if not provided.\n\n- `sort?: 'createdAt' | 'scans' | 'lastClicked'`\n The field to order the QR codes. The default is `createdAt`, and the order of sorting is always descending.\n\n- `tagId?: string`\n [DEPRECATED (use tagIds instead)]: The unique ID of the tag assigned to the QR code.\n\n- `tagIds?: string | string[]`\n The IDs of the tags to filter the QR codes.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the QR code (case insensitive).\n\n- `trackConversion?: boolean`\n If should include QR codes with conversion tracking enabled. The default is `false` if not provided.\n\n- `type?: string`\n Filter by QR code type\n\n- `useAsTemplate?: boolean`\n Filter QR codes marked as templates.\n\n- `userId?: string`\n The ID of the user to filter by.\n\n- `utm_campaign?: string`\n Filter by UTM campaign value\n\n- `utm_content?: string`\n Filter by UTM content value\n\n- `utm_medium?: string`\n Filter by UTM medium value\n\n- `utm_source?: string`\n Filter by UTM source value\n\n- `utm_term?: string`\n Filter by UTM term value\n\n- `withTags?: boolean`\n If should include tags in the response. The default is `false` if not provided.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; notificationToken: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: object[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; whatsapp: { number: string; message?: string; }; width: number; wifi: object; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; pageId?: string; pageUrl?: string; }[]`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst qrCodes = await client.qrcodes.list();\n\nconsole.log(qrCodes);\n```",
464
+ "## list\n\n`client.qrcodes.list(comments?: string, createdAfter?: string, createdBefore?: string, domain?: string, expiresAfter?: string, expiresAt?: string, expiresBefore?: string, folderId?: string, format?: 'static' | 'dynamic', hasComments?: boolean, hasCustomSocial?: boolean, hasDevice?: boolean, hasExpiration?: boolean, hasGeo?: boolean, hasPassword?: boolean, hasTags?: boolean, hasUTM?: boolean, page?: number, pageSize?: number, password?: string, projectSlug?: string, scansMax?: number, scansMin?: number, search?: string, showArchived?: boolean, sort?: 'createdAt' | 'scans' | 'lastClicked', tagId?: string, tagIds?: string | string[], tagNames?: string | string[], trackConversion?: boolean, type?: string, useAsTemplate?: boolean, userId?: string, utm_campaign?: string, utm_content?: string, utm_medium?: string, utm_source?: string, utm_term?: string, withTags?: boolean): object[]`\n\n**get** `/qrcodes`\n\nRetrieve a paginated list of QR Codes for the authenticated workspace.\n\n### Parameters\n\n- `comments?: string`\n The comments to filter by.\n\n- `createdAfter?: string`\n Filter QR codes created after this date\n\n- `createdBefore?: string`\n Filter QR codes created before this date\n\n- `domain?: string`\n The domain to filter the QR codes. For example, `ac.me`. If not provided, all QR codes of the project will be returned.\n\n- `expiresAfter?: string`\n Filter QR codes expiring after this date\n\n- `expiresAt?: string`\n The date and time the QR code will expire in ISO-8601 format. Must be in the future.\n\n- `expiresBefore?: string`\n Filter QR codes expiring before this date\n\n- `folderId?: string`\n The folder ID to filter the QR codes by.\n\n- `format?: 'static' | 'dynamic'`\n Filter by QR code format - static or dynamic\n\n- `hasComments?: boolean`\n Filter QR codes with/without comments\n\n- `hasCustomSocial?: boolean`\n Filter QR codes with/without custom social media cards\n\n- `hasDevice?: boolean`\n Filter QR codes with/without device targeting\n\n- `hasExpiration?: boolean`\n Filter QR codes with/without expiration date\n\n- `hasGeo?: boolean`\n Filter QR codes with/without geo-targeting\n\n- `hasPassword?: boolean`\n Filter QR codes with/without password protection\n\n- `hasTags?: boolean`\n Filter QR codes with/without tags\n\n- `hasUTM?: boolean`\n Filter QR codes with/without UTM parameters\n\n- `page?: number`\n The page number for pagination.\n\n- `pageSize?: number`\n The number of items per page.\n\n- `password?: string`\n The password to filter by.\n\n- `projectSlug?: string`\n The slug of the project to which the QR code belongs. For example, for `app.codeqr.io/acme`, the projectSlug is `acme`.\n\n- `scansMax?: number`\n Maximum number of scans\n\n- `scansMin?: number`\n Minimum number of scans\n\n- `search?: string`\n The search term to filter the QR codes. The search term will be matched against the QR code slug, title, and the destination URL.\n\n- `showArchived?: boolean`\n If should include archived QR codes in the response. The default is `false` if not provided.\n\n- `sort?: 'createdAt' | 'scans' | 'lastClicked'`\n The field to order the QR codes. The default is `createdAt`, and the order of sorting is always descending.\n\n- `tagId?: string`\n [DEPRECATED (use tagIds instead)]: The unique ID of the tag assigned to the QR code.\n\n- `tagIds?: string | string[]`\n The IDs of the tags to filter the QR codes.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the QR code (case insensitive).\n\n- `trackConversion?: boolean`\n If should include QR codes with conversion tracking enabled. The default is `false` if not provided.\n\n- `type?: string`\n Filter by QR code type\n\n- `useAsTemplate?: boolean`\n Filter QR codes marked as templates.\n\n- `userId?: string`\n The ID of the user to filter by.\n\n- `utm_campaign?: string`\n Filter by UTM campaign value\n\n- `utm_content?: string`\n Filter by UTM content value\n\n- `utm_medium?: string`\n Filter by UTM medium value\n\n- `utm_source?: string`\n Filter by UTM source value\n\n- `utm_term?: string`\n Filter by UTM term value\n\n- `withTags?: boolean`\n If should include tags in the response. The default is `false` if not provided.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: object[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: object[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; walletPass: { barcodeText?: string; logo?: string; name?: string; }; whatsapp: { number: string; message?: string; }; width: number; wifi: object; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; pageId?: string; pageUrl?: string; }[]`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst qrCodes = await client.qrcodes.list();\n\nconsole.log(qrCodes);\n```",
464
465
  perLanguage: {
465
466
  typescript: {
466
467
  method: 'client.qrcodes.list',
467
468
  example:
468
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst qrCodes = await client.qrcodes.list();\n\nconsole.log(qrCodes);",
469
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst qrCodes = await client.qrcodes.list();\n\nconsole.log(qrCodes);",
469
470
  },
470
471
  http: {
471
472
  example: 'curl https://api.codeqr.io/qrcodes \\\n -H "Authorization: Bearer $CODEQR_API_KEY"',
@@ -489,12 +490,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
489
490
  ],
490
491
  response: 'object',
491
492
  markdown:
492
- "## retrieve\n\n`client.qrcodes.retrieve(domain: string, key: string, projectSlug: string, externalId?: string, qrCodeId?: string): { id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; notificationToken: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: tag[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; whatsapp: object; width: number; wifi: object; frameTextStyles?: object; pageId?: string; pageUrl?: string; }`\n\n**get** `/qrcodes/info`\n\nRetrieve the info for a QR Code.\n\n### Parameters\n\n- `domain: string`\n The domain of the QR code to be retrieved. For example, for `codeqr.link/github`, the domain is `codeqr.link`.\n\n- `key: string`\n The key of the QR code to be retrieved. For example, for `codeqr.link/github`, the key is `github`.\n\n- `projectSlug: string`\n The slug of the project to which the QR code belongs. For example, for `app.codeqr.io/acme`, the projectSlug is `acme`.\n\n- `externalId?: string`\n This is the ID of the QR code in your database. It must be prefixed with `ext_` when passed as a query parameter.\n\n- `qrCodeId?: string`\n The unique ID of the QR code.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; notificationToken: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; whatsapp: { number: string; message?: string; }; width: number; wifi: object; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; pageId?: string; pageUrl?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `bgColor: string`\n - `comments: string`\n - `contentStatic: string`\n - `createdAt: string`\n - `crypto: object`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `email: object`\n - `excavate: boolean`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `facetime: object`\n - `fgColor: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `height: number`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `latlog: object`\n - `leads: number`\n - `level: string`\n - `logo: string`\n - `notificationToken: string`\n - `password: string`\n - `phone: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `scans: number`\n - `showLogo: boolean`\n - `size: number`\n - `sms: object`\n - `src: string`\n - `static: boolean`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `text: string`\n - `title: string`\n - `trackConversion: boolean`\n - `type: string`\n - `updatedAt: string`\n - `url: string`\n - `useDisplayPage: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `vcard: object`\n - `whatsapp: { number: string; message?: string; }`\n - `width: number`\n - `wifi: object`\n - `frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }`\n - `pageId?: string`\n - `pageUrl?: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst qrCode = await client.qrcodes.retrieve({\n domain: 'x',\n key: 'x',\n projectSlug: 'x',\n});\n\nconsole.log(qrCode);\n```",
493
+ "## retrieve\n\n`client.qrcodes.retrieve(domain: string, key: string, projectSlug: string, externalId?: string, qrCodeId?: string): { id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: tag[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; walletPass: object; whatsapp: object; width: number; wifi: object; frameTextStyles?: object; pageId?: string; pageUrl?: string; }`\n\n**get** `/qrcodes/info`\n\nRetrieve the info for a QR Code.\n\n### Parameters\n\n- `domain: string`\n The domain of the QR code to be retrieved. For example, for `codeqr.link/github`, the domain is `codeqr.link`.\n\n- `key: string`\n The key of the QR code to be retrieved. For example, for `codeqr.link/github`, the key is `github`.\n\n- `projectSlug: string`\n The slug of the project to which the QR code belongs. For example, for `app.codeqr.io/acme`, the projectSlug is `acme`.\n\n- `externalId?: string`\n This is the ID of the QR code in your database. It must be prefixed with `ext_` when passed as a query parameter.\n\n- `qrCodeId?: string`\n The unique ID of the QR code.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; walletPass: { barcodeText?: string; logo?: string; name?: string; }; whatsapp: { number: string; message?: string; }; width: number; wifi: object; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; pageId?: string; pageUrl?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `bgColor: string`\n - `comments: string`\n - `contentStatic: string`\n - `createdAt: string`\n - `crypto: object`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `email: object`\n - `excavate: boolean`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `facetime: object`\n - `fgColor: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `height: number`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `latlog: object`\n - `leads: number`\n - `level: string`\n - `logo: string`\n - `password: string`\n - `phone: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `scans: number`\n - `showLogo: boolean`\n - `size: number`\n - `sms: object`\n - `src: string`\n - `static: boolean`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `text: string`\n - `title: string`\n - `trackConversion: boolean`\n - `type: string`\n - `updatedAt: string`\n - `url: string`\n - `useDisplayPage: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `vcard: object`\n - `walletPass: { barcodeText?: string; logo?: string; name?: string; }`\n - `whatsapp: { number: string; message?: string; }`\n - `width: number`\n - `wifi: object`\n - `frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }`\n - `pageId?: string`\n - `pageUrl?: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst qrCode = await client.qrcodes.retrieve({\n domain: 'x',\n key: 'x',\n projectSlug: 'x',\n});\n\nconsole.log(qrCode);\n```",
493
494
  perLanguage: {
494
495
  typescript: {
495
496
  method: 'client.qrcodes.retrieve',
496
497
  example:
497
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst qrCode = await client.qrcodes.retrieve({\n domain: 'x',\n key: 'x',\n projectSlug: 'x',\n});\n\nconsole.log(qrCode.id);",
498
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst qrCode = await client.qrcodes.retrieve({\n domain: 'x',\n key: 'x',\n projectSlug: 'x',\n});\n\nconsole.log(qrCode.id);",
498
499
  },
499
500
  http: {
500
501
  example: 'curl https://api.codeqr.io/qrcodes/info \\\n -H "Authorization: Bearer $CODEQR_API_KEY"',
@@ -516,8 +517,7 @@ const EMBEDDED_METHODS: MethodEntry[] = [
516
517
  'archived?: boolean;',
517
518
  'bgColor?: string;',
518
519
  'comments?: string;',
519
- 'contentStatic?: string;',
520
- 'crypto?: object;',
520
+ "crypto?: { address?: string; amount?: string; cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'; email?: string; message?: string; };",
521
521
  'description?: string;',
522
522
  'doIndex?: boolean;',
523
523
  'domain?: string;',
@@ -550,12 +550,13 @@ const EMBEDDED_METHODS: MethodEntry[] = [
550
550
  'password?: string;',
551
551
  'pattern?: string;',
552
552
  'phone?: string;',
553
+ 'pix?: object;',
553
554
  'prefix?: string;',
554
555
  'preRedirection?: boolean;',
555
556
  'proxy?: boolean;',
556
557
  'publicStats?: boolean;',
557
558
  'rewrite?: boolean;',
558
- "rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[];",
559
+ "rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[];",
559
560
  'shape?: string;',
560
561
  'showLogo?: boolean;',
561
562
  'size?: number;',
@@ -573,7 +574,13 @@ const EMBEDDED_METHODS: MethodEntry[] = [
573
574
  'url?: string;',
574
575
  'useAsTemplate?: boolean;',
575
576
  'useDisplayPage?: boolean;',
577
+ 'utm_campaign?: string;',
578
+ 'utm_content?: string;',
579
+ 'utm_medium?: string;',
580
+ 'utm_source?: string;',
581
+ 'utm_term?: string;',
576
582
  'vcard?: object;',
583
+ 'walletPass?: { barcodeText?: string; logo?: string; name?: string; };',
577
584
  'webhookIds?: string[];',
578
585
  'whatsapp?: { number: string; message?: string; };',
579
586
  'width?: number;',
@@ -581,12 +588,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
581
588
  ],
582
589
  response: 'object',
583
590
  markdown:
584
- "## update\n\n`client.qrcodes.update(qrcodeId: string, android?: string, archived?: boolean, bgColor?: string, comments?: string, contentStatic?: string, crypto?: object, description?: string, doIndex?: boolean, domain?: string, email?: object, excavate?: boolean, expiredUrl?: string, expiresAt?: string, externalId?: string, facetime?: object, fgColor?: string, filled?: boolean, flexible?: boolean, folderId?: string, frame?: string, frameColor?: string, frameText?: string, frameTextColor?: string, frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }, geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }, height?: number, image?: string, ios?: string, isFormMandatory?: boolean, key?: string, latlog?: object, level?: string, logo?: string, pageId?: string, pageUrl?: string, password?: string, pattern?: string, phone?: string, prefix?: string, preRedirection?: boolean, proxy?: boolean, publicStats?: boolean, rewrite?: boolean, rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[], shape?: string, showLogo?: boolean, size?: number, sms?: object, src?: string, static?: boolean, tagId?: string, tagIds?: string | string[], tagNames?: string | string[], templateId?: string, text?: string, title?: string, trackConversion?: boolean, type?: string, url?: string, useAsTemplate?: boolean, useDisplayPage?: boolean, vcard?: object, webhookIds?: string[], whatsapp?: { number: string; message?: string; }, width?: number, wifi?: object): { id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; notificationToken: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: tag[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; whatsapp: object; width: number; wifi: object; frameTextStyles?: object; pageId?: string; pageUrl?: string; }`\n\n**put** `/qrcodes/{qrcodeId}`\n\nUpdate a QR Code for the authenticated workspace. If there's no change, returns it as it is.\n\n### Parameters\n\n- `qrcodeId: string`\n The id of the QR Code to update. You may use either `qrcodeId` (obtained via `/qrcodes/info` endpoint) or `externalId` prefixed with `ext_`.\n\n- `android?: string`\n The destination URL for Android for the QR code for device targeting Android.\n\n- `archived?: boolean`\n If the QR code is archived.\n\n- `bgColor?: string`\n The background color of the QR code (hex or CSS keyword). Invalid values are coerced to default.\n\n- `comments?: string`\n The comments for the QR code.\n\n- `contentStatic?: string`\n The static content of the QR code.\n\n- `crypto?: object`\n The cryptocurrency information of the QR code.\n\n- `description?: string`\n The description of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `doIndex?: boolean`\n Allow search engines to index your QR code. The default is `false` if not provided. Learn more: https://codeqr.link/noindex\n\n- `domain?: string`\n The domain of the QR code. If not provided, the main domain of the project will be used (or `codeqr.link` if the project does not have domains).\n\n- `email?: object`\n The email information of the QR code.\n\n- `excavate?: boolean`\n If the QR code should have excavated areas.\n\n- `expiredUrl?: string`\n The URL to redirect when the QR code expires.\n\n- `expiresAt?: string`\n The date and time the QR code will expire in ISO-8601 format. Must be in the future.\n\n- `externalId?: string`\n This is the ID of the QR code in your database. If defined, it can be used to identify the QR code in the future. It must be prefixed with `ext_` when passed as a query parameter.\n\n- `facetime?: object`\n The FaceTime information of the QR code.\n\n- `fgColor?: string`\n The foreground color of the QR code (hex or CSS keyword). Invalid values are coerced to default.\n\n- `filled?: boolean`\n If the QR code is filled.\n\n- `flexible?: boolean`\n If the QR code is flexible.\n\n- `folderId?: string`\n The unique ID of the folder assigned to the QR code. Omit or set to null for no folder.\n\n- `frame?: string`\n The type of frame of the QR code (e.g. none, frame-1, frame-2, frame-3, frame-5, frame-6). frame-5/6 are top-bar variants. Unknown ids fall back to no frame at render.\n\n- `frameColor?: string`\n The color of the frame (hex or CSS keyword). Invalid values are coerced to default.\n\n- `frameText?: string`\n Label text rendered inside the frame (e.g. \"SCAN ME\", a product SKU). Maximum 200 characters. Word-wraps to multiple lines at larger sizes; the frame bar grows vertically to fit.\n\n- `frameTextColor?: string`\n Color of the frame label text (hex `#RRGGBB`, `#RGB`, `#RRGGBBAA`, or a CSS keyword from the allowlist). When omitted, a contrasting color is derived automatically from `frameColor`.\n\n- `frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }`\n Typographic styles applied to the frame label text. Every key is enum-gated — unknown keys or out-of-enum values are rejected to prevent SVG attribute injection. All fields are optional; omitted keys fall back to the default (normal weight, normal style, sans family, medium size).\n - `family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'`\n Font family used for the frame label text. `sans` = Arial / Helvetica (default). `sans-condensed` = Arial Narrow. `serif` = Georgia / Times New Roman. `serif-elegant` = Palatino Linotype / Book Antiqua. `mono` = Courier New. Values resolve to safe system font stacks on the rendered SVG.\n - `size?: 's' | 'm' | 'l' | 'xl'`\n Font size preset for the frame label. `s` = 60 viewBox units, `m` = 89.1 (default), `l` = 120, `xl` = 150. Larger sizes grow the frame bar vertically to fit. Extremely long text auto-shrinks to keep within 4 lines (floor 48).\n - `style?: 'normal' | 'italic'`\n Font style of the frame label text. `italic` applies `font-style=\"italic\"`.\n - `weight?: 'normal' | 'bold'`\n Font weight of the frame label text. `bold` renders at SVG `font-weight=\"700\"`, `normal` at `400`.\n\n- `geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }`\n Geographic segmentation information for the QR code in the JSON format `{[COUNTRY]: https://example.com }`.\n - `AD?: string`\n - `AE?: string`\n - `AF?: string`\n - `AG?: string`\n - `AI?: string`\n - `AL?: string`\n - `AM?: string`\n - `AO?: string`\n - `AQ?: string`\n - `AR?: string`\n - `AS?: string`\n - `AT?: string`\n - `AU?: string`\n - `AW?: string`\n - `AX?: string`\n - `AZ?: string`\n - `BA?: string`\n - `BB?: string`\n - `BD?: string`\n - `BE?: string`\n - `BF?: string`\n - `BG?: string`\n - `BH?: string`\n - `BI?: string`\n - `BJ?: string`\n - `BL?: string`\n - `BM?: string`\n - `BN?: string`\n - `BO?: string`\n - `BQ?: string`\n - `BR?: string`\n - `BS?: string`\n - `BT?: string`\n - `BV?: string`\n - `BW?: string`\n - `BY?: string`\n - `BZ?: string`\n - `CA?: string`\n - `CC?: string`\n - `CD?: string`\n - `CF?: string`\n - `CG?: string`\n - `CH?: string`\n - `CI?: string`\n - `CK?: string`\n - `CL?: string`\n - `CM?: string`\n - `CN?: string`\n - `CO?: string`\n - `CR?: string`\n - `CU?: string`\n - `CV?: string`\n - `CW?: string`\n - `CX?: string`\n - `CY?: string`\n - `CZ?: string`\n - `DE?: string`\n - `DJ?: string`\n - `DK?: string`\n - `DM?: string`\n - `DO?: string`\n - `DZ?: string`\n - `EC?: string`\n - `EE?: string`\n - `EG?: string`\n - `EH?: string`\n - `ER?: string`\n - `ES?: string`\n - `ET?: string`\n - `FI?: string`\n - `FJ?: string`\n - `FK?: string`\n - `FM?: string`\n - `FO?: string`\n - `FR?: string`\n - `GA?: string`\n - `GB?: string`\n - `GD?: string`\n - `GE?: string`\n - `GF?: string`\n - `GG?: string`\n - `GH?: string`\n - `GI?: string`\n - `GL?: string`\n - `GM?: string`\n - `GN?: string`\n - `GP?: string`\n - `GQ?: string`\n - `GR?: string`\n - `GS?: string`\n - `GT?: string`\n - `GU?: string`\n - `GW?: string`\n - `GY?: string`\n - `HK?: string`\n - `HM?: string`\n - `HN?: string`\n - `HR?: string`\n - `HT?: string`\n - `HU?: string`\n - `ID?: string`\n - `IE?: string`\n - `IL?: string`\n - `IM?: string`\n - `IN?: string`\n - `IO?: string`\n - `IQ?: string`\n - `IR?: string`\n - `IS?: string`\n - `IT?: string`\n - `JE?: string`\n - `JM?: string`\n - `JO?: string`\n - `JP?: string`\n - `KE?: string`\n - `KG?: string`\n - `KH?: string`\n - `KI?: string`\n - `KM?: string`\n - `KN?: string`\n - `KP?: string`\n - `KR?: string`\n - `KW?: string`\n - `KY?: string`\n - `KZ?: string`\n - `LA?: string`\n - `LB?: string`\n - `LC?: string`\n - `LI?: string`\n - `LK?: string`\n - `LR?: string`\n - `LS?: string`\n - `LT?: string`\n - `LU?: string`\n - `LV?: string`\n - `LY?: string`\n - `MA?: string`\n - `MC?: string`\n - `MD?: string`\n - `ME?: string`\n - `MF?: string`\n - `MG?: string`\n - `MH?: string`\n - `MK?: string`\n - `ML?: string`\n - `MM?: string`\n - `MN?: string`\n - `MO?: string`\n - `MP?: string`\n - `MQ?: string`\n - `MR?: string`\n - `MS?: string`\n - `MT?: string`\n - `MU?: string`\n - `MV?: string`\n - `MW?: string`\n - `MX?: string`\n - `MY?: string`\n - `MZ?: string`\n - `NA?: string`\n - `NC?: string`\n - `NE?: string`\n - `NF?: string`\n - `NG?: string`\n - `NI?: string`\n - `NL?: string`\n - `NO?: string`\n - `NP?: string`\n - `NR?: string`\n - `NU?: string`\n - `NZ?: string`\n - `OM?: string`\n - `PA?: string`\n - `PE?: string`\n - `PF?: string`\n - `PG?: string`\n - `PH?: string`\n - `PK?: string`\n - `PL?: string`\n - `PM?: string`\n - `PN?: string`\n - `PR?: string`\n - `PS?: string`\n - `PT?: string`\n - `PW?: string`\n - `PY?: string`\n - `QA?: string`\n - `RE?: string`\n - `RO?: string`\n - `RS?: string`\n - `RU?: string`\n - `RW?: string`\n - `SA?: string`\n - `SB?: string`\n - `SC?: string`\n - `SD?: string`\n - `SE?: string`\n - `SG?: string`\n - `SH?: string`\n - `SI?: string`\n - `SJ?: string`\n - `SK?: string`\n - `SL?: string`\n - `SM?: string`\n - `SN?: string`\n - `SO?: string`\n - `SR?: string`\n - `SS?: string`\n - `ST?: string`\n - `SV?: string`\n - `SX?: string`\n - `SY?: string`\n - `SZ?: string`\n - `TC?: string`\n - `TD?: string`\n - `TF?: string`\n - `TG?: string`\n - `TH?: string`\n - `TJ?: string`\n - `TK?: string`\n - `TL?: string`\n - `TM?: string`\n - `TN?: string`\n - `TO?: string`\n - `TR?: string`\n - `TT?: string`\n - `TV?: string`\n - `TW?: string`\n - `TZ?: string`\n - `UA?: string`\n - `UG?: string`\n - `UM?: string`\n - `US?: string`\n - `UY?: string`\n - `UZ?: string`\n - `VA?: string`\n - `VC?: string`\n - `VE?: string`\n - `VG?: string`\n - `VI?: string`\n - `VN?: string`\n - `VU?: string`\n - `WF?: string`\n - `WS?: string`\n - `XK?: string`\n - `YE?: string`\n - `YT?: string`\n - `ZA?: string`\n - `ZM?: string`\n - `ZW?: string`\n\n- `height?: number`\n Logo height in pixels. When omitted, a proportional size is used based on the QR code size (about 10–20% depending on size).\n\n- `image?: string`\n The image of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `ios?: string`\n The destination URL for iOS for the QR code for device targeting iOS.\n\n- `isFormMandatory?: boolean`\n If the form is mandatory for the page.\n\n- `key?: string`\n The slug of the QR code. If not provided, a random slug of 7 characters will be generated.\n\n- `latlog?: object`\n The latitude and longitude information of the QR code.\n\n- `level?: string`\n The level of error correction of the QR code.\n\n- `logo?: string`\n The logo of the QR code.\n\n- `pageId?: string`\n The ID of the page to redirect to before the QR code destination.\n\n- `pageUrl?: string`\n The URL of the page to redirect to before the QR code destination.\n\n- `password?: string`\n The password required to access the destination URL of the QR code.\n\n- `pattern?: string`\n The pattern of the modules of the QR code.\n\n- `phone?: string`\n The phone number of the QR code.\n\n- `prefix?: string`\n The prefix for the randomly generated key. If provided, the key will be prefixed with this value.\n\n- `preRedirection?: boolean`\n If the QR code has pre-redirection.\n\n- `proxy?: boolean`\n If the QR code uses the custom link preview feature.\n\n- `publicStats?: boolean`\n If the statistics of the QR code are publicly accessible.\n\n- `rewrite?: boolean`\n If the QR code uses link cloaking.\n\n- `rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]`\n Smart rules for conditional destination routing by request attribute.\n\n- `shape?: string`\n The shape of the design around the QR code (none, square, circle).\n\n- `showLogo?: boolean`\n If the logo should be displayed in the QR code.\n\n- `size?: number`\n The size of the QR code.\n\n- `sms?: object`\n The SMS information of the QR code.\n\n- `src?: string`\n The image URL of the QR code.\n\n- `static?: boolean`\n If the QR code is static.\n\n- `tagId?: string`\n The unique ID of the tag assigned to the QR code. This field is deprecated – use `tagIds` instead.\n\n- `tagIds?: string | string[]`\n The unique IDs of the tags assigned to the QR code.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the QR code (case insensitive).\n\n- `templateId?: string`\n ID of a QR code (in the same project) marked as a template. Its customization fields (colors, logo, pattern, shape, frame) will be applied to the new QR code unless explicitly overridden.\n\n- `text?: string`\n The text of the QR code.\n\n- `title?: string`\n The title of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `trackConversion?: boolean`\n If should track conversions for the QR code.\n\n- `type?: string`\n The type of content of the QR code.\n\n- `url?: string`\n The destination URL of the QR code.\n\n- `useAsTemplate?: boolean`\n Whether this QR code should be used as a reusable template.\n\n- `useDisplayPage?: boolean`\n For dynamic QR codes with phone, email, or sms types: if true (default), shows an action page with buttons. If false, redirects directly to tel:/mailto:/sms: URI.\n\n- `vcard?: object`\n The vCard information of the QR code.\n\n- `webhookIds?: string[]`\n An array of webhook IDs to trigger when the link is clicked. These webhooks will receive click event data.\n\n- `whatsapp?: { number: string; message?: string; }`\n The WhatsApp click-to-chat info: E.164 number (digits only) and optional prefilled message.\n - `number: string`\n - `message?: string`\n\n- `width?: number`\n Logo width in pixels. When omitted, a proportional size is used based on the QR code size (about 10–20% depending on size).\n\n- `wifi?: object`\n The WiFi information of the QR code.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; notificationToken: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; whatsapp: { number: string; message?: string; }; width: number; wifi: object; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; pageId?: string; pageUrl?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `bgColor: string`\n - `comments: string`\n - `contentStatic: string`\n - `createdAt: string`\n - `crypto: object`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `email: object`\n - `excavate: boolean`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `facetime: object`\n - `fgColor: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `height: number`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `latlog: object`\n - `leads: number`\n - `level: string`\n - `logo: string`\n - `notificationToken: string`\n - `password: string`\n - `phone: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `scans: number`\n - `showLogo: boolean`\n - `size: number`\n - `sms: object`\n - `src: string`\n - `static: boolean`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `text: string`\n - `title: string`\n - `trackConversion: boolean`\n - `type: string`\n - `updatedAt: string`\n - `url: string`\n - `useDisplayPage: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `vcard: object`\n - `whatsapp: { number: string; message?: string; }`\n - `width: number`\n - `wifi: object`\n - `frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }`\n - `pageId?: string`\n - `pageUrl?: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst qrCode = await client.qrcodes.update('qrcodeId');\n\nconsole.log(qrCode);\n```",
591
+ "## update\n\n`client.qrcodes.update(qrcodeId: string, android?: string, archived?: boolean, bgColor?: string, comments?: string, crypto?: { address?: string; amount?: string; cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'; email?: string; message?: string; }, description?: string, doIndex?: boolean, domain?: string, email?: object, excavate?: boolean, expiredUrl?: string, expiresAt?: string, externalId?: string, facetime?: object, fgColor?: string, filled?: boolean, flexible?: boolean, folderId?: string, frame?: string, frameColor?: string, frameText?: string, frameTextColor?: string, frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }, geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }, height?: number, image?: string, ios?: string, isFormMandatory?: boolean, key?: string, latlog?: object, level?: string, logo?: string, pageId?: string, pageUrl?: string, password?: string, pattern?: string, phone?: string, pix?: object, prefix?: string, preRedirection?: boolean, proxy?: boolean, publicStats?: boolean, rewrite?: boolean, rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[], shape?: string, showLogo?: boolean, size?: number, sms?: object, src?: string, static?: boolean, tagId?: string, tagIds?: string | string[], tagNames?: string | string[], templateId?: string, text?: string, title?: string, trackConversion?: boolean, type?: string, url?: string, useAsTemplate?: boolean, useDisplayPage?: boolean, utm_campaign?: string, utm_content?: string, utm_medium?: string, utm_source?: string, utm_term?: string, vcard?: object, walletPass?: { barcodeText?: string; logo?: string; name?: string; }, webhookIds?: string[], whatsapp?: { number: string; message?: string; }, width?: number, wifi?: object): { id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: object[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: tag[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; walletPass: object; whatsapp: object; width: number; wifi: object; frameTextStyles?: object; pageId?: string; pageUrl?: string; }`\n\n**put** `/qrcodes/{qrcodeId}`\n\nUpdate a QR Code for the authenticated workspace. If there's no change, returns it as it is.\n\n### Parameters\n\n- `qrcodeId: string`\n The id of the QR Code to update. You may use either `qrcodeId` (obtained via `/qrcodes/info` endpoint) or `externalId` prefixed with `ext_`.\n\n- `android?: string`\n The destination URL for Android for the QR code for device targeting Android.\n\n- `archived?: boolean`\n If the QR code is archived. Archiving hides it from the default dashboard listing; the code keeps redirecting and keeps counting scans.\n\n- `bgColor?: string`\n The background color of the QR code (hex or CSS keyword). Invalid values are coerced to default.\n\n- `comments?: string`\n The comments for the QR code.\n\n- `crypto?: { address?: string; amount?: string; cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'; email?: string; message?: string; }`\n The cryptocurrency information of the QR code.\n - `address?: string`\n The wallet address, as the display page reads it.\n - `amount?: string`\n - `cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'`\n - `email?: string`\n The wallet address.\n - `message?: string`\n\n- `description?: string`\n The description of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `doIndex?: boolean`\n Allow search engines to index your QR code. The default is `false` if not provided. Learn more: https://codeqr.link/noindex\n\n- `domain?: string`\n The domain of the QR code. If not provided, the main domain of the project will be used (or `codeqr.link` if the project does not have domains).\n\n- `email?: object`\n The email information of the QR code.\n\n- `excavate?: boolean`\n If the QR code should have excavated areas.\n\n- `expiredUrl?: string`\n The URL to redirect when the QR code expires.\n\n- `expiresAt?: string`\n The date and time the QR code will expire in ISO-8601 format. Must be in the future.\n\n- `externalId?: string`\n This is the ID of the QR code in your database. If defined, it can be used to identify the QR code in the future. It must be prefixed with `ext_` when passed as a query parameter.\n\n- `facetime?: object`\n The FaceTime information of the QR code.\n\n- `fgColor?: string`\n The foreground color of the QR code (hex or CSS keyword). Invalid values are coerced to default.\n\n- `filled?: boolean`\n If the QR code is filled.\n\n- `flexible?: boolean`\n If the QR code is flexible.\n\n- `folderId?: string`\n The unique ID of the folder assigned to the QR code. Omit or set to null for no folder.\n\n- `frame?: string`\n The type of frame of the QR code (e.g. none, frame-1, frame-2, frame-3, frame-5, frame-6). frame-5/6 are top-bar variants. Unknown ids fall back to no frame at render.\n\n- `frameColor?: string`\n The color of the frame (hex or CSS keyword). Invalid values are coerced to default.\n\n- `frameText?: string`\n Label text rendered inside the frame (e.g. \"SCAN ME\", a product SKU). Maximum 200 characters. Word-wraps to multiple lines at larger sizes; the frame bar grows vertically to fit.\n\n- `frameTextColor?: string`\n Color of the frame label text (hex `#RRGGBB`, `#RGB`, `#RRGGBBAA`, or a CSS keyword from the allowlist). When omitted, a contrasting color is derived automatically from `frameColor`.\n\n- `frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }`\n Typographic styles applied to the frame label text. Every key is enum-gated — unknown keys or out-of-enum values are rejected to prevent SVG attribute injection. All fields are optional; omitted keys fall back to the default (normal weight, normal style, sans family, medium size).\n - `family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'`\n Font family used for the frame label text. `sans` = Arial / Helvetica (default). `sans-condensed` = Arial Narrow. `serif` = Georgia / Times New Roman. `serif-elegant` = Palatino Linotype / Book Antiqua. `mono` = Courier New. Values resolve to safe system font stacks on the rendered SVG.\n - `size?: 's' | 'm' | 'l' | 'xl'`\n Font size preset for the frame label. `s` = 60 viewBox units, `m` = 89.1 (default), `l` = 120, `xl` = 150. Larger sizes grow the frame bar vertically to fit. Extremely long text auto-shrinks to keep within 4 lines (floor 48).\n - `style?: 'normal' | 'italic'`\n Font style of the frame label text. `italic` applies `font-style=\"italic\"`.\n - `weight?: 'normal' | 'bold'`\n Font weight of the frame label text. `bold` renders at SVG `font-weight=\"700\"`, `normal` at `400`.\n\n- `geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }`\n Geographic segmentation information for the QR code in the JSON format `{[COUNTRY]: https://example.com }`.\n - `AD?: string`\n - `AE?: string`\n - `AF?: string`\n - `AG?: string`\n - `AI?: string`\n - `AL?: string`\n - `AM?: string`\n - `AO?: string`\n - `AQ?: string`\n - `AR?: string`\n - `AS?: string`\n - `AT?: string`\n - `AU?: string`\n - `AW?: string`\n - `AX?: string`\n - `AZ?: string`\n - `BA?: string`\n - `BB?: string`\n - `BD?: string`\n - `BE?: string`\n - `BF?: string`\n - `BG?: string`\n - `BH?: string`\n - `BI?: string`\n - `BJ?: string`\n - `BL?: string`\n - `BM?: string`\n - `BN?: string`\n - `BO?: string`\n - `BQ?: string`\n - `BR?: string`\n - `BS?: string`\n - `BT?: string`\n - `BV?: string`\n - `BW?: string`\n - `BY?: string`\n - `BZ?: string`\n - `CA?: string`\n - `CC?: string`\n - `CD?: string`\n - `CF?: string`\n - `CG?: string`\n - `CH?: string`\n - `CI?: string`\n - `CK?: string`\n - `CL?: string`\n - `CM?: string`\n - `CN?: string`\n - `CO?: string`\n - `CR?: string`\n - `CU?: string`\n - `CV?: string`\n - `CW?: string`\n - `CX?: string`\n - `CY?: string`\n - `CZ?: string`\n - `DE?: string`\n - `DJ?: string`\n - `DK?: string`\n - `DM?: string`\n - `DO?: string`\n - `DZ?: string`\n - `EC?: string`\n - `EE?: string`\n - `EG?: string`\n - `EH?: string`\n - `ER?: string`\n - `ES?: string`\n - `ET?: string`\n - `FI?: string`\n - `FJ?: string`\n - `FK?: string`\n - `FM?: string`\n - `FO?: string`\n - `FR?: string`\n - `GA?: string`\n - `GB?: string`\n - `GD?: string`\n - `GE?: string`\n - `GF?: string`\n - `GG?: string`\n - `GH?: string`\n - `GI?: string`\n - `GL?: string`\n - `GM?: string`\n - `GN?: string`\n - `GP?: string`\n - `GQ?: string`\n - `GR?: string`\n - `GS?: string`\n - `GT?: string`\n - `GU?: string`\n - `GW?: string`\n - `GY?: string`\n - `HK?: string`\n - `HM?: string`\n - `HN?: string`\n - `HR?: string`\n - `HT?: string`\n - `HU?: string`\n - `ID?: string`\n - `IE?: string`\n - `IL?: string`\n - `IM?: string`\n - `IN?: string`\n - `IO?: string`\n - `IQ?: string`\n - `IR?: string`\n - `IS?: string`\n - `IT?: string`\n - `JE?: string`\n - `JM?: string`\n - `JO?: string`\n - `JP?: string`\n - `KE?: string`\n - `KG?: string`\n - `KH?: string`\n - `KI?: string`\n - `KM?: string`\n - `KN?: string`\n - `KP?: string`\n - `KR?: string`\n - `KW?: string`\n - `KY?: string`\n - `KZ?: string`\n - `LA?: string`\n - `LB?: string`\n - `LC?: string`\n - `LI?: string`\n - `LK?: string`\n - `LR?: string`\n - `LS?: string`\n - `LT?: string`\n - `LU?: string`\n - `LV?: string`\n - `LY?: string`\n - `MA?: string`\n - `MC?: string`\n - `MD?: string`\n - `ME?: string`\n - `MF?: string`\n - `MG?: string`\n - `MH?: string`\n - `MK?: string`\n - `ML?: string`\n - `MM?: string`\n - `MN?: string`\n - `MO?: string`\n - `MP?: string`\n - `MQ?: string`\n - `MR?: string`\n - `MS?: string`\n - `MT?: string`\n - `MU?: string`\n - `MV?: string`\n - `MW?: string`\n - `MX?: string`\n - `MY?: string`\n - `MZ?: string`\n - `NA?: string`\n - `NC?: string`\n - `NE?: string`\n - `NF?: string`\n - `NG?: string`\n - `NI?: string`\n - `NL?: string`\n - `NO?: string`\n - `NP?: string`\n - `NR?: string`\n - `NU?: string`\n - `NZ?: string`\n - `OM?: string`\n - `PA?: string`\n - `PE?: string`\n - `PF?: string`\n - `PG?: string`\n - `PH?: string`\n - `PK?: string`\n - `PL?: string`\n - `PM?: string`\n - `PN?: string`\n - `PR?: string`\n - `PS?: string`\n - `PT?: string`\n - `PW?: string`\n - `PY?: string`\n - `QA?: string`\n - `RE?: string`\n - `RO?: string`\n - `RS?: string`\n - `RU?: string`\n - `RW?: string`\n - `SA?: string`\n - `SB?: string`\n - `SC?: string`\n - `SD?: string`\n - `SE?: string`\n - `SG?: string`\n - `SH?: string`\n - `SI?: string`\n - `SJ?: string`\n - `SK?: string`\n - `SL?: string`\n - `SM?: string`\n - `SN?: string`\n - `SO?: string`\n - `SR?: string`\n - `SS?: string`\n - `ST?: string`\n - `SV?: string`\n - `SX?: string`\n - `SY?: string`\n - `SZ?: string`\n - `TC?: string`\n - `TD?: string`\n - `TF?: string`\n - `TG?: string`\n - `TH?: string`\n - `TJ?: string`\n - `TK?: string`\n - `TL?: string`\n - `TM?: string`\n - `TN?: string`\n - `TO?: string`\n - `TR?: string`\n - `TT?: string`\n - `TV?: string`\n - `TW?: string`\n - `TZ?: string`\n - `UA?: string`\n - `UG?: string`\n - `UM?: string`\n - `US?: string`\n - `UY?: string`\n - `UZ?: string`\n - `VA?: string`\n - `VC?: string`\n - `VE?: string`\n - `VG?: string`\n - `VI?: string`\n - `VN?: string`\n - `VU?: string`\n - `WF?: string`\n - `WS?: string`\n - `XK?: string`\n - `YE?: string`\n - `YT?: string`\n - `ZA?: string`\n - `ZM?: string`\n - `ZW?: string`\n\n- `height?: number`\n Logo height in pixels. When omitted, a proportional size is used based on the QR code size (about 10–20% depending on size).\n\n- `image?: string`\n The image of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `ios?: string`\n The destination URL for iOS for the QR code for device targeting iOS.\n\n- `isFormMandatory?: boolean`\n If the form is mandatory for the page.\n\n- `key?: string`\n The slug of the QR code. If not provided, a random slug of 7 characters will be generated.\n\n- `latlog?: object`\n The latitude and longitude information of the QR code.\n\n- `level?: string`\n The level of error correction of the QR code.\n\n- `logo?: string`\n [DEPRECATED (use `src` instead)]: Not read by any renderer. Set `src` to an image uploaded via `POST /qrcodes/logo`.\n\n- `pageId?: string`\n The ID of the page to redirect to before the QR code destination.\n\n- `pageUrl?: string`\n The URL of the page to redirect to before the QR code destination.\n\n- `password?: string`\n The password required to access the destination URL of the QR code.\n\n- `pattern?: string`\n The pattern of the modules of the QR code.\n\n- `phone?: string`\n The phone number of the QR code.\n\n- `pix?: object`\n The Pix information of the QR code (key, name, city, amount, description).\n\n- `prefix?: string`\n The prefix for the randomly generated key. If provided, the key will be prefixed with this value.\n\n- `preRedirection?: boolean`\n If the QR code has pre-redirection.\n\n- `proxy?: boolean`\n If the QR code uses the custom link preview feature.\n\n- `publicStats?: boolean`\n If the statistics of the QR code are publicly accessible.\n\n- `rewrite?: boolean`\n If the QR code uses link cloaking.\n\n- `rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]`\n Smart rules for conditional destination routing by request attribute.\n\n- `shape?: string`\n The shape of the design around the QR code (none, square, circle).\n\n- `showLogo?: boolean`\n If the logo should be displayed in the QR code.\n\n- `size?: number`\n The size of the QR code.\n\n- `sms?: object`\n The SMS information of the QR code.\n\n- `src?: string`\n The image URL of the QR code.\n\n- `static?: boolean`\n If the QR code is static.\n\n- `tagId?: string`\n The unique ID of the tag assigned to the QR code. This field is deprecated – use `tagIds` instead.\n\n- `tagIds?: string | string[]`\n The unique IDs of the tags assigned to the QR code.\n\n- `tagNames?: string | string[]`\n The unique name of the tags assigned to the QR code (case insensitive). Ignored when `tagIds` is also present.\n\n- `templateId?: string`\n ID of a QR code (in the same project) marked as a template. Its customization fields (colors, logo, pattern, shape, frame) will be applied to the new QR code unless explicitly overridden.\n\n- `text?: string`\n The text of the QR code.\n\n- `title?: string`\n The title of the QR code generated via `api.codeqr.io/metatags`. Will be used for custom link preview if `proxy` is true.\n\n- `trackConversion?: boolean`\n If should track conversions for the QR code.\n\n- `type?: string`\n The type of content of the QR code.\n\n- `url?: string`\n The destination URL of the QR code.\n\n- `useAsTemplate?: boolean`\n Whether this QR code should be used as a reusable template.\n\n- `useDisplayPage?: boolean`\n Kept for compatibility. A dynamic phone, email or SMS code is always served the display page, whose buttons open the dialler, the mail client or the SMS app; setting this to false changes nothing about what a scan gets.\n\n- `utm_campaign?: string`\n The utm_campaign of the destination URL.\n\n- `utm_content?: string`\n The utm_content of the destination URL.\n\n- `utm_medium?: string`\n The utm_medium of the destination URL.\n\n- `utm_source?: string`\n The utm_source of the destination URL.\n\n- `utm_term?: string`\n The utm_term of the destination URL.\n\n- `vcard?: object`\n The vCard information of the QR code.\n\n- `walletPass?: { barcodeText?: string; logo?: string; name?: string; }`\n Customizes the Google Wallet and Apple Wallet passes saved from this QR code. `name` and `logo` replace the workspace name and logo; left out (or `null`), the pass shows the workspace value. `barcodeText` sets the text under the QR code. On update: omit `walletPass` to keep the stored value, send `null` to clear it, or send an object to replace the stored one as a whole — fields missing from the object are cleared, not merged. Available on the Business plan and above, outside a trial: elsewhere a new value is refused with `403 forbidden` (`null` is always accepted) and a stored value is ignored, so the passes show the workspace name and logo.\n - `barcodeText?: string`\n The text shown under the QR code on the pass, such as the member's name or card number. The QR code's title is never shown there. Trimmed; 1 to 40 characters.\n - `logo?: string`\n The logo shown on the pass, in place of the workspace logo. Either the URL of an image uploaded via `POST /qrcodes/logo`, or any https URL serving a PNG, JPEG or WebP image of up to 2 MB without a redirect. An external image is copied to CodeQR storage when the QR code is written, and the response returns the URL of the copy, not the URL sent.\n - `name?: string`\n The name shown at the top of the pass, in place of the workspace name. Trimmed; 1 to 64 characters.\n\n- `webhookIds?: string[]`\n An array of webhook IDs to trigger when the link is clicked. These webhooks will receive click event data.\n\n- `whatsapp?: { number: string; message?: string; }`\n The WhatsApp click-to-chat info: E.164 number (digits only) and optional prefilled message.\n - `number: string`\n - `message?: string`\n\n- `width?: number`\n Logo width in pixels. When omitted, a proportional size is used based on the QR code size (about 10–20% depending on size).\n\n- `wifi?: object`\n The WiFi information of the QR code.\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; walletPass: { barcodeText?: string; logo?: string; name?: string; }; whatsapp: { number: string; message?: string; }; width: number; wifi: object; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; pageId?: string; pageUrl?: string; }`\n\n - `id: string`\n - `android: string`\n - `archived: boolean`\n - `bgColor: string`\n - `comments: string`\n - `contentStatic: string`\n - `createdAt: string`\n - `crypto: object`\n - `description: string`\n - `doIndex: boolean`\n - `domain: string`\n - `email: object`\n - `excavate: boolean`\n - `expiredUrl: string`\n - `expiresAt: string`\n - `externalId: string`\n - `facetime: object`\n - `fgColor: string`\n - `filled: boolean`\n - `flexible: boolean`\n - `folderId: string`\n - `geo: object`\n - `height: number`\n - `image: string`\n - `ios: string`\n - `isFormMandatory: boolean`\n - `key: string`\n - `lastClicked: string`\n - `latlog: object`\n - `leads: number`\n - `level: string`\n - `logo: string`\n - `password: string`\n - `phone: string`\n - `preRedirection: boolean`\n - `projectId: string`\n - `proxy: boolean`\n - `publicStats: boolean`\n - `rewrite: boolean`\n - `rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]`\n - `saleAmount: number`\n - `sales: number`\n - `scans: number`\n - `showLogo: boolean`\n - `size: number`\n - `sms: object`\n - `src: string`\n - `static: boolean`\n - `tagId: string`\n - `tags: { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n - `text: string`\n - `title: string`\n - `trackConversion: boolean`\n - `type: string`\n - `updatedAt: string`\n - `url: string`\n - `useDisplayPage: boolean`\n - `userId: string`\n - `utm_campaign: string`\n - `utm_content: string`\n - `utm_medium: string`\n - `utm_source: string`\n - `utm_term: string`\n - `vcard: object`\n - `walletPass: { barcodeText?: string; logo?: string; name?: string; }`\n - `whatsapp: { number: string; message?: string; }`\n - `width: number`\n - `wifi: object`\n - `frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }`\n - `pageId?: string`\n - `pageUrl?: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst qrCode = await client.qrcodes.update('qrcodeId');\n\nconsole.log(qrCode);\n```",
585
592
  perLanguage: {
586
593
  typescript: {
587
594
  method: 'client.qrcodes.update',
588
595
  example:
589
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst qrCode = await client.qrcodes.update('qrcodeId');\n\nconsole.log(qrCode.id);",
596
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst qrCode = await client.qrcodes.update('qrcodeId');\n\nconsole.log(qrCode.id);",
590
597
  },
591
598
  http: {
592
599
  example:
@@ -605,12 +612,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
605
612
  params: ['qrcodeId: string;'],
606
613
  response: '{ id: string; }',
607
614
  markdown:
608
- "## delete\n\n`client.qrcodes.delete(qrcodeId: string): { id: string; }`\n\n**delete** `/qrcodes/{qrcodeId}`\n\nDelete a QR Code for the authenticated workspace.\n\n### Parameters\n\n- `qrcodeId: string`\n The id of the QR Code to delete. You may use either `qrcodeId` (obtained via `/qrcodes/info` endpoint) or `externalId` prefixed with `ext_`.\n\n### Returns\n\n- `{ id: string; }`\n\n - `id: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst qrcode = await client.qrcodes.delete('qrcodeId');\n\nconsole.log(qrcode);\n```",
615
+ "## delete\n\n`client.qrcodes.delete(qrcodeId: string): { id: string; }`\n\n**delete** `/qrcodes/{qrcodeId}`\n\nDelete a QR Code for the authenticated workspace.\n\n### Parameters\n\n- `qrcodeId: string`\n The id of the QR Code to delete. You may use either `qrcodeId` (obtained via `/qrcodes/info` endpoint) or `externalId` prefixed with `ext_`.\n\n### Returns\n\n- `{ id: string; }`\n\n - `id: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst qrcode = await client.qrcodes.delete('qrcodeId');\n\nconsole.log(qrcode);\n```",
609
616
  perLanguage: {
610
617
  typescript: {
611
618
  method: 'client.qrcodes.delete',
612
619
  example:
613
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst qrcode = await client.qrcodes.delete('qrcodeId');\n\nconsole.log(qrcode.id);",
620
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst qrcode = await client.qrcodes.delete('qrcodeId');\n\nconsole.log(qrcode.id);",
614
621
  },
615
622
  http: {
616
623
  example:
@@ -627,16 +634,16 @@ const EMBEDDED_METHODS: MethodEntry[] = [
627
634
  stainlessPath: '(resource) qrcodes.bulk > (method) create',
628
635
  qualified: 'client.qrcodes.bulk.create',
629
636
  params: [
630
- "body?: { type: string; android?: string; archived?: boolean; bgColor?: string; comments?: string; contentStatic?: string; crypto?: object; description?: string; doIndex?: boolean; domain?: string; email?: object; excavate?: boolean; expiredUrl?: string; expiresAt?: string; externalId?: string; facetime?: object; fgColor?: string; filled?: boolean; flexible?: boolean; folderId?: string; frame?: string; frameColor?: string; frameText?: string; frameTextColor?: string; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; height?: number; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; latlog?: object; level?: string; logo?: string; pageId?: string; pageUrl?: string; password?: string; pattern?: string; phone?: string; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; shape?: string; showLogo?: boolean; size?: number; sms?: object; src?: string; static?: boolean; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; templateId?: string; text?: string; title?: string; trackConversion?: boolean; url?: string; useAsTemplate?: boolean; useDisplayPage?: boolean; vcard?: object; webhookIds?: string[]; whatsapp?: { number: string; message?: string; }; width?: number; wifi?: object; }[];",
637
+ "body?: { type: string; android?: string; archived?: boolean; bgColor?: string; comments?: string; crypto?: { address?: string; amount?: string; cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'; email?: string; message?: string; }; description?: string; doIndex?: boolean; domain?: string; email?: object; excavate?: boolean; expiredUrl?: string; expiresAt?: string; externalId?: string; facetime?: object; fgColor?: string; filled?: boolean; flexible?: boolean; folderId?: string; frame?: string; frameColor?: string; frameText?: string; frameTextColor?: string; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; height?: number; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; latlog?: object; level?: string; logo?: string; pageId?: string; pageUrl?: string; password?: string; pattern?: string; phone?: string; pix?: object; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; shape?: string; showLogo?: boolean; size?: number; sms?: object; src?: string; static?: boolean; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; templateId?: string; text?: string; title?: string; trackConversion?: boolean; url?: string; useAsTemplate?: boolean; useDisplayPage?: boolean; vcard?: object; walletPass?: { barcodeText?: string; logo?: string; name?: string; }; webhookIds?: string[]; whatsapp?: { number: string; message?: string; }; width?: number; wifi?: object; }[];",
631
638
  ],
632
639
  response: 'object | { code: string; error: string; qrcode?: object; }[]',
633
640
  markdown:
634
- "## create\n\n`client.qrcodes.bulk.create(body?: { type: string; android?: string; archived?: boolean; bgColor?: string; comments?: string; contentStatic?: string; crypto?: object; description?: string; doIndex?: boolean; domain?: string; email?: object; excavate?: boolean; expiredUrl?: string; expiresAt?: string; externalId?: string; facetime?: object; fgColor?: string; filled?: boolean; flexible?: boolean; folderId?: string; frame?: string; frameColor?: string; frameText?: string; frameTextColor?: string; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; height?: number; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; latlog?: object; level?: string; logo?: string; pageId?: string; pageUrl?: string; password?: string; pattern?: string; phone?: string; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; shape?: string; showLogo?: boolean; size?: number; sms?: object; src?: string; static?: boolean; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; templateId?: string; text?: string; title?: string; trackConversion?: boolean; url?: string; useAsTemplate?: boolean; useDisplayPage?: boolean; vcard?: object; webhookIds?: string[]; whatsapp?: { number: string; message?: string; }; width?: number; wifi?: object; }[]): object | { code: string; error: string; qrcode?: object; }[]`\n\n**post** `/qrcodes/bulk`\n\nBulk create up to 100 QR Codes for the authenticated workspace.\n\n### Parameters\n\n- `body?: { type: string; android?: string; archived?: boolean; bgColor?: string; comments?: string; contentStatic?: string; crypto?: object; description?: string; doIndex?: boolean; domain?: string; email?: object; excavate?: boolean; expiredUrl?: string; expiresAt?: string; externalId?: string; facetime?: object; fgColor?: string; filled?: boolean; flexible?: boolean; folderId?: string; frame?: string; frameColor?: string; frameText?: string; frameTextColor?: string; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; height?: number; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; latlog?: object; level?: string; logo?: string; pageId?: string; pageUrl?: string; password?: string; pattern?: string; phone?: string; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; shape?: string; showLogo?: boolean; size?: number; sms?: object; src?: string; static?: boolean; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; templateId?: string; text?: string; title?: string; trackConversion?: boolean; url?: string; useAsTemplate?: boolean; useDisplayPage?: boolean; vcard?: object; webhookIds?: string[]; whatsapp?: { number: string; message?: string; }; width?: number; wifi?: object; }[]`\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; notificationToken: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: object[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; whatsapp: { number: string; message?: string; }; width: number; wifi: object; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; pageId?: string; pageUrl?: string; } | { code: string; error: string; qrcode?: object; }[]`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst bulks = await client.qrcodes.bulk.create();\n\nconsole.log(bulks);\n```",
641
+ "## create\n\n`client.qrcodes.bulk.create(body?: { type: string; android?: string; archived?: boolean; bgColor?: string; comments?: string; crypto?: { address?: string; amount?: string; cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'; email?: string; message?: string; }; description?: string; doIndex?: boolean; domain?: string; email?: object; excavate?: boolean; expiredUrl?: string; expiresAt?: string; externalId?: string; facetime?: object; fgColor?: string; filled?: boolean; flexible?: boolean; folderId?: string; frame?: string; frameColor?: string; frameText?: string; frameTextColor?: string; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; height?: number; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; latlog?: object; level?: string; logo?: string; pageId?: string; pageUrl?: string; password?: string; pattern?: string; phone?: string; pix?: object; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: object[]; url?: string; value?: string; }[]; shape?: string; showLogo?: boolean; size?: number; sms?: object; src?: string; static?: boolean; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; templateId?: string; text?: string; title?: string; trackConversion?: boolean; url?: string; useAsTemplate?: boolean; useDisplayPage?: boolean; vcard?: object; walletPass?: { barcodeText?: string; logo?: string; name?: string; }; webhookIds?: string[]; whatsapp?: { number: string; message?: string; }; width?: number; wifi?: object; }[]): object | { code: string; error: string; qrcode?: object; }[]`\n\n**post** `/qrcodes/bulk`\n\nBulk create up to 100 QR Codes for the authenticated workspace.\n\n### Parameters\n\n- `body?: { type: string; android?: string; archived?: boolean; bgColor?: string; comments?: string; crypto?: { address?: string; amount?: string; cryptocurrency?: 'bitcoin' | 'bitcoincash' | 'ethereum' | 'litecoin' | 'dash' | 'dogecoin'; email?: string; message?: string; }; description?: string; doIndex?: boolean; domain?: string; email?: object; excavate?: boolean; expiredUrl?: string; expiresAt?: string; externalId?: string; facetime?: object; fgColor?: string; filled?: boolean; flexible?: boolean; folderId?: string; frame?: string; frameColor?: string; frameText?: string; frameTextColor?: string; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; geo?: { AD?: string; AE?: string; AF?: string; AG?: string; AI?: string; AL?: string; AM?: string; AO?: string; AQ?: string; AR?: string; AS?: string; AT?: string; AU?: string; AW?: string; AX?: string; AZ?: string; BA?: string; BB?: string; BD?: string; BE?: string; BF?: string; BG?: string; BH?: string; BI?: string; BJ?: string; BL?: string; BM?: string; BN?: string; BO?: string; BQ?: string; BR?: string; BS?: string; BT?: string; BV?: string; BW?: string; BY?: string; BZ?: string; CA?: string; CC?: string; CD?: string; CF?: string; CG?: string; CH?: string; CI?: string; CK?: string; CL?: string; CM?: string; CN?: string; CO?: string; CR?: string; CU?: string; CV?: string; CW?: string; CX?: string; CY?: string; CZ?: string; DE?: string; DJ?: string; DK?: string; DM?: string; DO?: string; DZ?: string; EC?: string; EE?: string; EG?: string; EH?: string; ER?: string; ES?: string; ET?: string; FI?: string; FJ?: string; FK?: string; FM?: string; FO?: string; FR?: string; GA?: string; GB?: string; GD?: string; GE?: string; GF?: string; GG?: string; GH?: string; GI?: string; GL?: string; GM?: string; GN?: string; GP?: string; GQ?: string; GR?: string; GS?: string; GT?: string; GU?: string; GW?: string; GY?: string; HK?: string; HM?: string; HN?: string; HR?: string; HT?: string; HU?: string; ID?: string; IE?: string; IL?: string; IM?: string; IN?: string; IO?: string; IQ?: string; IR?: string; IS?: string; IT?: string; JE?: string; JM?: string; JO?: string; JP?: string; KE?: string; KG?: string; KH?: string; KI?: string; KM?: string; KN?: string; KP?: string; KR?: string; KW?: string; KY?: string; KZ?: string; LA?: string; LB?: string; LC?: string; LI?: string; LK?: string; LR?: string; LS?: string; LT?: string; LU?: string; LV?: string; LY?: string; MA?: string; MC?: string; MD?: string; ME?: string; MF?: string; MG?: string; MH?: string; MK?: string; ML?: string; MM?: string; MN?: string; MO?: string; MP?: string; MQ?: string; MR?: string; MS?: string; MT?: string; MU?: string; MV?: string; MW?: string; MX?: string; MY?: string; MZ?: string; NA?: string; NC?: string; NE?: string; NF?: string; NG?: string; NI?: string; NL?: string; NO?: string; NP?: string; NR?: string; NU?: string; NZ?: string; OM?: string; PA?: string; PE?: string; PF?: string; PG?: string; PH?: string; PK?: string; PL?: string; PM?: string; PN?: string; PR?: string; PS?: string; PT?: string; PW?: string; PY?: string; QA?: string; RE?: string; RO?: string; RS?: string; RU?: string; RW?: string; SA?: string; SB?: string; SC?: string; SD?: string; SE?: string; SG?: string; SH?: string; SI?: string; SJ?: string; SK?: string; SL?: string; SM?: string; SN?: string; SO?: string; SR?: string; SS?: string; ST?: string; SV?: string; SX?: string; SY?: string; SZ?: string; TC?: string; TD?: string; TF?: string; TG?: string; TH?: string; TJ?: string; TK?: string; TL?: string; TM?: string; TN?: string; TO?: string; TR?: string; TT?: string; TV?: string; TW?: string; TZ?: string; UA?: string; UG?: string; UM?: string; US?: string; UY?: string; UZ?: string; VA?: string; VC?: string; VE?: string; VG?: string; VI?: string; VN?: string; VU?: string; WF?: string; WS?: string; XK?: string; YE?: string; YT?: string; ZA?: string; ZM?: string; ZW?: string; }; height?: number; image?: string; ios?: string; isFormMandatory?: boolean; key?: string; latlog?: object; level?: string; logo?: string; pageId?: string; pageUrl?: string; password?: string; pattern?: string; phone?: string; pix?: object; prefix?: string; preRedirection?: boolean; proxy?: boolean; publicStats?: boolean; rewrite?: boolean; rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: { url: string; weight: number; }[]; url?: string; value?: string; }[]; shape?: string; showLogo?: boolean; size?: number; sms?: object; src?: string; static?: boolean; tagId?: string; tagIds?: string | string[]; tagNames?: string | string[]; templateId?: string; text?: string; title?: string; trackConversion?: boolean; url?: string; useAsTemplate?: boolean; useDisplayPage?: boolean; vcard?: object; walletPass?: { barcodeText?: string; logo?: string; name?: string; }; webhookIds?: string[]; whatsapp?: { number: string; message?: string; }; width?: number; wifi?: object; }[]`\n\n### Returns\n\n- `{ id: string; android: string; archived: boolean; bgColor: string; comments: string; contentStatic: string; createdAt: string; crypto: object; description: string; doIndex: boolean; domain: string; email: object; excavate: boolean; expiredUrl: string; expiresAt: string; externalId: string; facetime: object; fgColor: string; filled: boolean; flexible: boolean; folderId: string; geo: object; height: number; image: string; ios: string; isFormMandatory: boolean; key: string; lastClicked: string; latlog: object; leads: number; level: string; logo: string; password: string; phone: string; preRedirection: boolean; projectId: string; proxy: boolean; publicStats: boolean; rewrite: boolean; rules: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: object[]; url?: string; value?: string; }[]; saleAmount: number; sales: number; scans: number; showLogo: boolean; size: number; sms: object; src: string; static: boolean; tagId: string; tags: object[]; text: string; title: string; trackConversion: boolean; type: string; updatedAt: string; url: string; useDisplayPage: boolean; userId: string; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; vcard: object; walletPass: { barcodeText?: string; logo?: string; name?: string; }; whatsapp: { number: string; message?: string; }; width: number; wifi: object; frameTextStyles?: { family?: 'sans' | 'sans-condensed' | 'serif' | 'serif-elegant' | 'mono'; size?: 's' | 'm' | 'l' | 'xl'; style?: 'normal' | 'italic'; weight?: 'normal' | 'bold'; }; pageId?: string; pageUrl?: string; } | { code: string; error: string; qrcode?: object; }[]`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst bulks = await client.qrcodes.bulk.create();\n\nconsole.log(bulks);\n```",
635
642
  perLanguage: {
636
643
  typescript: {
637
644
  method: 'client.qrcodes.bulk.create',
638
645
  example:
639
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst bulks = await client.qrcodes.bulk.create();\n\nconsole.log(bulks);",
646
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst bulks = await client.qrcodes.bulk.create();\n\nconsole.log(bulks);",
640
647
  },
641
648
  http: {
642
649
  example:
@@ -686,14 +693,14 @@ const EMBEDDED_METHODS: MethodEntry[] = [
686
693
  'utm_term?: string;',
687
694
  ],
688
695
  response:
689
- 'object | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[]',
696
+ 'object | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[] | object[]',
690
697
  markdown:
691
- "## retrieve\n\n`client.analytics.retrieve(browser?: string, city?: string, continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA', country?: string, device?: string, domain?: string, end?: string, event?: 'clicks' | 'leads' | 'sales' | 'scans' | 'views' | 'composite', excludeRoot?: boolean, externalId?: string, groupBy?: string, interval?: '1h' | '24h' | '7d' | '30d' | '90d' | 'ytd' | '1y' | 'all' | 'all_unfiltered', key?: string, linkId?: string, os?: string, pageId?: string, qrcodeId?: string, referer?: string, root?: boolean, start?: string, tagId?: string, timezone?: string, type?: string, types?: string, url?: string, utm_campaign?: string, utm_content?: string, utm_medium?: string, utm_source?: string, utm_term?: string): { clicks: number; leads: number; saleAmount: number; sales: number; scans: number; views: number; } | { clicks: number; leads: number; saleAmount: number; sales: number; scans: number; start: string; views: number; }[] | { clicks: number; leads: number; saleAmount: number; sales: number; continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA'; }[] | { city: '*'; clicks: number; country: string; leads: number; saleAmount: number; sales: number; }[] | { city: '*'; clicks: number; country: string; leads: number; region: string; saleAmount: number; sales: number; }[] | { city: string; clicks: number; country: string; leads: number; saleAmount: number; sales: number; }[] | { clicks: number; device: string; leads: number; saleAmount: number; sales: number; }[] | { browser: string; clicks: number; leads: number; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; os: string; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; referer: string; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; refererUrl: string; saleAmount: number; sales: number; }[] | { id: string; clicks: number; createdAt: string; domain: string; key: string; leads: number; link: string; shortLink: string; url: string; }[] | { clicks: number; leads: number; saleAmount: number; sales: number; url: string; }[]`\n\n**get** `/analytics`\n\nRetrieve analytics for a link, a domain, or the authenticated workspace. The response type depends on the `event` and `type` query parameters.\n\n### Parameters\n\n- `browser?: string`\n The browser to retrieve analytics for.\n\n- `city?: string`\n The city to retrieve analytics for.\n\n- `continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA'`\n The continent to retrieve analytics for.\n\n- `country?: string`\n The country to retrieve analytics for.\n\n- `device?: string`\n The device to retrieve analytics for.\n\n- `domain?: string`\n The domain of the short link.\n\n- `end?: string`\n The end date and time when to retrieve analytics from. If not provided, defaults to the current date.\n\n- `event?: 'clicks' | 'leads' | 'sales' | 'scans' | 'views' | 'composite'`\n The type of event to retrieve analytics for. Defaults to 'analytics'.\n\n- `excludeRoot?: boolean`\n Whether to exclude the root link from the response.\n\n- `externalId?: string`\n This is the ID of the link in the your database. Must be prefixed with 'ext_' when passed as a query parameter.\n\n- `groupBy?: string`\n The parameter to group the analytics data points by. Defaults to 'count' if undefined.\n\n- `interval?: '1h' | '24h' | '7d' | '30d' | '90d' | 'ytd' | '1y' | 'all' | 'all_unfiltered'`\n The interval to retrieve analytics for. Takes precedence over start and end.\n\n- `key?: string`\n The short link slug.\n\n- `linkId?: string`\n The unique ID of the short link on CodeQR.\n\n- `os?: string`\n The OS to retrieve analytics for.\n\n- `pageId?: string`\n The unique ID of the page on CodeQR.\n\n- `qrcodeId?: string`\n The unique ID of the QR code on CodeQR.\n\n- `referer?: string`\n The referer to retrieve analytics for.\n\n- `root?: boolean`\n Filter for root domains. If true, filter for domains only. If false, filter for links only. If undefined, return both.\n\n- `start?: string`\n The start date and time when to retrieve analytics from.\n\n- `tagId?: string`\n The tag ID to retrieve analytics for.\n\n- `timezone?: string`\n The IANA time zone code for aligning timeseries granularity (e.g. America/New_York). Defaults to UTC.\n\n- `type?: string`\n The type of analytics to retrieve.\n\n- `types?: string`\n The types of analytics to retrieve.\n\n- `url?: string`\n The URL to retrieve analytics for.\n\n- `utm_campaign?: string`\n UTM campaign to filter analytics by.\n\n- `utm_content?: string`\n UTM content to filter analytics by.\n\n- `utm_medium?: string`\n UTM medium to filter analytics by.\n\n- `utm_source?: string`\n UTM source to filter analytics by.\n\n- `utm_term?: string`\n UTM term to filter analytics by.\n\n### Returns\n\n- `{ clicks: number; leads: number; saleAmount: number; sales: number; scans: number; views: number; } | { clicks: number; leads: number; saleAmount: number; sales: number; scans: number; start: string; views: number; }[] | { clicks: number; leads: number; saleAmount: number; sales: number; continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA'; }[] | { city: '*'; clicks: number; country: string; leads: number; saleAmount: number; sales: number; }[] | { city: '*'; clicks: number; country: string; leads: number; region: string; saleAmount: number; sales: number; }[] | { city: string; clicks: number; country: string; leads: number; saleAmount: number; sales: number; }[] | { clicks: number; device: string; leads: number; saleAmount: number; sales: number; }[] | { browser: string; clicks: number; leads: number; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; os: string; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; referer: string; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; refererUrl: string; saleAmount: number; sales: number; }[] | { id: string; clicks: number; createdAt: string; domain: string; key: string; leads: number; link: string; shortLink: string; url: string; }[] | { clicks: number; leads: number; saleAmount: number; sales: number; url: string; }[]`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst analytics = await client.analytics.retrieve();\n\nconsole.log(analytics);\n```",
698
+ "## retrieve\n\n`client.analytics.retrieve(browser?: string, city?: string, continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA', country?: string, device?: string, domain?: string, end?: string, event?: 'clicks' | 'leads' | 'sales' | 'scans' | 'views' | 'composite', excludeRoot?: boolean, externalId?: string, groupBy?: string, interval?: '1h' | '24h' | '7d' | '30d' | '90d' | 'ytd' | '1y' | 'all' | 'all_unfiltered', key?: string, linkId?: string, os?: string, pageId?: string, qrcodeId?: string, referer?: string, root?: boolean, start?: string, tagId?: string, timezone?: string, type?: string, types?: string, url?: string, utm_campaign?: string, utm_content?: string, utm_medium?: string, utm_source?: string, utm_term?: string): { clicks: number; leads: number; saleAmount: number; sales: number; scans: number; views: number; } | { clicks: number; leads: number; saleAmount: number; sales: number; scans: number; start: string; views: number; }[] | { clicks: number; leads: number; saleAmount: number; sales: number; continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA'; }[] | { city: '*'; clicks: number; country: string; leads: number; saleAmount: number; sales: number; }[] | { city: '*'; clicks: number; country: string; leads: number; region: string; saleAmount: number; sales: number; }[] | { city: string; clicks: number; country: string; leads: number; saleAmount: number; sales: number; }[] | { clicks: number; device: string; leads: number; saleAmount: number; sales: number; }[] | { browser: string; clicks: number; leads: number; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; os: string; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; referer: string; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; refererUrl: string; saleAmount: number; sales: number; }[] | { id: string; clicks: number; createdAt: string; domain: string; key: string; leads: number; link: string; shortLink: string; url: string; }[] | { clicks: number; leads: number; saleAmount: number; sales: number; url: string; }[] | { clicks: number; leads: number; saleAmount: number; sales: number; trigger: 'link' | 'qr' | 'nfc'; }[]`\n\n**get** `/analytics`\n\nRetrieve analytics for a link, a domain, or the authenticated workspace. The response type depends on the `event` and `type` query parameters.\n\n### Parameters\n\n- `browser?: string`\n The browser to retrieve analytics for.\n\n- `city?: string`\n The city to retrieve analytics for.\n\n- `continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA'`\n The continent to retrieve analytics for.\n\n- `country?: string`\n The country to retrieve analytics for.\n\n- `device?: string`\n The device to retrieve analytics for.\n\n- `domain?: string`\n The domain of the short link.\n\n- `end?: string`\n The end date and time when to retrieve analytics from. If not provided, defaults to the current date.\n\n- `event?: 'clicks' | 'leads' | 'sales' | 'scans' | 'views' | 'composite'`\n The type of event to retrieve analytics for. Defaults to 'analytics'.\n\n- `excludeRoot?: boolean`\n Whether to exclude the root link from the response.\n\n- `externalId?: string`\n This is the ID of the link in the your database. Must be prefixed with 'ext_' when passed as a query parameter.\n\n- `groupBy?: string`\n The parameter to group the analytics data points by. Defaults to 'count' if undefined. Some values depend on the workspace plan and answer 403 `forbidden` on a plan without them: `referers` and `referer_urls` need the Starter, Pro, Business, Scale, or Enterprise plan; `devices`, `browsers`, and `os` need the Starter, Pro, Business, Scale, or Enterprise plan; `utm_sources`, `utm_mediums`, `utm_campaigns`, `utm_contents`, and `utm_terms` need the Pro, Business, Scale, or Enterprise plan.\n\n- `interval?: '1h' | '24h' | '7d' | '30d' | '90d' | 'ytd' | '1y' | 'all' | 'all_unfiltered'`\n The interval to retrieve analytics for. Takes precedence over start and end.\n\n- `key?: string`\n The short link slug.\n\n- `linkId?: string`\n The unique ID of the short link on CodeQR.\n\n- `os?: string`\n The OS to retrieve analytics for.\n\n- `pageId?: string`\n The unique ID of the page on CodeQR.\n\n- `qrcodeId?: string`\n The unique ID of the QR code on CodeQR.\n\n- `referer?: string`\n The referer to retrieve analytics for.\n\n- `root?: boolean`\n Filter for root domains. If true, filter for domains only. If false, filter for links only. If undefined, return both.\n\n- `start?: string`\n The start date and time when to retrieve analytics from.\n\n- `tagId?: string`\n The tag ID to retrieve analytics for.\n\n- `timezone?: string`\n The IANA time zone code for aligning timeseries granularity (e.g. America/New_York). Defaults to UTC.\n\n- `type?: string`\n The type of analytics to retrieve.\n\n- `types?: string`\n The types of analytics to retrieve.\n\n- `url?: string`\n The destination URL to retrieve analytics for. Match it without the query params CodeQR copies off the click (UTM and ad click IDs such as fbclid or gclid): those differ per visitor, so a URL carrying them matches at most one click.\n\n- `utm_campaign?: string`\n UTM campaign to filter analytics by.\n\n- `utm_content?: string`\n UTM content to filter analytics by.\n\n- `utm_medium?: string`\n UTM medium to filter analytics by.\n\n- `utm_source?: string`\n UTM source to filter analytics by.\n\n- `utm_term?: string`\n UTM term to filter analytics by.\n\n### Returns\n\n- `{ clicks: number; leads: number; saleAmount: number; sales: number; scans: number; views: number; } | { clicks: number; leads: number; saleAmount: number; sales: number; scans: number; start: string; views: number; }[] | { clicks: number; leads: number; saleAmount: number; sales: number; continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA'; }[] | { city: '*'; clicks: number; country: string; leads: number; saleAmount: number; sales: number; }[] | { city: '*'; clicks: number; country: string; leads: number; region: string; saleAmount: number; sales: number; }[] | { city: string; clicks: number; country: string; leads: number; saleAmount: number; sales: number; }[] | { clicks: number; device: string; leads: number; saleAmount: number; sales: number; }[] | { browser: string; clicks: number; leads: number; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; os: string; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; referer: string; saleAmount: number; sales: number; }[] | { clicks: number; leads: number; refererUrl: string; saleAmount: number; sales: number; }[] | { id: string; clicks: number; createdAt: string; domain: string; key: string; leads: number; link: string; shortLink: string; url: string; }[] | { clicks: number; leads: number; saleAmount: number; sales: number; url: string; }[] | { clicks: number; leads: number; saleAmount: number; sales: number; trigger: 'link' | 'qr' | 'nfc'; }[]`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst analytics = await client.analytics.retrieve();\n\nconsole.log(analytics);\n```",
692
699
  perLanguage: {
693
700
  typescript: {
694
701
  method: 'client.analytics.retrieve',
695
702
  example:
696
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst analytics = await client.analytics.retrieve();\n\nconsole.log(analytics);",
703
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst analytics = await client.analytics.retrieve();\n\nconsole.log(analytics);",
697
704
  },
698
705
  http: {
699
706
  example: 'curl https://api.codeqr.io/analytics \\\n -H "Authorization: Bearer $CODEQR_API_KEY"',
@@ -744,14 +751,14 @@ const EMBEDDED_METHODS: MethodEntry[] = [
744
751
  'utm_term?: string;',
745
752
  ],
746
753
  response:
747
- "{ browser: string; city: string; click: object; click_id: string; continent: string; country: string; device: string; domain: string; event: 'click'; ip: string; key: string; link: object; link_id: string; os: string; type: string; url: string; timestamp?: string; } | { browser: string; city: string; click: object; click_id: string; continent: string; country: string; customer: object; device: string; domain: string; event: 'lead'; eventId: string; eventName: string; ip: string; key: string; link_id: string; os: string; type: string; url: string; link?: object; timestamp?: string; } | { browser: string; city: string; click: object; click_id: string; continent: string; country: string; customer: object; device: string; domain: string; event: 'sale'; eventId: string; eventName: string; invoice_id: string; ip: string; key: string; link: object; link_id: string; metadata: string; os: string; payment_processor: string; sale: object; saleAmount: number; type: string; url: string; timestamp?: string; }[]",
754
+ "{ browser: string; city: string; click: object; click_id: string; continent: string; country: string; device: string; domain: string; event: 'click'; ip: string; key: string; link: object; link_id: string; os: string; type: string; url: string; timestamp?: string; } | { browser: string; city: string; click: object; click_id: string; continent: string; country: string; customer: object; device: string; domain: string; event: 'lead'; eventId: string; eventName: string; ip: string; key: string; link_id: string; os: string; type: string; url: string; link?: object; timestamp?: string; } | { browser: string; city: string; click: object; click_id: string; continent: string; country: string; customer: object; device: string; domain: string; event: 'sale'; eventId: string; eventName: string; invoice_id: string; ip: string; key: string; link: object; link_id: string; metadata: string; os: string; payment_processor: string; sale: object; saleAmount: number; timestamp: string; type: string; url: string; }[]",
748
755
  markdown:
749
- "## list\n\n`client.events.list(browser?: string, city?: string, continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA', country?: string, device?: string, domain?: string, end?: string, event?: 'clicks' | 'leads' | 'sales' | 'scans' | 'views', excludeRoot?: boolean, externalId?: string, interval?: '24h' | '7d' | '30d' | '90d' | 'ytd' | '1y' | 'all', key?: string, limit?: number, linkId?: string, order?: 'asc' | 'desc', os?: string, page?: number, pageId?: string, qrcodeId?: string, referer?: string, root?: boolean, sortBy?: 'timestamp', start?: string, tagId?: string, timezone?: string, type?: string, types?: string, url?: string, utm_campaign?: string, utm_content?: string, utm_medium?: string, utm_source?: string, utm_term?: string): { browser: string; city: string; click: object; click_id: string; continent: string; country: string; device: string; domain: string; event: 'click'; ip: string; key: string; link: object; link_id: string; os: string; type: string; url: string; timestamp?: string; } | { browser: string; city: string; click: object; click_id: string; continent: string; country: string; customer: object; device: string; domain: string; event: 'lead'; eventId: string; eventName: string; ip: string; key: string; link_id: string; os: string; type: string; url: string; link?: object; timestamp?: string; } | { browser: string; city: string; click: object; click_id: string; continent: string; country: string; customer: object; device: string; domain: string; event: 'sale'; eventId: string; eventName: string; invoice_id: string; ip: string; key: string; link: object; link_id: string; metadata: string; os: string; payment_processor: string; sale: object; saleAmount: number; type: string; url: string; timestamp?: string; }[]`\n\n**get** `/events`\n\nRetrieve a paginated list of events for the authenticated workspace.\n\n### Parameters\n\n- `browser?: string`\n The browser to retrieve analytics for.\n\n- `city?: string`\n The city to retrieve analytics for.\n\n- `continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA'`\n The continent to retrieve analytics for.\n\n- `country?: string`\n The country to retrieve analytics for.\n\n- `device?: string`\n The device to retrieve analytics for.\n\n- `domain?: string`\n The domain of the short link.\n\n- `end?: string`\n The end date and time when to retrieve analytics from. If not provided, defaults to the current date.\n\n- `event?: 'clicks' | 'leads' | 'sales' | 'scans' | 'views'`\n The type of event to retrieve analytics for. Defaults to 'clicks'.\n\n- `excludeRoot?: boolean`\n Whether to exclude the root link from the response.\n\n- `externalId?: string`\n This is the ID of the link in the your database. Must be prefixed with 'ext_' when passed as a query parameter.\n\n- `interval?: '24h' | '7d' | '30d' | '90d' | 'ytd' | '1y' | 'all'`\n The interval to retrieve events for. Takes precedence over start and end. If undefined, defaults to 24h.\n\n- `key?: string`\n The short link slug.\n\n- `limit?: number`\n\n- `linkId?: string`\n The unique ID of the short link on CodeQR.\n\n- `order?: 'asc' | 'desc'`\n\n- `os?: string`\n The OS to retrieve analytics for.\n\n- `page?: number`\n\n- `pageId?: string`\n The unique ID of the page on CodeQR.\n\n- `qrcodeId?: string`\n The unique ID of the QR code on CodeQR.\n\n- `referer?: string`\n The referer to retrieve analytics for.\n\n- `root?: boolean`\n Filter for root domains. If true, filter for domains only. If false, filter for links only. If undefined, return both.\n\n- `sortBy?: 'timestamp'`\n\n- `start?: string`\n The start date and time when to retrieve analytics from.\n\n- `tagId?: string`\n The tag ID to retrieve analytics for.\n\n- `timezone?: string`\n The IANA time zone code for aligning timeseries granularity (e.g. America/New_York). Defaults to UTC.\n\n- `type?: string`\n The type of analytics to retrieve.\n\n- `types?: string`\n The types of analytics to retrieve.\n\n- `url?: string`\n The URL to retrieve analytics for.\n\n- `utm_campaign?: string`\n UTM campaign to filter analytics by.\n\n- `utm_content?: string`\n UTM content to filter analytics by.\n\n- `utm_medium?: string`\n UTM medium to filter analytics by.\n\n- `utm_source?: string`\n UTM source to filter analytics by.\n\n- `utm_term?: string`\n UTM term to filter analytics by.\n\n### Returns\n\n- `{ browser: string; city: string; click: { id: string; browser: string; city: string; continent: string; country: string; device: string; ip: string; os: string; referer: string; refererUrl: string; type: string; url: string; }; click_id: string; continent: string; country: string; device: string; domain: string; event: 'click'; ip: string; key: string; link: { id: string; android: string; clicks: number; comments: string; createdAt: string; description: string; domain: string; expiredUrl: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; updatedAt: string; useAsTemplate: boolean; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; archived?: boolean; doIndex?: boolean; expiresAt?: string; externalId?: string; lastClicked?: string; pageId?: string; pageUrl?: string; proxy?: boolean; publicStats?: boolean; qrCode?: string; rewrite?: boolean; rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; shortLink?: string; trackConversion?: boolean; url?: string; userId?: string; }; link_id: string; os: string; type: string; url: string; timestamp?: string; } | { browser: string; city: string; click: { id: string; browser: string; city: string; continent: string; country: string; device: string; ip: string; os: string; referer: string; refererUrl: string; type: string; url: string; }; click_id: string; continent: string; country: string; customer: { id: string; avatar: string; email: string; name: string; }; device: string; domain: string; event: 'lead'; eventId: string; eventName: string; ip: string; key: string; link_id: string; os: string; type: string; url: string; link?: object; timestamp?: string; } | { browser: string; city: string; click: { id: string; browser: string; city: string; continent: string; country: string; device: string; ip: string; os: string; referer: string; refererUrl: string; type: string; url: string; }; click_id: string; continent: string; country: string; customer: { id: string; createdAt: string; externalId: string; name: string; avatar?: string; country?: string; customFields?: object; email?: string; link?: { id: string; domain: string; key: string; shortLink?: string; }; }; device: string; domain: string; event: 'sale'; eventId: string; eventName: string; invoice_id: string; ip: string; key: string; link: { id: string; android: string; clicks: number; comments: string; createdAt: string; description: string; domain: string; expiredUrl: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; updatedAt: string; useAsTemplate: boolean; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; archived?: boolean; doIndex?: boolean; expiresAt?: string; externalId?: string; lastClicked?: string; pageId?: string; pageUrl?: string; proxy?: boolean; publicStats?: boolean; qrCode?: string; rewrite?: boolean; rules?: { attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language'; operator: 'equals' | 'not_equals'; url: string; value: string; }[]; shortLink?: string; trackConversion?: boolean; url?: string; userId?: string; }; link_id: string; metadata: string; os: string; payment_processor: string; sale: { amount: number; invoiceId: string; paymentProcessor: 'stripe' | 'shopify' | 'polar' | 'paddle' | 'revenuecat' | 'custom' | 'manual'; }; saleAmount: number; type: string; url: string; timestamp?: string; }[]`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst events = await client.events.list();\n\nconsole.log(events);\n```",
756
+ "## list\n\n`client.events.list(browser?: string, city?: string, continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA', country?: string, device?: string, domain?: string, end?: string, event?: 'clicks' | 'leads' | 'sales' | 'scans' | 'views', excludeRoot?: boolean, externalId?: string, interval?: '24h' | '7d' | '30d' | '90d' | 'ytd' | '1y' | 'all', key?: string, limit?: number, linkId?: string, order?: 'asc' | 'desc', os?: string, page?: number, pageId?: string, qrcodeId?: string, referer?: string, root?: boolean, sortBy?: 'timestamp', start?: string, tagId?: string, timezone?: string, type?: string, types?: string, url?: string, utm_campaign?: string, utm_content?: string, utm_medium?: string, utm_source?: string, utm_term?: string): { browser: string; city: string; click: object; click_id: string; continent: string; country: string; device: string; domain: string; event: 'click'; ip: string; key: string; link: object; link_id: string; os: string; type: string; url: string; timestamp?: string; } | { browser: string; city: string; click: object; click_id: string; continent: string; country: string; customer: object; device: string; domain: string; event: 'lead'; eventId: string; eventName: string; ip: string; key: string; link_id: string; os: string; type: string; url: string; link?: object; timestamp?: string; } | { browser: string; city: string; click: object; click_id: string; continent: string; country: string; customer: object; device: string; domain: string; event: 'sale'; eventId: string; eventName: string; invoice_id: string; ip: string; key: string; link: object; link_id: string; metadata: string; os: string; payment_processor: string; sale: object; saleAmount: number; timestamp: string; type: string; url: string; }[]`\n\n**get** `/events`\n\nRetrieve a paginated list of events for the authenticated workspace.\n\n### Parameters\n\n- `browser?: string`\n The browser to retrieve analytics for.\n\n- `city?: string`\n The city to retrieve analytics for.\n\n- `continent?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA'`\n The continent to retrieve analytics for.\n\n- `country?: string`\n The country to retrieve analytics for.\n\n- `device?: string`\n The device to retrieve analytics for.\n\n- `domain?: string`\n The domain of the short link.\n\n- `end?: string`\n The end date and time when to retrieve analytics from. If not provided, defaults to the current date.\n\n- `event?: 'clicks' | 'leads' | 'sales' | 'scans' | 'views'`\n The type of event to retrieve analytics for. Defaults to 'clicks'.\n\n- `excludeRoot?: boolean`\n Whether to exclude the root link from the response.\n\n- `externalId?: string`\n This is the ID of the link in the your database. Must be prefixed with 'ext_' when passed as a query parameter.\n\n- `interval?: '24h' | '7d' | '30d' | '90d' | 'ytd' | '1y' | 'all'`\n The interval to retrieve events for. Takes precedence over start and end. If undefined, defaults to 24h.\n\n- `key?: string`\n The short link slug.\n\n- `limit?: number`\n\n- `linkId?: string`\n The unique ID of the short link on CodeQR.\n\n- `order?: 'asc' | 'desc'`\n\n- `os?: string`\n The OS to retrieve analytics for.\n\n- `page?: number`\n\n- `pageId?: string`\n The unique ID of the page on CodeQR.\n\n- `qrcodeId?: string`\n The unique ID of the QR code on CodeQR.\n\n- `referer?: string`\n The referer to retrieve analytics for.\n\n- `root?: boolean`\n Filter for root domains. If true, filter for domains only. If false, filter for links only. If undefined, return both.\n\n- `sortBy?: 'timestamp'`\n\n- `start?: string`\n The start date and time when to retrieve analytics from.\n\n- `tagId?: string`\n The tag ID to retrieve analytics for.\n\n- `timezone?: string`\n The IANA time zone code for aligning timeseries granularity (e.g. America/New_York). Defaults to UTC.\n\n- `type?: string`\n The type of analytics to retrieve.\n\n- `types?: string`\n The types of analytics to retrieve.\n\n- `url?: string`\n The destination URL to retrieve analytics for. Match it without the query params CodeQR copies off the click (UTM and ad click IDs such as fbclid or gclid): those differ per visitor, so a URL carrying them matches at most one click.\n\n- `utm_campaign?: string`\n UTM campaign to filter analytics by.\n\n- `utm_content?: string`\n UTM content to filter analytics by.\n\n- `utm_medium?: string`\n UTM medium to filter analytics by.\n\n- `utm_source?: string`\n UTM source to filter analytics by.\n\n- `utm_term?: string`\n UTM term to filter analytics by.\n\n### Returns\n\n- `{ browser: string; city: string; click: { id: string; browser: string; city: string; continent: string; country: string; device: string; ip: string; os: string; referer: string; refererUrl: string; type: string; url: string; }; click_id: string; continent: string; country: string; device: string; domain: string; event: 'click'; ip: string; key: string; link: { id: string; android: string; clicks: number; comments: string; createdAt: string; description: string; domain: string; expiredUrl: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; updatedAt: string; useAsTemplate: boolean; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; archived?: boolean; doIndex?: boolean; expiresAt?: string; externalId?: string; lastClicked?: string; pageId?: string; pageUrl?: string; proxy?: boolean; publicStats?: boolean; qrCode?: string; rewrite?: boolean; rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: object[]; url?: string; value?: string; }[]; shortLink?: string; trackConversion?: boolean; url?: string; userId?: string; }; link_id: string; os: string; type: string; url: string; timestamp?: string; } | { browser: string; city: string; click: { id: string; browser: string; city: string; continent: string; country: string; device: string; ip: string; os: string; referer: string; refererUrl: string; type: string; url: string; }; click_id: string; continent: string; country: string; customer: { id: string; avatar: string; email: string; name: string; }; device: string; domain: string; event: 'lead'; eventId: string; eventName: string; ip: string; key: string; link_id: string; os: string; type: string; url: string; link?: object; timestamp?: string; } | { browser: string; city: string; click: { id: string; browser: string; city: string; continent: string; country: string; device: string; ip: string; os: string; referer: string; refererUrl: string; type: string; url: string; }; click_id: string; continent: string; country: string; customer: { id: string; avatar: string; email: string; name: string; }; device: string; domain: string; event: 'sale'; eventId: string; eventName: string; invoice_id: string; ip: string; key: string; link: { id: string; android: string; clicks: number; comments: string; createdAt: string; description: string; domain: string; expiredUrl: string; filled: boolean; flexible: boolean; folderId: string; geo: object; image: string; ios: string; isFormMandatory: boolean; key: string; leads: number; notificationToken: string; password: string; preRedirection: boolean; projectId: string; saleAmount: number; sales: number; tagId: string; tags: object[]; title: string; updatedAt: string; useAsTemplate: boolean; utm_campaign: string; utm_content: string; utm_medium: string; utm_source: string; utm_term: string; video: string; archived?: boolean; doIndex?: boolean; expiresAt?: string; externalId?: string; lastClicked?: string; pageId?: string; pageUrl?: string; proxy?: boolean; publicStats?: boolean; qrCode?: string; rewrite?: boolean; rules?: { attribute?: string; operator?: 'equals' | 'not_equals'; split?: object[]; url?: string; value?: string; }[]; shortLink?: string; trackConversion?: boolean; url?: string; userId?: string; }; link_id: string; metadata: string; os: string; payment_processor: string; sale: { amount: number; invoiceId: string; paymentProcessor: string; }; saleAmount: number; timestamp: string; type: string; url: string; }[]`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst events = await client.events.list();\n\nconsole.log(events);\n```",
750
757
  perLanguage: {
751
758
  typescript: {
752
759
  method: 'client.events.list',
753
760
  example:
754
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst events = await client.events.list();\n\nconsole.log(events);",
761
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst events = await client.events.list();\n\nconsole.log(events);",
755
762
  },
756
763
  http: {
757
764
  example: 'curl https://api.codeqr.io/events \\\n -H "Authorization: Bearer $CODEQR_API_KEY"',
@@ -774,12 +781,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
774
781
  response:
775
782
  "{ id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }",
776
783
  markdown:
777
- "## create\n\n`client.tags.create(color?: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown', name?: string, tag?: string): { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }`\n\n**post** `/tags`\n\nCreate a new tag for the authenticated project.\n\n### Parameters\n\n- `color?: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'`\n The color of the tag. If not provided, a random color will be used from the list: red, yellow, green, blue, purple, pink, brown.\n\n- `name?: string`\n The name of the tag to create.\n\n- `tag?: string`\n The name of the tag to create.\n\n### Returns\n\n- `{ id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }`\n\n - `id: string`\n - `color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'`\n - `name: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst tag = await client.tags.create();\n\nconsole.log(tag);\n```",
784
+ "## create\n\n`client.tags.create(color?: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown', name?: string, tag?: string): { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }`\n\n**post** `/tags`\n\nCreate a new tag for the authenticated project.\n\n### Parameters\n\n- `color?: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'`\n The color of the tag. If not provided, a random color will be used from the list: red, yellow, green, blue, purple, pink, brown.\n\n- `name?: string`\n The name of the tag to create.\n\n- `tag?: string`\n The name of the tag to create.\n\n### Returns\n\n- `{ id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }`\n\n - `id: string`\n - `color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'`\n - `name: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst tag = await client.tags.create();\n\nconsole.log(tag);\n```",
778
785
  perLanguage: {
779
786
  typescript: {
780
787
  method: 'client.tags.create',
781
788
  example:
782
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst tag = await client.tags.create();\n\nconsole.log(tag.id);",
789
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst tag = await client.tags.create();\n\nconsole.log(tag.id);",
783
790
  },
784
791
  http: {
785
792
  example:
@@ -806,12 +813,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
806
813
  response:
807
814
  "{ id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]",
808
815
  markdown:
809
- "## list\n\n`client.tags.list(ids?: string | string[], page?: number, pageSize?: number, search?: string, sortBy?: 'name' | 'createdAt', sortOrder?: 'asc' | 'desc'): object[]`\n\n**get** `/tags`\n\nRetrieve a list of tags for the authenticated workspace.\n\n### Parameters\n\n- `ids?: string | string[]`\n IDs of tags to filter by.\n\n- `page?: number`\n The page number for pagination.\n\n- `pageSize?: number`\n The number of items per page.\n\n- `search?: string`\n The search term to filter the tags by.\n\n- `sortBy?: 'name' | 'createdAt'`\n The field to sort the tags by.\n\n- `sortOrder?: 'asc' | 'desc'`\n The order to sort the tags by.\n\n### Returns\n\n- `{ id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst tags = await client.tags.list();\n\nconsole.log(tags);\n```",
816
+ "## list\n\n`client.tags.list(ids?: string | string[], page?: number, pageSize?: number, search?: string, sortBy?: 'name' | 'createdAt', sortOrder?: 'asc' | 'desc'): object[]`\n\n**get** `/tags`\n\nRetrieve a list of tags for the authenticated workspace.\n\n### Parameters\n\n- `ids?: string | string[]`\n IDs of tags to filter by.\n\n- `page?: number`\n The page number for pagination.\n\n- `pageSize?: number`\n The number of items per page.\n\n- `search?: string`\n The search term to filter the tags by.\n\n- `sortBy?: 'name' | 'createdAt'`\n The field to sort the tags by.\n\n- `sortOrder?: 'asc' | 'desc'`\n The order to sort the tags by.\n\n### Returns\n\n- `{ id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }[]`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst tags = await client.tags.list();\n\nconsole.log(tags);\n```",
810
817
  perLanguage: {
811
818
  typescript: {
812
819
  method: 'client.tags.list',
813
820
  example:
814
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst tags = await client.tags.list();\n\nconsole.log(tags);",
821
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst tags = await client.tags.list();\n\nconsole.log(tags);",
815
822
  },
816
823
  http: {
817
824
  example: 'curl https://api.codeqr.io/tags \\\n -H "Authorization: Bearer $CODEQR_API_KEY"',
@@ -834,12 +841,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
834
841
  response:
835
842
  "{ id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }",
836
843
  markdown:
837
- "## update\n\n`client.tags.update(id: string, name: string, color?: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'): { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }`\n\n**put** `/tags/{id}`\n\nUpdate a tag in the workspace.\n\n### Parameters\n\n- `id: string`\n The ID of the tag to update.\n\n- `name: string`\n\n- `color?: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'`\n The color of the tag\n\n### Returns\n\n- `{ id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }`\n\n - `id: string`\n - `color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'`\n - `name: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst tag = await client.tags.update('id', { name: 'x' });\n\nconsole.log(tag);\n```",
844
+ "## update\n\n`client.tags.update(id: string, name: string, color?: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'): { id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }`\n\n**put** `/tags/{id}`\n\nUpdate a tag in the workspace.\n\n### Parameters\n\n- `id: string`\n The ID of the tag to update.\n\n- `name: string`\n\n- `color?: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'`\n The color of the tag\n\n### Returns\n\n- `{ id: string; color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'; name: string; }`\n\n - `id: string`\n - `color: 'red' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'brown'`\n - `name: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst tag = await client.tags.update('id', { name: 'x' });\n\nconsole.log(tag);\n```",
838
845
  perLanguage: {
839
846
  typescript: {
840
847
  method: 'client.tags.update',
841
848
  example:
842
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst tag = await client.tags.update('id', { name: 'x' });\n\nconsole.log(tag.id);",
849
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst tag = await client.tags.update('id', { name: 'x' });\n\nconsole.log(tag.id);",
843
850
  },
844
851
  http: {
845
852
  example:
@@ -859,12 +866,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
859
866
  params: ['id: string;'],
860
867
  response: '{ id: string; }',
861
868
  markdown:
862
- "## delete\n\n`client.tags.delete(id: string): { id: string; }`\n\n**delete** `/tags/{id}`\n\nDelete a tag from the workspace. All existing links will still work, but they will no longer be associated with this tag.\n\n### Parameters\n\n- `id: string`\n The ID of the tag to delete.\n\n### Returns\n\n- `{ id: string; }`\n\n - `id: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst tag = await client.tags.delete('id');\n\nconsole.log(tag);\n```",
869
+ "## delete\n\n`client.tags.delete(id: string): { id: string; }`\n\n**delete** `/tags/{id}`\n\nDelete a tag from the workspace. All existing links will still work, but they will no longer be associated with this tag.\n\n### Parameters\n\n- `id: string`\n The ID of the tag to delete.\n\n### Returns\n\n- `{ id: string; }`\n\n - `id: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst tag = await client.tags.delete('id');\n\nconsole.log(tag);\n```",
863
870
  perLanguage: {
864
871
  typescript: {
865
872
  method: 'client.tags.delete',
866
873
  example:
867
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst tag = await client.tags.delete('id');\n\nconsole.log(tag.id);",
874
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst tag = await client.tags.delete('id');\n\nconsole.log(tag.id);",
868
875
  },
869
876
  http: {
870
877
  example:
@@ -891,16 +898,16 @@ const EMBEDDED_METHODS: MethodEntry[] = [
891
898
  response:
892
899
  "{ id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }",
893
900
  markdown:
894
- "## create\n\n`client.domains.create(slug: string, archived?: boolean, expiredUrl?: string, placeholder?: string, target?: string, type?: 'redirect' | 'rewrite'): { id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }`\n\n**post** `/domains`\n\nCreate a domain for the authenticated workspace.\n\n### Parameters\n\n- `slug: string`\n Name of the domain.\n\n- `archived?: boolean`\n Whether to archive this domain. `false` will unarchive a previously archived domain.\n\n- `expiredUrl?: string`\n Redirect users to a specific URL when any link under this domain has expired.\n\n- `placeholder?: string`\n Provide context to your teammates in the link creation modal by showing them an example of a link to be shortened.\n\n- `target?: string`\n The target URL to redirect to when accessing the domain root.\n\n- `type?: 'redirect' | 'rewrite'`\n The behavior type for the domain root redirect.\n\n### Returns\n\n- `{ id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }`\n\n - `id: string`\n - `archived: boolean`\n - `createdAt: string`\n - `expiredUrl: string`\n - `placeholder: string`\n - `primary: boolean`\n - `slug: string`\n - `target: string`\n - `type: 'redirect' | 'rewrite'`\n - `updatedAt: string`\n - `verified: boolean`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst domain = await client.domains.create({ slug: 'acme.com' });\n\nconsole.log(domain);\n```",
901
+ "## create\n\n`client.domains.create(slug: string, archived?: boolean, expiredUrl?: string, placeholder?: string, target?: string, type?: 'redirect' | 'rewrite'): { id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }`\n\n**post** `/domains`\n\nCreate a domain for the authenticated workspace.\n\n### Parameters\n\n- `slug: string`\n Name of the domain.\n\n- `archived?: boolean`\n Whether to archive this domain. `false` will unarchive a previously archived domain.\n\n- `expiredUrl?: string`\n Redirect users to a specific URL when any link under this domain has expired.\n\n- `placeholder?: string`\n Provide context to your teammates in the link creation modal by showing them an example of a link to be shortened.\n\n- `target?: string`\n The target URL to redirect to when accessing the domain root.\n\n- `type?: 'redirect' | 'rewrite'`\n The behavior type for the domain root redirect.\n\n### Returns\n\n- `{ id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }`\n\n - `id: string`\n - `archived: boolean`\n - `createdAt: string`\n - `expiredUrl: string`\n - `placeholder: string`\n - `primary: boolean`\n - `slug: string`\n - `target: string`\n - `type: 'redirect' | 'rewrite'`\n - `updatedAt: string`\n - `verified: boolean`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst domain = await client.domains.create({ slug: 'acme.com' });\n\nconsole.log(domain);\n```",
895
902
  perLanguage: {
896
903
  typescript: {
897
904
  method: 'client.domains.create',
898
905
  example:
899
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst domain = await client.domains.create({ slug: 'acme.com' });\n\nconsole.log(domain.id);",
906
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst domain = await client.domains.create({ slug: 'acme.com' });\n\nconsole.log(domain.id);",
900
907
  },
901
908
  http: {
902
909
  example:
903
- 'curl https://api.codeqr.io/domains \\\n -H \'Content-Type: application/json\' \\\n -H "Authorization: Bearer $CODEQR_API_KEY" \\\n -d \'{\n "slug": "acme.com",\n "archived": false,\n "expiredUrl": "https://acme.com/expired",\n "placeholder": "https://codeqr.io/help/article/what-is-codeqr",\n "target": "https://acme.com"\n }\'',
910
+ 'curl https://api.codeqr.io/domains \\\n -H \'Content-Type: application/json\' \\\n -H "Authorization: Bearer $CODEQR_API_KEY" \\\n -d \'{\n "slug": "acme.com",\n "archived": false,\n "expiredUrl": "https://acme.com/expired",\n "placeholder": "https://codeqr.io",\n "target": "https://acme.com"\n }\'',
904
911
  },
905
912
  },
906
913
  },
@@ -916,12 +923,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
916
923
  response:
917
924
  "{ id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }[]",
918
925
  markdown:
919
- "## list\n\n`client.domains.list(archived?: boolean, page?: number, pageSize?: number, search?: string): object[]`\n\n**get** `/domains`\n\nRetrieve a list of domains associated with the authenticated workspace.\n\n### Parameters\n\n- `archived?: boolean`\n Whether to include archived domains in the response. Defaults to `false` if not provided.\n\n- `page?: number`\n The page number for pagination.\n\n- `pageSize?: number`\n The number of items per page.\n\n- `search?: string`\n The search term to filter the domains by.\n\n### Returns\n\n- `{ id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }[]`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst domains = await client.domains.list();\n\nconsole.log(domains);\n```",
926
+ "## list\n\n`client.domains.list(archived?: boolean, page?: number, pageSize?: number, search?: string): object[]`\n\n**get** `/domains`\n\nRetrieve a list of domains associated with the authenticated workspace.\n\n### Parameters\n\n- `archived?: boolean`\n Whether to include archived domains in the response. Defaults to `false` if not provided.\n\n- `page?: number`\n The page number for pagination.\n\n- `pageSize?: number`\n The number of items per page.\n\n- `search?: string`\n The search term to filter the domains by.\n\n### Returns\n\n- `{ id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }[]`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst domains = await client.domains.list();\n\nconsole.log(domains);\n```",
920
927
  perLanguage: {
921
928
  typescript: {
922
929
  method: 'client.domains.list',
923
930
  example:
924
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst domains = await client.domains.list();\n\nconsole.log(domains);",
931
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst domains = await client.domains.list();\n\nconsole.log(domains);",
925
932
  },
926
933
  http: {
927
934
  example: 'curl https://api.codeqr.io/domains \\\n -H "Authorization: Bearer $CODEQR_API_KEY"',
@@ -948,12 +955,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
948
955
  response:
949
956
  "{ id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }",
950
957
  markdown:
951
- "## update\n\n`client.domains.update(slug: string, archived?: boolean, expiredUrl?: string, placeholder?: string, slug?: string, target?: string, type?: 'redirect' | 'rewrite'): { id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }`\n\n**patch** `/domains/{slug}`\n\nUpdate a domain for the authenticated workspace.\n\n### Parameters\n\n- `slug: string`\n The domain name.\n\n- `archived?: boolean`\n Whether to archive this domain. `false` will unarchive a previously archived domain.\n\n- `expiredUrl?: string`\n Redirect users to a specific URL when any link under this domain has expired.\n\n- `placeholder?: string`\n Provide context to your teammates in the link creation modal by showing them an example of a link to be shortened.\n\n- `slug?: string`\n Name of the domain.\n\n- `target?: string`\n The target URL to redirect to when accessing the domain root.\n\n- `type?: 'redirect' | 'rewrite'`\n The behavior type for the domain root redirect.\n\n### Returns\n\n- `{ id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }`\n\n - `id: string`\n - `archived: boolean`\n - `createdAt: string`\n - `expiredUrl: string`\n - `placeholder: string`\n - `primary: boolean`\n - `slug: string`\n - `target: string`\n - `type: 'redirect' | 'rewrite'`\n - `updatedAt: string`\n - `verified: boolean`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst domain = await client.domains.update('acme.com');\n\nconsole.log(domain);\n```",
958
+ "## update\n\n`client.domains.update(slug: string, archived?: boolean, expiredUrl?: string, placeholder?: string, slug?: string, target?: string, type?: 'redirect' | 'rewrite'): { id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }`\n\n**patch** `/domains/{slug}`\n\nUpdate a domain for the authenticated workspace.\n\n### Parameters\n\n- `slug: string`\n The domain name.\n\n- `archived?: boolean`\n Whether to archive this domain. `false` will unarchive a previously archived domain.\n\n- `expiredUrl?: string`\n Redirect users to a specific URL when any link under this domain has expired.\n\n- `placeholder?: string`\n Provide context to your teammates in the link creation modal by showing them an example of a link to be shortened.\n\n- `slug?: string`\n Name of the domain.\n\n- `target?: string`\n The target URL to redirect to when accessing the domain root.\n\n- `type?: 'redirect' | 'rewrite'`\n The behavior type for the domain root redirect.\n\n### Returns\n\n- `{ id: string; archived: boolean; createdAt: string; expiredUrl: string; placeholder: string; primary: boolean; slug: string; target: string; type: 'redirect' | 'rewrite'; updatedAt: string; verified: boolean; }`\n\n - `id: string`\n - `archived: boolean`\n - `createdAt: string`\n - `expiredUrl: string`\n - `placeholder: string`\n - `primary: boolean`\n - `slug: string`\n - `target: string`\n - `type: 'redirect' | 'rewrite'`\n - `updatedAt: string`\n - `verified: boolean`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst domain = await client.domains.update('acme.com');\n\nconsole.log(domain);\n```",
952
959
  perLanguage: {
953
960
  typescript: {
954
961
  method: 'client.domains.update',
955
962
  example:
956
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst domain = await client.domains.update('acme.com');\n\nconsole.log(domain.id);",
963
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst domain = await client.domains.update('acme.com');\n\nconsole.log(domain.id);",
957
964
  },
958
965
  http: {
959
966
  example:
@@ -973,12 +980,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
973
980
  params: ['slug: string;'],
974
981
  response: '{ slug: string; }',
975
982
  markdown:
976
- "## delete\n\n`client.domains.delete(slug: string): { slug: string; }`\n\n**delete** `/domains/{slug}`\n\nDelete a domain from a workspace. It cannot be undone. This will also delete all the links associated with the domain.\n\n### Parameters\n\n- `slug: string`\n The domain name.\n\n### Returns\n\n- `{ slug: string; }`\n\n - `slug: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst domain = await client.domains.delete('acme.com');\n\nconsole.log(domain);\n```",
983
+ "## delete\n\n`client.domains.delete(slug: string): { slug: string; }`\n\n**delete** `/domains/{slug}`\n\nDelete a domain from a workspace. It cannot be undone. This will also delete all the links associated with the domain.\n\n### Parameters\n\n- `slug: string`\n The domain name.\n\n### Returns\n\n- `{ slug: string; }`\n\n - `slug: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst domain = await client.domains.delete('acme.com');\n\nconsole.log(domain);\n```",
977
984
  perLanguage: {
978
985
  typescript: {
979
986
  method: 'client.domains.delete',
980
987
  example:
981
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst domain = await client.domains.delete('acme.com');\n\nconsole.log(domain.slug);",
988
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst domain = await client.domains.delete('acme.com');\n\nconsole.log(domain.slug);",
982
989
  },
983
990
  http: {
984
991
  example:
@@ -1001,6 +1008,7 @@ const EMBEDDED_METHODS: MethodEntry[] = [
1001
1008
  'customerAvatar?: string;',
1002
1009
  'customerEmail?: string;',
1003
1010
  'customerName?: string;',
1011
+ 'eventId?: string;',
1004
1012
  'eventQuantity?: number;',
1005
1013
  'metadata?: object;',
1006
1014
  "mode?: 'async' | 'wait' | 'deferred';",
@@ -1008,12 +1016,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
1008
1016
  response:
1009
1017
  '{ click: { id: string; }; customer: { id: string; avatar?: string; email?: string; name?: string; }; }',
1010
1018
  markdown:
1011
- "## track_lead\n\n`client.track.trackLead(clickId: string, customerExternalId: string, eventName: string, customerAvatar?: string, customerEmail?: string, customerName?: string, eventQuantity?: number, metadata?: object, mode?: 'async' | 'wait' | 'deferred'): { click: object; customer: object; }`\n\n**post** `/track/lead`\n\nTrack a lead for a short link.\n\n### Parameters\n\n- `clickId: string`\n The unique ID of the click that the lead conversion event is attributed to. You can read this value from `cq_id` cookie. If an empty string is provided, CodeQR will try to find an existing customer with the provided `customerExternalId` and use the `clickId` from the customer if found.\n\n- `customerExternalId: string`\n The unique ID of the customer in your system. Will be used to identify and attribute all future events to this customer.\n\n- `eventName: string`\n 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`).\n\n- `customerAvatar?: string`\n The avatar URL of the customer.\n\n- `customerEmail?: string`\n The email address of the customer.\n\n- `customerName?: string`\n The name of the customer. If not passed, a random name will be generated (e.g. “Big Red Caribou”).\n\n- `eventQuantity?: number`\n 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.\n\n- `metadata?: object`\n Additional metadata to be stored with the lead event. Max 10,000 characters.\n\n- `mode?: 'async' | 'wait' | 'deferred'`\n 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 CodeQR; `deferred` will defer the lead event creation to a subsequent request.\n\n### Returns\n\n- `{ click: { id: string; }; customer: { id: string; avatar?: string; email?: string; name?: string; }; }`\n\n - `click: { id: string; }`\n - `customer: { id: string; avatar?: string; email?: string; name?: string; }`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst response = await client.track.trackLead({\n clickId: 'clickId',\n customerExternalId: 'x',\n eventName: 'Sign up',\n});\n\nconsole.log(response);\n```",
1019
+ "## track_lead\n\n`client.track.trackLead(clickId: string, customerExternalId: string, eventName: string, customerAvatar?: string, customerEmail?: string, customerName?: string, eventId?: string, eventQuantity?: number, metadata?: object, mode?: 'async' | 'wait' | 'deferred'): { click: object; customer: object; }`\n\n**post** `/track/lead`\n\nTrack a lead for a short link.\n\n### Parameters\n\n- `clickId: string`\n The unique ID of the click that the lead conversion event is attributed to. You can read this value from `cq_id` cookie. If an empty string is provided, CodeQR will try to find an existing customer with the provided `customerExternalId` and use the `clickId` from the customer if found.\n\n- `customerExternalId: string`\n The unique ID of the customer in your system. Will be used to identify and attribute all future events to this customer.\n\n- `eventName: string`\n 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`).\n\n- `customerAvatar?: string`\n The avatar URL of the customer.\n\n- `customerEmail?: string`\n The email address of the customer.\n\n- `customerName?: string`\n The name of the customer. If not passed, a random name will be generated (e.g. “Big Red Caribou”).\n\n- `eventId?: string`\n Deduplication key shared with your own browser pixel. When your site also fires a Meta or TikTok pixel for this conversion, pass the same event id here so the platform counts it once.\n\n- `eventQuantity?: number`\n 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.\n\n- `metadata?: object`\n Additional metadata to be stored with the lead event. Max 10,000 characters.\n\n- `mode?: 'async' | 'wait' | 'deferred'`\n 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 CodeQR; `deferred` will defer the lead event creation to a subsequent request.\n\n### Returns\n\n- `{ click: { id: string; }; customer: { id: string; avatar?: string; email?: string; name?: string; }; }`\n\n - `click: { id: string; }`\n - `customer: { id: string; avatar?: string; email?: string; name?: string; }`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst response = await client.track.trackLead({\n clickId: 'clickId',\n customerExternalId: 'x',\n eventName: 'Sign up',\n});\n\nconsole.log(response);\n```",
1012
1020
  perLanguage: {
1013
1021
  typescript: {
1014
1022
  method: 'client.track.trackLead',
1015
1023
  example:
1016
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst response = await client.track.trackLead({\n clickId: 'clickId',\n customerExternalId: 'x',\n eventName: 'Sign up',\n});\n\nconsole.log(response.click);",
1024
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst response = await client.track.trackLead({\n clickId: 'clickId',\n customerExternalId: 'x',\n eventName: 'Sign up',\n});\n\nconsole.log(response.click);",
1017
1025
  },
1018
1026
  http: {
1019
1027
  example:
@@ -1037,6 +1045,7 @@ const EMBEDDED_METHODS: MethodEntry[] = [
1037
1045
  'customerAvatar?: string;',
1038
1046
  'customerEmail?: string;',
1039
1047
  'customerName?: string;',
1048
+ 'eventId?: string;',
1040
1049
  'eventName?: string;',
1041
1050
  'invoiceId?: string;',
1042
1051
  'leadEventName?: string;',
@@ -1046,12 +1055,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
1046
1055
  response:
1047
1056
  '{ amount: number; currency: string; customerId: string; eventName: string; invoiceId: string; metadata: object; paymentProcessor: string; }',
1048
1057
  markdown:
1049
- "## track_sale\n\n`client.track.trackSale(amount: number, customerExternalId: string, clickId?: string, currency?: string, customerAvatar?: string, customerEmail?: string, customerName?: string, eventName?: string, invoiceId?: string, leadEventName?: string, metadata?: object, paymentProcessor?: 'stripe' | 'shopify' | 'polar' | 'paddle' | 'revenuecat' | 'custom' | 'manual'): { amount: number; currency: string; customerId: string; eventName: string; invoiceId: string; metadata: object; paymentProcessor: string; }`\n\n**post** `/track/sale`\n\nTrack a sale for a short link.\n\n### Parameters\n\n- `amount: number`\n The amount of the sale in the smallest unit of `currency` — cents for two-decimal currencies, the full integer for zero-decimal ones (e.g. `1437` JPY), thousandths for three-decimal ones (e.g. `1437` KWD fils).\n\n- `customerExternalId: string`\n The unique ID of the customer in your system. Will be used to identify and attribute all future events to this customer.\n\n- `clickId?: string`\n [For direct sale tracking]: The unique ID of the click that the sale conversion event is attributed to. You can read this value from `cq_id` cookie.\n\n- `currency?: string`\n The currency of the sale, as an ISO 4217 code. Reporting is always in USD: non-USD sales are converted at the exchange rate of the day the sale is recorded, and the original amount and currency are kept on the event. The rate is not re-applied later, so reported totals do not move with the exchange rate.\n\n- `customerAvatar?: string`\n [For direct sale tracking]: The avatar URL of the customer.\n\n- `customerEmail?: string`\n [For direct sale tracking]: The email address of the customer.\n\n- `customerName?: string`\n [For direct sale tracking]: The name of the customer. If not passed, a random name will be generated (e.g. “Big Red Caribou”).\n\n- `eventName?: string`\n The name of the sale event. Recommended format: `Invoice paid` or `Subscription created`.\n\n- `invoiceId?: string`\n 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.\n\n- `leadEventName?: string`\n 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 for a link-customer combination, which is the default behavior). For direct sale tracking, this field can also be used to specify the lead event name.\n\n- `metadata?: object`\n Additional metadata to be stored with the sale event. Max 10,000 characters when stringified.\n\n- `paymentProcessor?: 'stripe' | 'shopify' | 'polar' | 'paddle' | 'revenuecat' | 'custom' | 'manual'`\n The payment processor via which the sale was made.\n\n### Returns\n\n- `{ amount: number; currency: string; customerId: string; eventName: string; invoiceId: string; metadata: object; paymentProcessor: string; }`\n\n - `amount: number`\n - `currency: string`\n - `customerId: string`\n - `eventName: string`\n - `invoiceId: string`\n - `metadata: object`\n - `paymentProcessor: string`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst response = await client.track.trackSale({ amount: 0, customerExternalId: 'x' });\n\nconsole.log(response);\n```",
1058
+ "## track_sale\n\n`client.track.trackSale(amount: number, customerExternalId: string, clickId?: string, currency?: string, customerAvatar?: string, customerEmail?: string, customerName?: string, eventId?: string, eventName?: string, invoiceId?: string, leadEventName?: string, metadata?: object, paymentProcessor?: 'stripe' | 'shopify' | 'polar' | 'paddle' | 'revenuecat' | 'custom' | 'manual'): { amount: number; currency: string; customerId: string; eventName: string; invoiceId: string; metadata: object; paymentProcessor: string; }`\n\n**post** `/track/sale`\n\nTrack a sale for a short link.\n\n### Parameters\n\n- `amount: number`\n The amount of the sale in the smallest unit of `currency` — cents for two-decimal currencies, the full integer for zero-decimal ones (e.g. `1437` JPY), thousandths for three-decimal ones (e.g. `1437` KWD fils).\n\n- `customerExternalId: string`\n The unique ID of the customer in your system. Will be used to identify and attribute all future events to this customer.\n\n- `clickId?: string`\n [For direct sale tracking]: The unique ID of the click that the sale conversion event is attributed to. You can read this value from `cq_id` cookie.\n\n- `currency?: string`\n The currency of the sale, as an ISO 4217 code. Reporting is always in USD: non-USD sales are converted at the exchange rate of the day the sale is recorded, and the original amount and currency are kept on the event. The rate is not re-applied later, so reported totals do not move with the exchange rate.\n\n- `customerAvatar?: string`\n [For direct sale tracking]: The avatar URL of the customer.\n\n- `customerEmail?: string`\n [For direct sale tracking]: The email address of the customer.\n\n- `customerName?: string`\n [For direct sale tracking]: The name of the customer. If not passed, a random name will be generated (e.g. “Big Red Caribou”).\n\n- `eventId?: string`\n Deduplication key shared with your own browser pixel. When your site also fires a Meta or TikTok pixel for this conversion, pass the same event id here so the platform counts it once.\n\n- `eventName?: string`\n The name of the sale event. Recommended format: `Invoice paid` or `Subscription created`.\n\n- `invoiceId?: string`\n 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.\n\n- `leadEventName?: string`\n 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 for a link-customer combination, which is the default behavior). For direct sale tracking, this field can also be used to specify the lead event name.\n\n- `metadata?: object`\n Additional metadata to be stored with the sale event. Max 10,000 characters when stringified.\n\n- `paymentProcessor?: 'stripe' | 'shopify' | 'polar' | 'paddle' | 'revenuecat' | 'custom' | 'manual'`\n The payment processor via which the sale was made.\n\n### Returns\n\n- `{ amount: number; currency: string; customerId: string; eventName: string; invoiceId: string; metadata: object; paymentProcessor: string; }`\n\n - `amount: number`\n - `currency: string`\n - `customerId: string`\n - `eventName: string`\n - `invoiceId: string`\n - `metadata: object`\n - `paymentProcessor: string`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst response = await client.track.trackSale({ amount: 0, customerExternalId: 'x' });\n\nconsole.log(response);\n```",
1050
1059
  perLanguage: {
1051
1060
  typescript: {
1052
1061
  method: 'client.track.trackSale',
1053
1062
  example:
1054
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst response = await client.track.trackSale({ amount: 0, customerExternalId: 'x' });\n\nconsole.log(response.amount);",
1063
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst response = await client.track.trackSale({ amount: 0, customerExternalId: 'x' });\n\nconsole.log(response.amount);",
1055
1064
  },
1056
1065
  http: {
1057
1066
  example:
@@ -1070,12 +1079,12 @@ const EMBEDDED_METHODS: MethodEntry[] = [
1070
1079
  response:
1071
1080
  "{ id: string; billingCycleStart: number; createdAt: string; domains: { slug: string; }[]; domainsLimit: number; linksLimit: number; linksUsage: number; logo: string; metadata: { defaultDomains: string[]; }; name: string; plan: 'free' | 'starter' | 'pro' | 'business' | 'scale' | 'enterprise'; slug: string; stripeConnectId: string; stripeId: string; tagsLimit: number; usage: number; usageLimit: number; users: { role: 'owner' | 'member'; }[]; usersLimit: number; }[]",
1072
1081
  markdown:
1073
- "## list\n\n`client.projects.list(): object[]`\n\n**get** `/projects`\n\nRetrieve a list of projects for the authenticated user.\n\n### Returns\n\n- `{ id: string; billingCycleStart: number; createdAt: string; domains: { slug: string; }[]; domainsLimit: number; linksLimit: number; linksUsage: number; logo: string; metadata: { defaultDomains: string[]; }; name: string; plan: 'free' | 'starter' | 'pro' | 'business' | 'scale' | 'enterprise'; slug: string; stripeConnectId: string; stripeId: string; tagsLimit: number; usage: number; usageLimit: number; users: { role: 'owner' | 'member'; }[]; usersLimit: number; }[]`\n\n### Example\n\n```typescript\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr();\n\nconst projects = await client.projects.list();\n\nconsole.log(projects);\n```",
1082
+ "## list\n\n`client.projects.list(): object[]`\n\n**get** `/projects`\n\nRetrieve a list of projects for the authenticated user.\n\n### Returns\n\n- `{ id: string; billingCycleStart: number; createdAt: string; domains: { slug: string; }[]; domainsLimit: number; linksLimit: number; linksUsage: number; logo: string; metadata: { defaultDomains: string[]; }; name: string; plan: 'free' | 'starter' | 'pro' | 'business' | 'scale' | 'enterprise'; slug: string; stripeConnectId: string; stripeId: string; tagsLimit: number; usage: number; usageLimit: number; users: { role: 'owner' | 'member'; }[]; usersLimit: number; }[]`\n\n### Example\n\n```typescript\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR();\n\nconst projects = await client.projects.list();\n\nconsole.log(projects);\n```",
1074
1083
  perLanguage: {
1075
1084
  typescript: {
1076
1085
  method: 'client.projects.list',
1077
1086
  example:
1078
- "import Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst projects = await client.projects.list();\n\nconsole.log(projects);",
1087
+ "import CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst projects = await client.projects.list();\n\nconsole.log(projects);",
1079
1088
  },
1080
1089
  http: {
1081
1090
  example: 'curl https://api.codeqr.io/projects \\\n -H "Authorization: Bearer $CODEQR_API_KEY"',
@@ -1088,7 +1097,7 @@ const EMBEDDED_READMES: { language: string; content: string }[] = [
1088
1097
  {
1089
1098
  language: 'typescript',
1090
1099
  content:
1091
- "# Codeqr TypeScript API Library\n\n[![NPM version](https://img.shields.io/npm/v/@codeqr/ts.svg?label=npm%20(stable))](https://npmjs.org/package/@codeqr/ts) ![npm bundle size](https://img.shields.io/bundlephobia/minzip/@codeqr/ts)\n\nThis library provides convenient access to the Codeqr REST API from server-side TypeScript or JavaScript.\n\n\n\nThe REST API documentation can be found on [codeqr.io](https://codeqr.io/api). The full API of this library can be found in [api.md](api.md).\n\nIt is generated with [Stainless](https://www.stainless.com/).\n\n## MCP Server\n\nUse the Codeqr MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application.\n\n[![Add to Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en-US/install-mcp?name=%40codeqr%2Fts-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBjb2RlcXIvdHMtbWNwIl0sImVudiI6eyJDT0RFUVJfQVBJX0tFWSI6Ik15IEFQSSBLZXkifX0)\n[![Install in VS Code](https://img.shields.io/badge/_-Add_to_VS_Code-blue?style=for-the-badge&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCA0MCA0MCI+PHBhdGggZmlsbD0iI0VFRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMzAuMjM1IDM5Ljg4NGEyLjQ5MSAyLjQ5MSAwIDAgMS0xLjc4MS0uNzNMMTIuNyAyNC43OGwtMy40NiAyLjYyNC0zLjQwNiAyLjU4MmExLjY2NSAxLjY2NSAwIDAgMS0xLjA4Mi4zMzggMS42NjQgMS42NjQgMCAwIDEtMS4wNDYtLjQzMWwtMi4yLTJhMS42NjYgMS42NjYgMCAwIDEgMC0yLjQ2M0w3LjQ1OCAyMCA0LjY3IDE3LjQ1MyAxLjUwNyAxNC41N2ExLjY2NSAxLjY2NSAwIDAgMSAwLTIuNDYzbDIuMi0yYTEuNjY1IDEuNjY1IDAgMCAxIDIuMTMtLjA5N2w2Ljg2MyA1LjIwOUwyOC40NTIuODQ0YTIuNDg4IDIuNDg4IDAgMCAxIDEuODQxLS43MjljLjM1MS4wMDkuNjk5LjA5MSAxLjAxOS4yNDVsOC4yMzYgMy45NjFhMi41IDIuNSAwIDAgMSAxLjQxNSAyLjI1M3YuMDk5LS4wNDVWMzMuMzd2LS4wNDUuMDk1YTIuNTAxIDIuNTAxIDAgMCAxLTEuNDE2IDIuMjU3bC04LjIzNSAzLjk2MWEyLjQ5MiAyLjQ5MiAwIDAgMS0xLjA3Ny4yNDZabS43MTYtMjguOTQ3LTExLjk0OCA5LjA2MiAxMS45NTIgOS4wNjUtLjAwNC0xOC4xMjdaIi8+PC9zdmc+)](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22%40codeqr%2Fts-mcp%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40codeqr%2Fts-mcp%22%5D%2C%22env%22%3A%7B%22CODEQR_API_KEY%22%3A%22My%20API%20Key%22%7D%7D)\n\n> Note: You may need to set environment variables in your MCP client.\n\n## Installation\n\n```sh\nnpm install @codeqr/ts\n```\n\n\n\n## Usage\n\nThe full API of this library can be found in [api.md](api.md).\n\n<!-- prettier-ignore -->\n```js\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst link = await client.links.create({ url: 'REPLACE_ME' });\n\nconsole.log(link.id);\n```\n\n\n\n### Request & Response types\n\nThis library includes TypeScript definitions for all request params and response fields. You may import and use them like so:\n\n<!-- prettier-ignore -->\n```ts\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst params: Codeqr.LinkCreateParams = { url: 'REPLACE_ME' };\nconst link: Codeqr.Link = await client.links.create(params);\n```\n\nDocumentation for each method, request param, and response field are available in docstrings and will appear on hover in most modern editors.\n\n\n\n\n\n## Handling errors\n\nWhen the library is unable to connect to the API,\nor if the API returns a non-success status code (i.e., 4xx or 5xx response),\na subclass of `APIError` will be thrown:\n\n<!-- prettier-ignore -->\n```ts\nconst link = await client.links.create({ url: 'REPLACE_ME' }).catch(async (err) => {\n if (err instanceof Codeqr.APIError) {\n console.log(err.status); // 400\n console.log(err.name); // BadRequestError\n console.log(err.headers); // {server: 'nginx', ...}\n } else {\n throw err;\n }\n});\n```\n\nError codes are as follows:\n\n| Status Code | Error Type |\n| ----------- | -------------------------- |\n| 400 | `BadRequestError` |\n| 401 | `AuthenticationError` |\n| 403 | `PermissionDeniedError` |\n| 404 | `NotFoundError` |\n| 422 | `UnprocessableEntityError` |\n| 429 | `RateLimitError` |\n| >=500 | `InternalServerError` |\n| N/A | `APIConnectionError` |\n\n### Retries\n\nCertain errors will be automatically retried 2 times by default, with a short exponential backoff.\nConnection errors (for example, due to a network connectivity problem), 408 Request Timeout, 409 Conflict,\n429 Rate Limit, and >=500 Internal errors will all be retried by default.\n\nYou can use the `maxRetries` option to configure or disable this:\n\n<!-- prettier-ignore -->\n```js\n// Configure the default for all requests:\nconst client = new Codeqr({\n maxRetries: 0, // default is 2\n});\n\n// Or, configure per-request:\nawait client.links.create({ url: 'REPLACE_ME' }, {\n maxRetries: 5,\n});\n```\n\n### Timeouts\n\nRequests time out after 1 minute by default. You can configure this with a `timeout` option:\n\n<!-- prettier-ignore -->\n```ts\n// Configure the default for all requests:\nconst client = new Codeqr({\n timeout: 20 * 1000, // 20 seconds (default is 1 minute)\n});\n\n// Override per-request:\nawait client.links.create({ url: 'REPLACE_ME' }, {\n timeout: 5 * 1000,\n});\n```\n\nOn timeout, an `APIConnectionTimeoutError` is thrown.\n\nNote that requests which time out will be [retried twice by default](#retries).\n\n\n\n\n\n## Advanced Usage\n\n### Accessing raw Response data (e.g., headers)\n\nThe \"raw\" `Response` returned by `fetch()` can be accessed through the `.asResponse()` method on the `APIPromise` type that all methods return.\nThis method returns as soon as the headers for a successful response are received and does not consume the response body, so you are free to write custom parsing or streaming logic.\n\nYou can also use the `.withResponse()` method to get the raw `Response` along with the parsed data.\nUnlike `.asResponse()` this method consumes the body, returning once it is parsed.\n\n<!-- prettier-ignore -->\n```ts\nconst client = new Codeqr();\n\nconst response = await client.links.create({ url: 'REPLACE_ME' }).asResponse();\nconsole.log(response.headers.get('X-My-Header'));\nconsole.log(response.statusText); // access the underlying Response object\n\nconst { data: link, response: raw } = await client.links\n .create({ url: 'REPLACE_ME' })\n .withResponse();\nconsole.log(raw.headers.get('X-My-Header'));\nconsole.log(link.id);\n```\n\n### Logging\n\n> [!IMPORTANT]\n> All log messages are intended for debugging only. The format and content of log messages\n> may change between releases.\n\n#### Log levels\n\nThe log level can be configured in two ways:\n\n1. Via the `CODEQR_LOG` environment variable\n2. Using the `logLevel` client option (overrides the environment variable if set)\n\n```ts\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n logLevel: 'debug', // Show all log messages\n});\n```\n\nAvailable log levels, from most to least verbose:\n\n- `'debug'` - Show debug messages, info, warnings, and errors\n- `'info'` - Show info messages, warnings, and errors\n- `'warn'` - Show warnings and errors (default)\n- `'error'` - Show only errors\n- `'off'` - Disable all logging\n\nAt the `'debug'` level, all HTTP requests and responses are logged, including headers and bodies.\nSome authentication-related headers are redacted, but sensitive data in request and response bodies\nmay still be visible.\n\n#### Custom logger\n\nBy default, this library logs to `globalThis.console`. You can also provide a custom logger.\nMost logging libraries are supported, including [pino](https://www.npmjs.com/package/pino), [winston](https://www.npmjs.com/package/winston), [bunyan](https://www.npmjs.com/package/bunyan), [consola](https://www.npmjs.com/package/consola), [signale](https://www.npmjs.com/package/signale), and [@std/log](https://jsr.io/@std/log). If your logger doesn't work, please open an issue.\n\nWhen providing a custom logger, the `logLevel` option still controls which messages are emitted, messages\nbelow the configured level will not be sent to your logger.\n\n```ts\nimport Codeqr from '@codeqr/ts';\nimport pino from 'pino';\n\nconst logger = pino();\n\nconst client = new Codeqr({\n logger: logger.child({ name: 'Codeqr' }),\n logLevel: 'debug', // Send all messages to pino, allowing it to filter\n});\n```\n\n### Making custom/undocumented requests\n\nThis library is typed for convenient access to the documented API. If you need to access undocumented\nendpoints, params, or response properties, the library can still be used.\n\n#### Undocumented endpoints\n\nTo make requests to undocumented endpoints, you can use `client.get`, `client.post`, and other HTTP verbs.\nOptions on the client, such as retries, will be respected when making these requests.\n\n```ts\nawait client.post('/some/path', {\n body: { some_prop: 'foo' },\n query: { some_query_arg: 'bar' },\n});\n```\n\n#### Undocumented request params\n\nTo make requests using undocumented parameters, you may use `// @ts-expect-error` on the undocumented\nparameter. This library doesn't validate at runtime that the request matches the type, so any extra values you\nsend will be sent as-is.\n\n```ts\nclient.links.create({\n // ...\n // @ts-expect-error baz is not yet public\n baz: 'undocumented option',\n});\n```\n\nFor requests with the `GET` verb, any extra params will be in the query, all other requests will send the\nextra param in the body.\n\nIf you want to explicitly send an extra argument, you can do so with the `query`, `body`, and `headers` request\noptions.\n\n#### Undocumented response properties\n\nTo access undocumented response properties, you may access the response object with `// @ts-expect-error` on\nthe response object, or cast the response object to the requisite type. Like the request params, we do not\nvalidate or strip extra properties from the response from the API.\n\n### Customizing the fetch client\n\nBy default, this library expects a global `fetch` function is defined.\n\nIf you want to use a different `fetch` function, you can either polyfill the global:\n\n```ts\nimport fetch from 'my-fetch';\n\nglobalThis.fetch = fetch;\n```\n\nOr pass it to the client:\n\n```ts\nimport Codeqr from '@codeqr/ts';\nimport fetch from 'my-fetch';\n\nconst client = new Codeqr({ fetch });\n```\n\n### Fetch options\n\nIf you want to set custom `fetch` options without overriding the `fetch` function, you can provide a `fetchOptions` object when instantiating the client or making a request. (Request-specific options override client options.)\n\n```ts\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n fetchOptions: {\n // `RequestInit` options\n },\n});\n```\n\n#### Configuring proxies\n\nTo modify proxy behavior, you can provide custom `fetchOptions` that add runtime-specific proxy\noptions to requests:\n\n<img src=\"https://raw.githubusercontent.com/stainless-api/sdk-assets/refs/heads/main/node.svg\" align=\"top\" width=\"18\" height=\"21\"> **Node** <sup>[[docs](https://github.com/nodejs/undici/blob/main/docs/docs/api/ProxyAgent.md#example---proxyagent-with-fetch)]</sup>\n\n```ts\nimport Codeqr from '@codeqr/ts';\nimport * as undici from 'undici';\n\nconst proxyAgent = new undici.ProxyAgent('http://localhost:8888');\nconst client = new Codeqr({\n fetchOptions: {\n dispatcher: proxyAgent,\n },\n});\n```\n\n<img src=\"https://raw.githubusercontent.com/stainless-api/sdk-assets/refs/heads/main/bun.svg\" align=\"top\" width=\"18\" height=\"21\"> **Bun** <sup>[[docs](https://bun.sh/guides/http/proxy)]</sup>\n\n```ts\nimport Codeqr from '@codeqr/ts';\n\nconst client = new Codeqr({\n fetchOptions: {\n proxy: 'http://localhost:8888',\n },\n});\n```\n\n<img src=\"https://raw.githubusercontent.com/stainless-api/sdk-assets/refs/heads/main/deno.svg\" align=\"top\" width=\"18\" height=\"21\"> **Deno** <sup>[[docs](https://docs.deno.com/api/deno/~/Deno.createHttpClient)]</sup>\n\n```ts\nimport Codeqr from 'npm:@codeqr/ts';\n\nconst httpClient = Deno.createHttpClient({ proxy: { url: 'http://localhost:8888' } });\nconst client = new Codeqr({\n fetchOptions: {\n client: httpClient,\n },\n});\n```\n\n## Frequently Asked Questions\n\n## Semantic versioning\n\nThis package generally follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions, though certain backwards-incompatible changes may be released as minor versions:\n\n1. Changes that only affect static types, without breaking runtime behavior.\n2. Changes to library internals which are technically public but not intended or documented for external use. _(Please open a GitHub issue to let us know if you are relying on such internals.)_\n3. Changes that we do not expect to impact the vast majority of users in practice.\n\nWe take backwards-compatibility seriously and work hard to ensure you can rely on a smooth upgrade experience.\n\nWe are keen for your feedback; please open an [issue](https://www.github.com/codeqr-io/codeqr-ts/issues) with questions, bugs, or suggestions.\n\n## Requirements\n\nTypeScript >= 4.9 is supported.\n\nThe following runtimes are supported:\n\n- Web browsers (Up-to-date Chrome, Firefox, Safari, Edge, and more)\n- Node.js 20 LTS or later ([non-EOL](https://endoflife.date/nodejs)) versions.\n- Deno v1.28.0 or higher.\n- Bun 1.0 or later.\n- Cloudflare Workers.\n- Vercel Edge Runtime.\n- Jest 28 or greater with the `\"node\"` environment (`\"jsdom\"` is not supported at this time).\n- Nitro v2.6 or greater.\n\nNote that React Native is not supported at this time.\n\nIf you are interested in other runtime environments, please open or upvote an issue on GitHub.\n\n## Contributing\n\nSee [the contributing documentation](./CONTRIBUTING.md).\n",
1100
+ "# CodeQR TypeScript API Library\n\n[![NPM version](https://img.shields.io/npm/v/@codeqr/ts.svg?label=npm%20(stable))](https://npmjs.org/package/@codeqr/ts) ![npm bundle size](https://img.shields.io/bundlephobia/minzip/@codeqr/ts)\n\nThis library provides convenient access to the CodeQR REST API from server-side TypeScript or JavaScript.\n\n\n\nThe REST API documentation can be found on [codeqr.io](https://codeqr.io/api). The full API of this library can be found in [api.md](api.md).\n\nIt is generated with [Stainless](https://www.stainless.com/).\n\n## MCP Server\n\nUse the CodeQR MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application.\n\n[![Add to Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en-US/install-mcp?name=%40codeqr%2Fts-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBjb2RlcXIvdHMtbWNwIl0sImVudiI6eyJDT0RFUVJfQVBJX0tFWSI6Ik15IEFQSSBLZXkifX0)\n[![Install in VS Code](https://img.shields.io/badge/_-Add_to_VS_Code-blue?style=for-the-badge&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCA0MCA0MCI+PHBhdGggZmlsbD0iI0VFRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMzAuMjM1IDM5Ljg4NGEyLjQ5MSAyLjQ5MSAwIDAgMS0xLjc4MS0uNzNMMTIuNyAyNC43OGwtMy40NiAyLjYyNC0zLjQwNiAyLjU4MmExLjY2NSAxLjY2NSAwIDAgMS0xLjA4Mi4zMzggMS42NjQgMS42NjQgMCAwIDEtMS4wNDYtLjQzMWwtMi4yLTJhMS42NjYgMS42NjYgMCAwIDEgMC0yLjQ2M0w3LjQ1OCAyMCA0LjY3IDE3LjQ1MyAxLjUwNyAxNC41N2ExLjY2NSAxLjY2NSAwIDAgMSAwLTIuNDYzbDIuMi0yYTEuNjY1IDEuNjY1IDAgMCAxIDIuMTMtLjA5N2w2Ljg2MyA1LjIwOUwyOC40NTIuODQ0YTIuNDg4IDIuNDg4IDAgMCAxIDEuODQxLS43MjljLjM1MS4wMDkuNjk5LjA5MSAxLjAxOS4yNDVsOC4yMzYgMy45NjFhMi41IDIuNSAwIDAgMSAxLjQxNSAyLjI1M3YuMDk5LS4wNDVWMzMuMzd2LS4wNDUuMDk1YTIuNTAxIDIuNTAxIDAgMCAxLTEuNDE2IDIuMjU3bC04LjIzNSAzLjk2MWEyLjQ5MiAyLjQ5MiAwIDAgMS0xLjA3Ny4yNDZabS43MTYtMjguOTQ3LTExLjk0OCA5LjA2MiAxMS45NTIgOS4wNjUtLjAwNC0xOC4xMjdaIi8+PC9zdmc+)](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22%40codeqr%2Fts-mcp%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40codeqr%2Fts-mcp%22%5D%2C%22env%22%3A%7B%22CODEQR_API_KEY%22%3A%22My%20API%20Key%22%7D%7D)\n\n> Note: You may need to set environment variables in your MCP client.\n\n## Installation\n\n```sh\nnpm install @codeqr/ts\n```\n\n\n\n## Usage\n\nThe full API of this library can be found in [api.md](api.md).\n\n<!-- prettier-ignore -->\n```js\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst link = await client.links.create({ url: 'REPLACE_ME' });\n\nconsole.log(link.id);\n```\n\n\n\n### Request & Response types\n\nThis library includes TypeScript definitions for all request params and response fields. You may import and use them like so:\n\n<!-- prettier-ignore -->\n```ts\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted\n});\n\nconst params: CodeQR.LinkCreateParams = { url: 'REPLACE_ME' };\nconst link: CodeQR.Link = await client.links.create(params);\n```\n\nDocumentation for each method, request param, and response field are available in docstrings and will appear on hover in most modern editors.\n\n\n\n\n\n## Handling errors\n\nWhen the library is unable to connect to the API,\nor if the API returns a non-success status code (i.e., 4xx or 5xx response),\na subclass of `APIError` will be thrown:\n\n<!-- prettier-ignore -->\n```ts\nconst link = await client.links.create({ url: 'REPLACE_ME' }).catch(async (err) => {\n if (err instanceof CodeQR.APIError) {\n console.log(err.status); // 400\n console.log(err.name); // BadRequestError\n console.log(err.headers); // {server: 'nginx', ...}\n } else {\n throw err;\n }\n});\n```\n\nError codes are as follows:\n\n| Status Code | Error Type |\n| ----------- | -------------------------- |\n| 400 | `BadRequestError` |\n| 401 | `AuthenticationError` |\n| 403 | `PermissionDeniedError` |\n| 404 | `NotFoundError` |\n| 422 | `UnprocessableEntityError` |\n| 429 | `RateLimitError` |\n| >=500 | `InternalServerError` |\n| N/A | `APIConnectionError` |\n\n### Retries\n\nCertain errors will be automatically retried 2 times by default, with a short exponential backoff.\nConnection errors (for example, due to a network connectivity problem), 408 Request Timeout, 409 Conflict,\n429 Rate Limit, and >=500 Internal errors will all be retried by default.\n\nYou can use the `maxRetries` option to configure or disable this:\n\n<!-- prettier-ignore -->\n```js\n// Configure the default for all requests:\nconst client = new CodeQR({\n maxRetries: 0, // default is 2\n});\n\n// Or, configure per-request:\nawait client.links.create({ url: 'REPLACE_ME' }, {\n maxRetries: 5,\n});\n```\n\n### Timeouts\n\nRequests time out after 1 minute by default. You can configure this with a `timeout` option:\n\n<!-- prettier-ignore -->\n```ts\n// Configure the default for all requests:\nconst client = new CodeQR({\n timeout: 20 * 1000, // 20 seconds (default is 1 minute)\n});\n\n// Override per-request:\nawait client.links.create({ url: 'REPLACE_ME' }, {\n timeout: 5 * 1000,\n});\n```\n\nOn timeout, an `APIConnectionTimeoutError` is thrown.\n\nNote that requests which time out will be [retried twice by default](#retries).\n\n\n\n\n\n## Advanced Usage\n\n### Accessing raw Response data (e.g., headers)\n\nThe \"raw\" `Response` returned by `fetch()` can be accessed through the `.asResponse()` method on the `APIPromise` type that all methods return.\nThis method returns as soon as the headers for a successful response are received and does not consume the response body, so you are free to write custom parsing or streaming logic.\n\nYou can also use the `.withResponse()` method to get the raw `Response` along with the parsed data.\nUnlike `.asResponse()` this method consumes the body, returning once it is parsed.\n\n<!-- prettier-ignore -->\n```ts\nconst client = new CodeQR();\n\nconst response = await client.links.create({ url: 'REPLACE_ME' }).asResponse();\nconsole.log(response.headers.get('X-My-Header'));\nconsole.log(response.statusText); // access the underlying Response object\n\nconst { data: link, response: raw } = await client.links\n .create({ url: 'REPLACE_ME' })\n .withResponse();\nconsole.log(raw.headers.get('X-My-Header'));\nconsole.log(link.id);\n```\n\n### Logging\n\n> [!IMPORTANT]\n> All log messages are intended for debugging only. The format and content of log messages\n> may change between releases.\n\n#### Log levels\n\nThe log level can be configured in two ways:\n\n1. Via the `CODEQR_LOG` environment variable\n2. Using the `logLevel` client option (overrides the environment variable if set)\n\n```ts\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n logLevel: 'debug', // Show all log messages\n});\n```\n\nAvailable log levels, from most to least verbose:\n\n- `'debug'` - Show debug messages, info, warnings, and errors\n- `'info'` - Show info messages, warnings, and errors\n- `'warn'` - Show warnings and errors (default)\n- `'error'` - Show only errors\n- `'off'` - Disable all logging\n\nAt the `'debug'` level, all HTTP requests and responses are logged, including headers and bodies.\nSome authentication-related headers are redacted, but sensitive data in request and response bodies\nmay still be visible.\n\n#### Custom logger\n\nBy default, this library logs to `globalThis.console`. You can also provide a custom logger.\nMost logging libraries are supported, including [pino](https://www.npmjs.com/package/pino), [winston](https://www.npmjs.com/package/winston), [bunyan](https://www.npmjs.com/package/bunyan), [consola](https://www.npmjs.com/package/consola), [signale](https://www.npmjs.com/package/signale), and [@std/log](https://jsr.io/@std/log). If your logger doesn't work, please open an issue.\n\nWhen providing a custom logger, the `logLevel` option still controls which messages are emitted, messages\nbelow the configured level will not be sent to your logger.\n\n```ts\nimport CodeQR from '@codeqr/ts';\nimport pino from 'pino';\n\nconst logger = pino();\n\nconst client = new CodeQR({\n logger: logger.child({ name: 'CodeQR' }),\n logLevel: 'debug', // Send all messages to pino, allowing it to filter\n});\n```\n\n### Making custom/undocumented requests\n\nThis library is typed for convenient access to the documented API. If you need to access undocumented\nendpoints, params, or response properties, the library can still be used.\n\n#### Undocumented endpoints\n\nTo make requests to undocumented endpoints, you can use `client.get`, `client.post`, and other HTTP verbs.\nOptions on the client, such as retries, will be respected when making these requests.\n\n```ts\nawait client.post('/some/path', {\n body: { some_prop: 'foo' },\n query: { some_query_arg: 'bar' },\n});\n```\n\n#### Undocumented request params\n\nTo make requests using undocumented parameters, you may use `// @ts-expect-error` on the undocumented\nparameter. This library doesn't validate at runtime that the request matches the type, so any extra values you\nsend will be sent as-is.\n\n```ts\nclient.links.create({\n // ...\n // @ts-expect-error baz is not yet public\n baz: 'undocumented option',\n});\n```\n\nFor requests with the `GET` verb, any extra params will be in the query, all other requests will send the\nextra param in the body.\n\nIf you want to explicitly send an extra argument, you can do so with the `query`, `body`, and `headers` request\noptions.\n\n#### Undocumented response properties\n\nTo access undocumented response properties, you may access the response object with `// @ts-expect-error` on\nthe response object, or cast the response object to the requisite type. Like the request params, we do not\nvalidate or strip extra properties from the response from the API.\n\n### Customizing the fetch client\n\nBy default, this library expects a global `fetch` function is defined.\n\nIf you want to use a different `fetch` function, you can either polyfill the global:\n\n```ts\nimport fetch from 'my-fetch';\n\nglobalThis.fetch = fetch;\n```\n\nOr pass it to the client:\n\n```ts\nimport CodeQR from '@codeqr/ts';\nimport fetch from 'my-fetch';\n\nconst client = new CodeQR({ fetch });\n```\n\n### Fetch options\n\nIf you want to set custom `fetch` options without overriding the `fetch` function, you can provide a `fetchOptions` object when instantiating the client or making a request. (Request-specific options override client options.)\n\n```ts\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n fetchOptions: {\n // `RequestInit` options\n },\n});\n```\n\n#### Configuring proxies\n\nTo modify proxy behavior, you can provide custom `fetchOptions` that add runtime-specific proxy\noptions to requests:\n\n<img src=\"https://raw.githubusercontent.com/stainless-api/sdk-assets/refs/heads/main/node.svg\" align=\"top\" width=\"18\" height=\"21\"> **Node** <sup>[[docs](https://github.com/nodejs/undici/blob/main/docs/docs/api/ProxyAgent.md#example---proxyagent-with-fetch)]</sup>\n\n```ts\nimport CodeQR from '@codeqr/ts';\nimport * as undici from 'undici';\n\nconst proxyAgent = new undici.ProxyAgent('http://localhost:8888');\nconst client = new CodeQR({\n fetchOptions: {\n dispatcher: proxyAgent,\n },\n});\n```\n\n<img src=\"https://raw.githubusercontent.com/stainless-api/sdk-assets/refs/heads/main/bun.svg\" align=\"top\" width=\"18\" height=\"21\"> **Bun** <sup>[[docs](https://bun.sh/guides/http/proxy)]</sup>\n\n```ts\nimport CodeQR from '@codeqr/ts';\n\nconst client = new CodeQR({\n fetchOptions: {\n proxy: 'http://localhost:8888',\n },\n});\n```\n\n<img src=\"https://raw.githubusercontent.com/stainless-api/sdk-assets/refs/heads/main/deno.svg\" align=\"top\" width=\"18\" height=\"21\"> **Deno** <sup>[[docs](https://docs.deno.com/api/deno/~/Deno.createHttpClient)]</sup>\n\n```ts\nimport CodeQR from 'npm:@codeqr/ts';\n\nconst httpClient = Deno.createHttpClient({ proxy: { url: 'http://localhost:8888' } });\nconst client = new CodeQR({\n fetchOptions: {\n client: httpClient,\n },\n});\n```\n\n## Frequently Asked Questions\n\n## Semantic versioning\n\nThis package generally follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions, though certain backwards-incompatible changes may be released as minor versions:\n\n1. Changes that only affect static types, without breaking runtime behavior.\n2. Changes to library internals which are technically public but not intended or documented for external use. _(Please open a GitHub issue to let us know if you are relying on such internals.)_\n3. Changes that we do not expect to impact the vast majority of users in practice.\n\nWe take backwards-compatibility seriously and work hard to ensure you can rely on a smooth upgrade experience.\n\nWe are keen for your feedback; please open an [issue](https://www.github.com/codeqr-io/codeqr-ts/issues) with questions, bugs, or suggestions.\n\n## Requirements\n\nTypeScript >= 4.9 is supported.\n\nThe following runtimes are supported:\n\n- Web browsers (Up-to-date Chrome, Firefox, Safari, Edge, and more)\n- Node.js 20 LTS or later ([non-EOL](https://endoflife.date/nodejs)) versions.\n- Deno v1.28.0 or higher.\n- Bun 1.0 or later.\n- Cloudflare Workers.\n- Vercel Edge Runtime.\n- Jest 28 or greater with the `\"node\"` environment (`\"jsdom\"` is not supported at this time).\n- Nitro v2.6 or greater.\n\nNote that React Native is not supported at this time.\n\nIf you are interested in other runtime environments, please open or upvote an issue on GitHub.\n\n## Contributing\n\nSee [the contributing documentation](./CONTRIBUTING.md).\n",
1092
1101
  },
1093
1102
  ];
1094
1103