diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 2be9c43..0ee8c01 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.2.0" + ".": "0.3.0" } diff --git a/.stats.yml b/.stats.yml index 4625270..085ef93 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 266 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/onlyfansapi/onlyfansapi-b9b67bf32f2b519e3230760d49e20c30e66107a6991f1a1f1a108f6c578c2fde.yml -openapi_spec_hash: da475361c28b843ddd1b45bbea333762 -config_hash: a522aab696c4535f715ae59ddfe8222f +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/onlyfansapi/onlyfansapi-74609107d9bbe47ca001712873c4449f6657c5539e4e83c398f672b7d4439749.yml +openapi_spec_hash: 0ced1a38864fe0442a4089920de41e5f +config_hash: 397c91e15c0024f8b5bbed9b82c2348c diff --git a/CHANGELOG.md b/CHANGELOG.md index fbadecd..c2e655c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,63 @@ # Changelog +## 0.3.0 (2026-06-14) + +Full Changelog: [v0.2.0...v0.3.0](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/compare/v0.2.0...v0.3.0) + +### Features + +* **api:** api update ([980ff36](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/980ff369e0ef08500ae478ded5a232da7f38b5ed)) +* **api:** api update ([b25bee6](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/b25bee6f69bce712a4937386383ccec055309f39)) +* **api:** api update ([5a77418](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/5a77418eb4f2058adb334944d241e7b91f3711c7)) +* **api:** api update ([4a111d4](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/4a111d4f097391fdc6dc920ba1606c0d8621708a)) +* **api:** api update ([a43dc12](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/a43dc1250b1a5933fa4af5a965447b93fc14e793)) +* **api:** api update ([f0b9fb8](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/f0b9fb8ad5624c01e220df4381cc37a1213a1692)) +* **api:** api update ([ca21354](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/ca2135486d6ca505afe5c49142f29adc7e227fa3)) +* **api:** api update ([01c6418](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/01c6418872a4dc0595e42f781d03386a82bff9be)) +* **api:** api update ([057180b](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/057180b905228cbb29c753be8ecac5683c600dd0)) +* **api:** api update ([a48a7e2](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/a48a7e23be200f80b19c72e4b2c82f974cec1117)) +* **api:** api update ([f9977f2](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/f9977f213c80713606e9cfc600e15c7383e4644f)) +* **api:** api update ([aee1709](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/aee1709a9d39bd78be1db9aaaf0e3a2497a45f83)) +* **api:** api update ([66e39a4](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/66e39a42bb0d0c4bb70d0450f0cbff98cc45fe5c)) +* **api:** api update ([9ca88c4](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/9ca88c44a83eb4ab893c19c433044176fcc479d1)) +* **api:** api update ([59cc52a](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/59cc52af2ecf36763f5d1f06c7bba9a55519141e)) +* **api:** api update ([bc7b763](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/bc7b763675ba43a49f8cab78a30255866c35e4b2)) +* **api:** api update ([710d78e](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/710d78e95405788e056f3a338a2d8fd772a26eee)) +* **api:** api update ([3bdb33f](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/3bdb33f46ecd9a661a99ffbe1eeb4ce7ddfb57cb)) +* **api:** api update ([0d0c1dc](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/0d0c1dcf0720c6f4ef56779a1c4e6f2fad1a33c3)) +* **api:** api update ([8d3c93c](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/8d3c93c186cb7a11fd84226957137a7505e045d7)) +* **api:** api update ([0017f6f](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/0017f6f209548fe6a8ead615b86b913a6df7baf1)) +* **api:** api update ([1f119f5](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/1f119f566c1f540f8a466d371fb6956ceecce30a)) +* **api:** api update ([a79343d](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/a79343d9a35f5a31e3d29320e1588e1d3c529f10)) +* **api:** api update ([8ebf680](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/8ebf680384a856aed45875ae4453bb594d8316c6)) +* **api:** api update ([8b449c4](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/8b449c44c869ab90ada7acc26123d58bfc083f1f)) +* **api:** api update ([4b821d9](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/4b821d974a38d50ae58321f62a83cd6c62998bb5)) +* **api:** api update ([3dbb7ca](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/3dbb7ca5c9b27baa4a7be982f69394a683db7090)) +* **api:** api update ([4019fcb](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/4019fcbe6b6fdcc117c6b8dabc174ab166498520)) +* **api:** api update ([ebdc5d4](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/ebdc5d46ba1bec74cc573fafff2d20ac4849db76)) +* **api:** api update ([1de2a95](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/1de2a952889d464577df810a8da0d7af3bbc1c7c)) +* **api:** api update ([b5ac8cc](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/b5ac8ccaa35aab1bfd6c8d391a9cb42302a4849a)) +* **api:** api update ([882ec77](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/882ec779a553bf8f0d1db0ca35ef2609c5a8078c)) +* **api:** api update ([4eec03f](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/4eec03ff386d8c64bd83285865c82bb061bf70a6)) +* **api:** api update ([3df5007](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/3df5007c69007088fc11a9aa01fb31088d9b5206)) +* **api:** api update ([3d8f2c4](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/3d8f2c4ca4509051e645536e656d82dadc9a20f2)) +* **api:** api update ([ac2d398](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/ac2d39857ba083470553fab82c27f940926081b6)) +* **api:** api update ([5ffb97d](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/5ffb97d9f3802d47f115a57bee40f3581801a3cd)) +* **api:** api update ([c2bc00b](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/c2bc00b282aca8daa45b24e6f4dc0fe66a606af4)) +* **api:** api update ([864ab2a](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/864ab2a56a9233228eb3053c0126794e1ae58182)) +* **api:** api update ([21aaa90](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/21aaa9051c98389cd43e3ed577b1a55dc90c1cdd)) +* **api:** api update ([a514bd1](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/a514bd1af8d12749bf37af858f70087126d6efbf)) +* **api:** api update ([83acb2e](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/83acb2edc04277e8494e469cd596cec1faa4ed81)) +* **api:** api update ([ad300ac](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/ad300ac3fb405cebd716bdd0e28d40b419ca6012)) +* **api:** api update ([3974622](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/39746225a5043e7b0861eda2ef1f491f6407da3a)) +* **api:** api update ([4dc96ad](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/4dc96addfdd7e241dcfcb967cd4c237ad417b85a)) +* **api:** api update ([2ba0e5f](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/2ba0e5f5ee52365b833d6904268201f398aaa001)) +* **api:** api update ([1312108](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/131210835bbd489c99ed6056302e0e1c30b0de12)) +* **api:** api update ([ff87eb3](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/ff87eb31769d1fa7de42185fd8089f543809a6b5)) +* **api:** api update ([efe94c1](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/efe94c163c71dbf361316438c01dff00fb2d87d8)) +* **api:** api update ([2894f2a](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/2894f2a7ecb37a33faf9f9e7b128c14e9bb0c518)) +* **api:** api update ([7466589](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/commit/74665892091c8009dc04edf23fea6acb36eda70d)) + ## 0.2.0 (2026-05-25) Full Changelog: [v0.1.1...v0.2.0](https://github.com/onlyfansapi/onlyfansapi-typescript-sdk/compare/v0.1.1...v0.2.0) diff --git a/api.md b/api.md index 3164dc4..6fa68cf 100644 --- a/api.md +++ b/api.md @@ -431,13 +431,12 @@ Methods: Types: -- MediaDownloadResponse - MediaScrapeResponse - MediaUploadResponse Methods: -- client.media.download(cdnURL, { ...params }) -> string +- client.media.download(cdnURL, { ...params }) -> void - client.media.scrape(account, { ...params }) -> MediaScrapeResponse - client.media.upload(account, { ...params }) -> MediaUploadResponse diff --git a/package.json b/package.json index 36a7c75..86ff194 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@onlyfansapi/onlyfans-sdk", - "version": "0.2.0", + "version": "0.3.0", "description": "The official TypeScript library for the Only Fans API API", "author": "Only Fans API ", "types": "dist/index.d.ts", diff --git a/src/client.ts b/src/client.ts index 249b1c3..8e00161 100644 --- a/src/client.ts +++ b/src/client.ts @@ -256,7 +256,6 @@ import { import { Media, MediaDownloadParams, - MediaDownloadResponse, MediaScrapeParams, MediaScrapeResponse, MediaUploadParams, @@ -1147,7 +1146,7 @@ export class OnlyFansAPI { trialLinks: API.TrialLinks = new API.TrialLinks(this); giphy: API.Giphy = new API.Giphy(this); /** - * APIs for managing tags on free trial links and tracking links + * APIs for managing tags on free trial links, tracking links, and Smart Links */ linkTags: API.LinkTags = new API.LinkTags(this); massMessaging: API.MassMessaging = new API.MassMessaging(this); @@ -1430,7 +1429,6 @@ export declare namespace OnlyFansAPI { export { Media as Media, - type MediaDownloadResponse as MediaDownloadResponse, type MediaScrapeResponse as MediaScrapeResponse, type MediaUploadResponse as MediaUploadResponse, type MediaDownloadParams as MediaDownloadParams, diff --git a/src/resources/accounts.ts b/src/resources/accounts.ts index e8b821f..6bb6558 100644 --- a/src/resources/accounts.ts +++ b/src/resources/accounts.ts @@ -29,7 +29,7 @@ export class Accounts extends APIResource { * * @example * ```ts - * const response = await client.accounts.disconnect('nobis'); + * const response = await client.accounts.disconnect('aut'); * ``` */ disconnect(id: string, options?: RequestOptions): APIPromise { diff --git a/src/resources/data-exports.ts b/src/resources/data-exports.ts index 7655bbe..299281d 100644 --- a/src/resources/data-exports.ts +++ b/src/resources/data-exports.ts @@ -230,6 +230,8 @@ export namespace DataExportRetrieveResponse { failed_at?: string | null; + failed_downloads?: number; + failed_reason?: string | null; file_type?: string; @@ -327,6 +329,8 @@ export namespace DataExportListResponse { failed_at?: string | null; + failed_downloads?: number; + failed_reason?: string | null; file_type?: string; diff --git a/src/resources/index.ts b/src/resources/index.ts index 0500976..4e7239b 100644 --- a/src/resources/index.ts +++ b/src/resources/index.ts @@ -134,7 +134,6 @@ export { } from './me'; export { Media, - type MediaDownloadResponse, type MediaScrapeResponse, type MediaUploadResponse, type MediaDownloadParams, diff --git a/src/resources/link-tags.ts b/src/resources/link-tags.ts index 5489cf2..104cf49 100644 --- a/src/resources/link-tags.ts +++ b/src/resources/link-tags.ts @@ -5,12 +5,12 @@ import { APIPromise } from '../core/api-promise'; import { RequestOptions } from '../internal/request-options'; /** - * APIs for managing tags on free trial links and tracking links + * APIs for managing tags on free trial links, tracking links, and Smart Links */ export class LinkTags extends APIResource { /** - * Get all existing tags that have been used on free trial links and/or tracking - * links for this account. This is a free endpoint. + * Get all existing tags that have been used on free trial links, tracking links, + * and/or Smart Links for this account. This is a free endpoint. * * @example * ```ts @@ -73,9 +73,9 @@ export namespace LinkTagListResponse { export interface LinkTagListParams { /** - * Filter by link type. If not provided, returns tags for both types. + * Filter by link type. If not provided, returns tags for all types. */ - type?: 'trial_links' | 'tracking_links'; + type?: 'trial_links' | 'tracking_links' | 'smart_links'; } export declare namespace LinkTags { diff --git a/src/resources/media/index.ts b/src/resources/media/index.ts index da4dede..a471989 100644 --- a/src/resources/media/index.ts +++ b/src/resources/media/index.ts @@ -2,7 +2,6 @@ export { Media, - type MediaDownloadResponse, type MediaScrapeResponse, type MediaUploadResponse, type MediaDownloadParams, diff --git a/src/resources/media/media.ts b/src/resources/media/media.ts index 08cee5e..6debd80 100644 --- a/src/resources/media/media.ts +++ b/src/resources/media/media.ts @@ -30,21 +30,22 @@ export class Media extends APIResource { * Downloads a file directly from a `https://cdn*.onlyfans.com/*` URL. When the * file is already cached on our CDN, this endpoint returns a `302` redirect to a * `https://cdn.fansapi.com/*` URL. Most HTTP clients follow redirects - * automatically (`curl` requires `-L`). Otherwise, the file is streamed through - * our proxies and queued for caching. + * automatically (`curl` requires `-L`). Otherwise, the file is redirected to + * `dl.fansapi.com`, which streams it through the account proxy and reports billing + * back to the API. * * @example * ```ts - * const response = await client.media.download('cdnUrl', { + * await client.media.download('cdnUrl', { * account: 'acct_XXXXXXXXXXXXXXX', * }); * ``` */ - download(cdnURL: string, params: MediaDownloadParams, options?: RequestOptions): APIPromise { + download(cdnURL: string, params: MediaDownloadParams, options?: RequestOptions): APIPromise { const { account } = params; return this._client.get(path`/api/${account}/media/download/${cdnURL}`, { ...options, - headers: buildHeaders([{ Accept: 'text/plain' }, options?.headers]), + headers: buildHeaders([{ Accept: '*/*' }, options?.headers]), }); } @@ -93,8 +94,6 @@ export class Media extends APIResource { } } -export type MediaDownloadResponse = string; - export interface MediaScrapeResponse { expiration_date?: string; @@ -201,7 +200,6 @@ Media.Vault = Vault; export declare namespace Media { export { - type MediaDownloadResponse as MediaDownloadResponse, type MediaScrapeResponse as MediaScrapeResponse, type MediaUploadResponse as MediaUploadResponse, type MediaDownloadParams as MediaDownloadParams, diff --git a/src/resources/media/vault/lists/lists.ts b/src/resources/media/vault/lists/lists.ts index 2161d5c..57026c2 100644 --- a/src/resources/media/vault/lists/lists.ts +++ b/src/resources/media/vault/lists/lists.ts @@ -58,12 +58,13 @@ export class Lists extends APIResource { * ```ts * const list = await client.media.vault.lists.update('123', { * account: 'acct_XXXXXXXXXXXXXXX', + * name: 'My renamed list', * }); * ``` */ update(listID: string, params: ListUpdateParams, options?: RequestOptions): APIPromise { - const { account } = params; - return this._client.put(path`/api/${account}/media/vault/lists/${listID}`, options); + const { account, ...body } = params; + return this._client.put(path`/api/${account}/media/vault/lists/${listID}`, { body, ...options }); } /** @@ -462,9 +463,15 @@ export interface ListRetrieveParams { export interface ListUpdateParams { /** - * The Account ID + * Path param: The Account ID */ account: string; + + /** + * Body param: The new name for the vault list. Must not be greater than 255 + * characters. + */ + name: string; } export interface ListListParams { diff --git a/src/resources/media/vault/lists/media.ts b/src/resources/media/vault/lists/media.ts index 6f8aff5..498021b 100644 --- a/src/resources/media/vault/lists/media.ts +++ b/src/resources/media/vault/lists/media.ts @@ -12,7 +12,7 @@ export class Media extends APIResource { * @example * ```ts * const response = await client.media.vault.lists.media.add( - * 'nihil', + * 'aut', * { account: 'acct_XXXXXXXXXXXXXXX', mediaIds: ['string'] }, * ); * ``` @@ -28,7 +28,7 @@ export class Media extends APIResource { * @example * ```ts * const media = await client.media.vault.lists.media.remove( - * 'nihil', + * 'aut', * { account: 'acct_XXXXXXXXXXXXXXX', mediaIds: ['string'] }, * ); * ``` diff --git a/src/resources/posts/comments.ts b/src/resources/posts/comments.ts index 1da3469..ca82093 100644 --- a/src/resources/posts/comments.ts +++ b/src/resources/posts/comments.ts @@ -11,13 +11,10 @@ export class Comments extends APIResource { * * @example * ```ts - * const comment = await client.posts.comments.create( - * 'impedit', - * { - * account: 'acct_XXXXXXXXXXXXXXX', - * text: 'This is a comment.', - * }, - * ); + * const comment = await client.posts.comments.create('ut', { + * account: 'acct_XXXXXXXXXXXXXXX', + * text: 'This is a comment.', + * }); * ``` */ create( @@ -37,10 +34,9 @@ export class Comments extends APIResource { * * @example * ```ts - * const comments = await client.posts.comments.list( - * 'impedit', - * { account: 'acct_XXXXXXXXXXXXXXX' }, - * ); + * const comments = await client.posts.comments.list('ut', { + * account: 'acct_XXXXXXXXXXXXXXX', + * }); * ``` */ list(postID: string, params: CommentListParams, options?: RequestOptions): APIPromise { diff --git a/src/resources/saved-for-later/messages/settings.ts b/src/resources/saved-for-later/messages/settings.ts index 599a952..a976781 100644 --- a/src/resources/saved-for-later/messages/settings.ts +++ b/src/resources/saved-for-later/messages/settings.ts @@ -50,7 +50,7 @@ export class Settings extends APIResource { * const response = * await client.savedForLater.messages.settings.enableOrUpdateAutomaticMessaging( * 'acct_XXXXXXXXXXXXXXX', - * { period: 12 }, + * { period: 6 }, * ); * ``` */ diff --git a/src/resources/saved-for-later/posts/settings.ts b/src/resources/saved-for-later/posts/settings.ts index 2b04cbb..c9a094c 100644 --- a/src/resources/saved-for-later/posts/settings.ts +++ b/src/resources/saved-for-later/posts/settings.ts @@ -50,7 +50,7 @@ export class Settings extends APIResource { * const response = * await client.savedForLater.posts.settings.enableOrUpdateAutomaticPosting( * 'acct_XXXXXXXXXXXXXXX', - * { period: 12 }, + * { period: 48 }, * ); * ``` */ diff --git a/src/resources/smart-link-postbacks.ts b/src/resources/smart-link-postbacks.ts index 82dbf90..255e9d2 100644 --- a/src/resources/smart-link-postbacks.ts +++ b/src/resources/smart-link-postbacks.ts @@ -18,7 +18,7 @@ export class SmartLinkPostbacks extends APIResource { * await client.smartLinkPostbacks.create({ * conversion_types: ['new_subscriber', 'new_transaction'], * smart_link_scope: 'campaign_specific', - * url: 'https://example.com/postback?click={click_id}&type={conversion_type}&gclid={gclid}', + * url: 'https://example.com/postback?click={external_click_id}&type={conversion_type}&gclid={gclid}', * }); * ``` */ @@ -51,7 +51,7 @@ export class SmartLinkPostbacks extends APIResource { * await client.smartLinkPostbacks.update(123, { * conversion_types: ['new_subscriber'], * smart_link_scope: 'global', - * url: 'https://example.com/postback?click={click_id}&type={conversion_type}', + * url: 'https://example.com/postback?click={external_click_id}&type={conversion_type}', * }); * ``` */ @@ -122,10 +122,16 @@ export namespace SmartLinkPostbackCreateResponse { export interface Data { id?: number; + body?: string; + conversion_types?: Array; created_at?: string; + headers?: Array; + + http_method?: string; + latest_response?: string | null; smart_link_ids?: Array; @@ -138,6 +144,14 @@ export namespace SmartLinkPostbackCreateResponse { url?: string; } + + export namespace Data { + export interface Header { + name?: string; + + value?: string; + } + } } export interface SmartLinkPostbackRetrieveResponse { @@ -172,10 +186,16 @@ export namespace SmartLinkPostbackRetrieveResponse { export interface Data { id?: number; + body?: string; + conversion_types?: Array; created_at?: string; + headers?: Array; + + http_method?: string; + latest_response?: string | null; smart_link_ids?: Array; @@ -190,6 +210,12 @@ export namespace SmartLinkPostbackRetrieveResponse { } export namespace Data { + export interface Header { + name?: string; + + value?: string; + } + export interface SmartLink { account_display_name?: string; @@ -234,10 +260,16 @@ export namespace SmartLinkPostbackUpdateResponse { export interface Data { id?: number; + body?: string; + conversion_types?: Array; created_at?: string; + headers?: Array; + + http_method?: string; + latest_response?: string | null; smart_link_ids?: Array; @@ -252,6 +284,12 @@ export namespace SmartLinkPostbackUpdateResponse { } export namespace Data { + export interface Header { + name?: string; + + value?: string; + } + export interface SmartLink { account_display_name?: string; @@ -296,10 +334,16 @@ export namespace SmartLinkPostbackListResponse { export interface Data { id?: number; + body?: string; + conversion_types?: Array; created_at?: string; + headers?: Array; + + http_method?: string; + latest_response?: Data.LatestResponse; smart_link_ids?: Array; @@ -314,6 +358,12 @@ export namespace SmartLinkPostbackListResponse { } export namespace Data { + export interface Header { + name?: string; + + value?: string; + } + export interface LatestResponse { id?: number; @@ -359,17 +409,49 @@ export interface SmartLinkPostbackCreateParams { smart_link_scope: 'global' | 'campaign_specific'; /** - * The destination URL. Variables such as `{click_id}`, `{fbclid}`, `{gclid}`, and - * `{ttclid}` are replaced when the postback is dispatched. + * The destination URL. Variables such as `{external_click_id}`, `{fbclid}`, + * `{gclid}`, and `{ttclid}` are replaced when the postback is dispatched. */ url: string; + /** + * Optional request body template for POST postbacks. Variables are replaced when + * the postback is dispatched. + */ + body?: string; + + /** + * Optional request headers. Header values may include postback variables. + */ + headers?: Array; + + /** + * HTTP method used for the postback request. Defaults to `GET` when omitted. + */ + http_method?: 'GET' | 'POST'; + /** * Smart Link ULIDs. Required when `smart_link_scope` is `campaign_specific`. */ smart_link_ids?: Array; } +export namespace SmartLinkPostbackCreateParams { + export interface Header { + /** + * This field is required when headers._.value is present. Must match + * the regex /\A[A-Za-z0-9!#$%&'_+.^\_`|~-]+\z/. Must not be greater than 100 + * characters. + */ + name?: string | null; + + /** + * Must not be greater than 2000 characters. + */ + value?: string | null; + } +} + export interface SmartLinkPostbackUpdateParams { /** * One or more Smart Link conversion types that should trigger this postback. @@ -386,12 +468,44 @@ export interface SmartLinkPostbackUpdateParams { */ url: string; + /** + * Optional request body template for POST postbacks. Variables are replaced when + * the postback is dispatched. + */ + body?: string; + + /** + * Optional request headers. Header values may include postback variables. + */ + headers?: Array; + + /** + * HTTP method used for the postback request. Existing value is kept when omitted. + */ + http_method?: 'GET' | 'POST'; + /** * Smart Link ULIDs. Required when `smart_link_scope` is `campaign_specific`. */ smart_link_ids?: Array; } +export namespace SmartLinkPostbackUpdateParams { + export interface Header { + /** + * This field is required when headers._.value is present. Must match + * the regex /\A[A-Za-z0-9!#$%&'_+.^\_`|~-]+\z/. Must not be greater than 100 + * characters. + */ + name?: string | null; + + /** + * Must not be greater than 2000 characters. + */ + value?: string | null; + } +} + export declare namespace SmartLinkPostbacks { export { type SmartLinkPostbackCreateResponse as SmartLinkPostbackCreateResponse, diff --git a/src/resources/smart-links.ts b/src/resources/smart-links.ts index 5d729c2..3070890 100644 --- a/src/resources/smart-links.ts +++ b/src/resources/smart-links.ts @@ -76,7 +76,7 @@ export class SmartLinks extends APIResource { * @example * ```ts * const response = await client.smartLinks.listClicks( - * 'rerum', + * 'praesentium', * ); * ``` */ @@ -95,7 +95,7 @@ export class SmartLinks extends APIResource { * @example * ```ts * const response = await client.smartLinks.listConversions( - * 'facilis', + * 'quidem', * ); * ``` */ @@ -113,9 +113,7 @@ export class SmartLinks extends APIResource { * * @example * ```ts - * const response = await client.smartLinks.listFans( - * 'ducimus', - * ); + * const response = await client.smartLinks.listFans('et'); * ``` */ listFans( @@ -132,7 +130,7 @@ export class SmartLinks extends APIResource { * @example * ```ts * const response = await client.smartLinks.listSpenders( - * 'nam', + * 'assumenda', * ); * ``` */ @@ -149,7 +147,7 @@ export class SmartLinks extends APIResource { * * @example * ```ts - * await client.smartLinks.retrieveCohortArps('eaque'); + * await client.smartLinks.retrieveCohortArps('autem'); * ``` */ retrieveCohortArps( @@ -171,7 +169,7 @@ export class SmartLinks extends APIResource { * @example * ```ts * const response = await client.smartLinks.retrieveStats( - * 'impedit', + * 'ullam', * ); * ``` */ @@ -1043,6 +1041,8 @@ export interface SmartLinkListParams { */ account_ids?: string | null; + filter?: SmartLinkListParams.Filter; + /** * The number of Smart Links to return. Default `50`. Must be at least 1. Must not * be greater than 1000. @@ -1050,7 +1050,7 @@ export interface SmartLinkListParams { limit?: number; /** - * Comma-separated Meta Pixel IDs to include. + * Deprecated alias for `pixel_ids`. Comma-separated Pixel IDs to include. */ meta_pixel_ids?: string | null; @@ -1063,6 +1063,20 @@ export interface SmartLinkListParams { * The offset used for pagination. Default `0`. Must be at least 0. */ offset?: number; + + /** + * Comma-separated ad platform Pixel IDs to include. + */ + pixel_ids?: string | null; +} + +export namespace SmartLinkListParams { + export interface Filter { + /** + * Must not be greater than 50 characters. + */ + tags?: Array; + } } export interface SmartLinkListClicksParams { diff --git a/src/resources/stories/highlights.ts b/src/resources/stories/highlights.ts index a61cc3b..c556977 100644 --- a/src/resources/stories/highlights.ts +++ b/src/resources/stories/highlights.ts @@ -121,7 +121,7 @@ export class Highlights extends APIResource { * @example * ```ts * const response = await client.stories.highlights.addStory( - * 'maxime', + * 'sed', * { * account: 'acct_XXXXXXXXXXXXXXX', * highlight_id: 1234567890, @@ -148,7 +148,7 @@ export class Highlights extends APIResource { * @example * ```ts * const response = - * await client.stories.highlights.removeStory('maxime', { + * await client.stories.highlights.removeStory('sed', { * account: 'acct_XXXXXXXXXXXXXXX', * highlight_id: 1234567890, * }); diff --git a/src/resources/tracking-links/tracking-links.ts b/src/resources/tracking-links/tracking-links.ts index d9224e6..ade5218 100644 --- a/src/resources/tracking-links/tracking-links.ts +++ b/src/resources/tracking-links/tracking-links.ts @@ -47,7 +47,7 @@ export class TrackingLinks extends APIResource { * @example * ```ts * const trackingLink = await client.trackingLinks.retrieve( - * 'et', + * 'dignissimos', * { account: 'acct_XXXXXXXXXXXXXXX' }, * ); * ``` @@ -85,7 +85,7 @@ export class TrackingLinks extends APIResource { * @example * ```ts * const trackingLink = await client.trackingLinks.delete( - * 'et', + * 'dignissimos', * { account: 'acct_XXXXXXXXXXXXXXX' }, * ); * ``` @@ -104,7 +104,7 @@ export class TrackingLinks extends APIResource { * * @example * ```ts - * await client.trackingLinks.getCohortArps('et', { + * await client.trackingLinks.getCohortArps('optio', { * account: 'acct_XXXXXXXXXXXXXXX', * }); * ``` @@ -134,7 +134,7 @@ export class TrackingLinks extends APIResource { * @example * ```ts * const response = await client.trackingLinks.getStats( - * 'voluptatem', + * 'nesciunt', * { account: 'acct_XXXXXXXXXXXXXXX' }, * ); * ``` diff --git a/src/resources/trial-links/trial-links.ts b/src/resources/trial-links/trial-links.ts index a13402e..03fd466 100644 --- a/src/resources/trial-links/trial-links.ts +++ b/src/resources/trial-links/trial-links.ts @@ -51,7 +51,7 @@ export class TrialLinks extends APIResource { * @example * ```ts * const trialLink = await client.trialLinks.retrieve( - * 'officia', + * 'exercitationem', * { account: 'acct_XXXXXXXXXXXXXXX' }, * ); * ``` @@ -90,7 +90,7 @@ export class TrialLinks extends APIResource { * @example * ```ts * const trialLink = await client.trialLinks.delete( - * 'officia', + * 'exercitationem', * { account: 'acct_XXXXXXXXXXXXXXX' }, * ); * ``` @@ -130,7 +130,7 @@ export class TrialLinks extends APIResource { * @example * ```ts * const response = await client.trialLinks.listSubscribers( - * 'eum', + * 'deleniti', * { * account: 'acct_XXXXXXXXXXXXXXX', * limit: 10, @@ -156,7 +156,7 @@ export class TrialLinks extends APIResource { * * @example * ```ts - * await client.trialLinks.retrieveCohortArps('eius', { + * await client.trialLinks.retrieveCohortArps('nisi', { * account: 'acct_XXXXXXXXXXXXXXX', * }); * ``` @@ -181,7 +181,7 @@ export class TrialLinks extends APIResource { * @example * ```ts * const response = await client.trialLinks.retrieveStats( - * 'aut', + * 'ipsam', * { account: 'acct_XXXXXXXXXXXXXXX' }, * ); * ``` diff --git a/src/resources/user-lists/user-lists.ts b/src/resources/user-lists/user-lists.ts index f96c64b..907b2e9 100644 --- a/src/resources/user-lists/user-lists.ts +++ b/src/resources/user-lists/user-lists.ts @@ -31,7 +31,7 @@ export class UserLists extends APIResource { * ```ts * const userList = await client.userLists.create( * 'acct_XXXXXXXXXXXXXXX', - * { name: 'sdqtzwslsvoxbkxj' }, + * { name: 'xoefjwuukvndqnoilzrytz' }, * ); * ``` */ diff --git a/src/version.ts b/src/version.ts index bade2ff..88f4d40 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const VERSION = '0.2.0'; // x-release-please-version +export const VERSION = '0.3.0'; // x-release-please-version diff --git a/tests/api-resources/accounts.test.ts b/tests/api-resources/accounts.test.ts index 1e3be33..5756d5a 100644 --- a/tests/api-resources/accounts.test.ts +++ b/tests/api-resources/accounts.test.ts @@ -37,7 +37,7 @@ describe('resource accounts', () => { // Mock server tests are disabled test.skip('disconnect', async () => { - const responsePromise = client.accounts.disconnect('nobis'); + const responsePromise = client.accounts.disconnect('aut'); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; diff --git a/tests/api-resources/authenticate.test.ts b/tests/api-resources/authenticate.test.ts index a62f86a..d85a454 100644 --- a/tests/api-resources/authenticate.test.ts +++ b/tests/api-resources/authenticate.test.ts @@ -62,22 +62,22 @@ describe('resource authenticate', () => { await expect( client.authenticate.start( { - auth_id: 'accusamus', - auth_type: 'email_password', - cookies: 'unde', + auth_id: 'debitis', + auth_type: 'raw_data', + cookies: 'ut', customProxy: { host: 'proxy.example.com', - password: '}b2XD-AinlA~Cg9=', + password: 'X\\WZaQOf`eZj-', port: 8080, - username: 'et', + username: 'ut', }, - email: 'ismael91@example.com', + email: 'ned.muller@example.org', force_connect: false, - name: 'molestiae', - password: 'iRPp(K"M[C1Qv,f', + name: 'rem', + password: '>>0 { // Mock server tests are disabled test.skip('update: only required params', async () => { - const responsePromise = client.media.vault.lists.update('123', { account: 'acct_XXXXXXXXXXXXXXX' }); + const responsePromise = client.media.vault.lists.update('123', { + account: 'acct_XXXXXXXXXXXXXXX', + name: 'My renamed list', + }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -56,7 +59,10 @@ describe('resource lists', () => { // Mock server tests are disabled test.skip('update: required and optional params', async () => { - const response = await client.media.vault.lists.update('123', { account: 'acct_XXXXXXXXXXXXXXX' }); + const response = await client.media.vault.lists.update('123', { + account: 'acct_XXXXXXXXXXXXXXX', + name: 'My renamed list', + }); }); // Mock server tests are disabled diff --git a/tests/api-resources/media/vault/lists/media.test.ts b/tests/api-resources/media/vault/lists/media.test.ts index 0195dda..7b876bd 100644 --- a/tests/api-resources/media/vault/lists/media.test.ts +++ b/tests/api-resources/media/vault/lists/media.test.ts @@ -10,7 +10,7 @@ const client = new OnlyFansAPI({ describe('resource media', () => { // Mock server tests are disabled test.skip('add: only required params', async () => { - const responsePromise = client.media.vault.lists.media.add('nihil', { + const responsePromise = client.media.vault.lists.media.add('aut', { account: 'acct_XXXXXXXXXXXXXXX', mediaIds: ['string'], }); @@ -25,7 +25,7 @@ describe('resource media', () => { // Mock server tests are disabled test.skip('add: required and optional params', async () => { - const response = await client.media.vault.lists.media.add('nihil', { + const response = await client.media.vault.lists.media.add('aut', { account: 'acct_XXXXXXXXXXXXXXX', mediaIds: ['string'], }); @@ -33,7 +33,7 @@ describe('resource media', () => { // Mock server tests are disabled test.skip('remove: only required params', async () => { - const responsePromise = client.media.vault.lists.media.remove('nihil', { + const responsePromise = client.media.vault.lists.media.remove('aut', { account: 'acct_XXXXXXXXXXXXXXX', mediaIds: ['string'], }); @@ -48,7 +48,7 @@ describe('resource media', () => { // Mock server tests are disabled test.skip('remove: required and optional params', async () => { - const response = await client.media.vault.lists.media.remove('nihil', { + const response = await client.media.vault.lists.media.remove('aut', { account: 'acct_XXXXXXXXXXXXXXX', mediaIds: ['string'], }); diff --git a/tests/api-resources/notifications/notifications.test.ts b/tests/api-resources/notifications/notifications.test.ts index 7b04294..e56040c 100644 --- a/tests/api-resources/notifications/notifications.test.ts +++ b/tests/api-resources/notifications/notifications.test.ts @@ -30,7 +30,7 @@ describe('resource notifications', () => { from_id: 123, limit: 10, skip_users: 'all', - type: 'comments', + type: 'likes', }, { path: '/_stainless_unknown_path' }, ), diff --git a/tests/api-resources/posts/comments.test.ts b/tests/api-resources/posts/comments.test.ts index bf70968..548a48c 100644 --- a/tests/api-resources/posts/comments.test.ts +++ b/tests/api-resources/posts/comments.test.ts @@ -10,7 +10,7 @@ const client = new OnlyFansAPI({ describe('resource comments', () => { // Mock server tests are disabled test.skip('create: only required params', async () => { - const responsePromise = client.posts.comments.create('impedit', { + const responsePromise = client.posts.comments.create('ut', { account: 'acct_XXXXXXXXXXXXXXX', text: 'This is a comment.', }); @@ -25,7 +25,7 @@ describe('resource comments', () => { // Mock server tests are disabled test.skip('create: required and optional params', async () => { - const response = await client.posts.comments.create('impedit', { + const response = await client.posts.comments.create('ut', { account: 'acct_XXXXXXXXXXXXXXX', text: 'This is a comment.', answerTo: 123, @@ -35,7 +35,7 @@ describe('resource comments', () => { // Mock server tests are disabled test.skip('list: only required params', async () => { - const responsePromise = client.posts.comments.list('impedit', { account: 'acct_XXXXXXXXXXXXXXX' }); + const responsePromise = client.posts.comments.list('ut', { account: 'acct_XXXXXXXXXXXXXXX' }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -47,7 +47,7 @@ describe('resource comments', () => { // Mock server tests are disabled test.skip('list: required and optional params', async () => { - const response = await client.posts.comments.list('impedit', { + const response = await client.posts.comments.list('ut', { account: 'acct_XXXXXXXXXXXXXXX', limit: 10, offset: 0, diff --git a/tests/api-resources/saved-for-later/messages/settings.test.ts b/tests/api-resources/saved-for-later/messages/settings.test.ts index 8e5b056..4ec8acc 100644 --- a/tests/api-resources/saved-for-later/messages/settings.test.ts +++ b/tests/api-resources/saved-for-later/messages/settings.test.ts @@ -37,7 +37,7 @@ describe('resource settings', () => { test.skip('enableOrUpdateAutomaticMessaging: only required params', async () => { const responsePromise = client.savedForLater.messages.settings.enableOrUpdateAutomaticMessaging( 'acct_XXXXXXXXXXXXXXX', - { period: 12 }, + { period: 6 }, ); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); @@ -52,7 +52,7 @@ describe('resource settings', () => { test.skip('enableOrUpdateAutomaticMessaging: required and optional params', async () => { const response = await client.savedForLater.messages.settings.enableOrUpdateAutomaticMessaging( 'acct_XXXXXXXXXXXXXXX', - { period: 12 }, + { period: 6 }, ); }); }); diff --git a/tests/api-resources/saved-for-later/posts/settings.test.ts b/tests/api-resources/saved-for-later/posts/settings.test.ts index 96d399d..b643af6 100644 --- a/tests/api-resources/saved-for-later/posts/settings.test.ts +++ b/tests/api-resources/saved-for-later/posts/settings.test.ts @@ -37,7 +37,7 @@ describe('resource settings', () => { test.skip('enableOrUpdateAutomaticPosting: only required params', async () => { const responsePromise = client.savedForLater.posts.settings.enableOrUpdateAutomaticPosting( 'acct_XXXXXXXXXXXXXXX', - { period: 12 }, + { period: 48 }, ); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); @@ -52,7 +52,7 @@ describe('resource settings', () => { test.skip('enableOrUpdateAutomaticPosting: required and optional params', async () => { const response = await client.savedForLater.posts.settings.enableOrUpdateAutomaticPosting( 'acct_XXXXXXXXXXXXXXX', - { period: 12 }, + { period: 48 }, ); }); }); diff --git a/tests/api-resources/settings/welcome-message.test.ts b/tests/api-resources/settings/welcome-message.test.ts index d13ad1c..6b1dc2f 100644 --- a/tests/api-resources/settings/welcome-message.test.ts +++ b/tests/api-resources/settings/welcome-message.test.ts @@ -39,7 +39,7 @@ describe('resource welcomeMessage', () => { client.settings.welcomeMessage.update( 'acct_XXXXXXXXXXXXXXX', { - isForward: true, + isForward: false, lockedText: false, mediaFiles: ['ofapi_media_abc123', 1234567890], previews: ['ofapi_media_abc123', 1234567890], diff --git a/tests/api-resources/smart-link-postbacks.test.ts b/tests/api-resources/smart-link-postbacks.test.ts index 9aec640..09984bf 100644 --- a/tests/api-resources/smart-link-postbacks.test.ts +++ b/tests/api-resources/smart-link-postbacks.test.ts @@ -13,7 +13,7 @@ describe('resource smartLinkPostbacks', () => { const responsePromise = client.smartLinkPostbacks.create({ conversion_types: ['new_subscriber', 'new_transaction'], smart_link_scope: 'campaign_specific', - url: 'https://example.com/postback?click={click_id}&type={conversion_type}&gclid={gclid}', + url: 'https://example.com/postback?click={external_click_id}&type={conversion_type}&gclid={gclid}', }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); @@ -29,7 +29,10 @@ describe('resource smartLinkPostbacks', () => { const response = await client.smartLinkPostbacks.create({ conversion_types: ['new_subscriber', 'new_transaction'], smart_link_scope: 'campaign_specific', - url: 'https://example.com/postback?click={click_id}&type={conversion_type}&gclid={gclid}', + url: 'https://example.com/postback?click={external_click_id}&type={conversion_type}&gclid={gclid}', + body: '{"click_id":"{click_id}","value":"{amount_gross}"}', + headers: [{ name: 'Authorization', value: 'Bearer token' }], + http_method: 'POST', smart_link_ids: ['01JTESTLINK000000000000001'], }); }); @@ -51,7 +54,7 @@ describe('resource smartLinkPostbacks', () => { const responsePromise = client.smartLinkPostbacks.update(123, { conversion_types: ['new_subscriber'], smart_link_scope: 'global', - url: 'https://example.com/postback?click={click_id}&type={conversion_type}', + url: 'https://example.com/postback?click={external_click_id}&type={conversion_type}', }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); @@ -67,7 +70,10 @@ describe('resource smartLinkPostbacks', () => { const response = await client.smartLinkPostbacks.update(123, { conversion_types: ['new_subscriber'], smart_link_scope: 'global', - url: 'https://example.com/postback?click={click_id}&type={conversion_type}', + url: 'https://example.com/postback?click={external_click_id}&type={conversion_type}', + body: '{"click_id":"{click_id}","value":"{amount_gross}"}', + headers: [{ name: 'Authorization', value: 'Bearer token' }], + http_method: 'POST', smart_link_ids: ['01JTESTLINK000000000000001'], }); }); diff --git a/tests/api-resources/smart-links.test.ts b/tests/api-resources/smart-links.test.ts index 5f67b78..c65bf7b 100644 --- a/tests/api-resources/smart-links.test.ts +++ b/tests/api-resources/smart-links.test.ts @@ -65,10 +65,12 @@ describe('resource smartLinks', () => { client.smartLinks.list( { account_ids: 'acct_abc123,acct_def456', + filter: { tags: ['lyxqcmnxobiryxfen'] }, limit: 50, meta_pixel_ids: '1,2', name: 'Instagram', offset: 0, + pixel_ids: '1,2', }, { path: '/_stainless_unknown_path' }, ), @@ -89,7 +91,7 @@ describe('resource smartLinks', () => { // Mock server tests are disabled test.skip('listClicks', async () => { - const responsePromise = client.smartLinks.listClicks('rerum'); + const responsePromise = client.smartLinks.listClicks('praesentium'); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -104,7 +106,7 @@ describe('resource smartLinks', () => { // ensure the request options are being passed correctly by passing an invalid HTTP method in order to cause an error await expect( client.smartLinks.listClicks( - 'rerum', + 'praesentium', { date_end: '2026-01-07T23:59:59Z', date_start: '2026-01-01T00:00:00Z', @@ -120,7 +122,7 @@ describe('resource smartLinks', () => { // Mock server tests are disabled test.skip('listConversions', async () => { - const responsePromise = client.smartLinks.listConversions('facilis'); + const responsePromise = client.smartLinks.listConversions('quidem'); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -135,7 +137,7 @@ describe('resource smartLinks', () => { // ensure the request options are being passed correctly by passing an invalid HTTP method in order to cause an error await expect( client.smartLinks.listConversions( - 'facilis', + 'quidem', { conversion_type: 'new_transaction', date_end: '2026-01-07T23:59:59Z', @@ -153,7 +155,7 @@ describe('resource smartLinks', () => { // Mock server tests are disabled test.skip('listFans', async () => { - const responsePromise = client.smartLinks.listFans('ducimus'); + const responsePromise = client.smartLinks.listFans('et'); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -168,7 +170,7 @@ describe('resource smartLinks', () => { // ensure the request options are being passed correctly by passing an invalid HTTP method in order to cause an error await expect( client.smartLinks.listFans( - 'ducimus', + 'et', { has_messages: true, limit: 100, @@ -185,7 +187,7 @@ describe('resource smartLinks', () => { // Mock server tests are disabled test.skip('listSpenders', async () => { - const responsePromise = client.smartLinks.listSpenders('nam'); + const responsePromise = client.smartLinks.listSpenders('assumenda'); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -200,7 +202,7 @@ describe('resource smartLinks', () => { // ensure the request options are being passed correctly by passing an invalid HTTP method in order to cause an error await expect( client.smartLinks.listSpenders( - 'nam', + 'assumenda', { limit: 50, minSpend: 1, @@ -213,7 +215,7 @@ describe('resource smartLinks', () => { // Mock server tests are disabled test.skip('retrieveCohortArps', async () => { - const responsePromise = client.smartLinks.retrieveCohortArps('eaque'); + const responsePromise = client.smartLinks.retrieveCohortArps('autem'); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -228,7 +230,7 @@ describe('resource smartLinks', () => { // ensure the request options are being passed correctly by passing an invalid HTTP method in order to cause an error await expect( client.smartLinks.retrieveCohortArps( - 'eaque', + 'autem', { acquisition_end: '2026-01-31T23:59:59Z', acquisition_start: '2026-01-01T00:00:00Z', @@ -241,7 +243,7 @@ describe('resource smartLinks', () => { // Mock server tests are disabled test.skip('retrieveStats', async () => { - const responsePromise = client.smartLinks.retrieveStats('impedit'); + const responsePromise = client.smartLinks.retrieveStats('ullam'); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -256,7 +258,7 @@ describe('resource smartLinks', () => { // ensure the request options are being passed correctly by passing an invalid HTTP method in order to cause an error await expect( client.smartLinks.retrieveStats( - 'impedit', + 'ullam', { date_end: '2026-01-31T23:59:59Z', date_start: '2026-01-01T00:00:00Z' }, { path: '/_stainless_unknown_path' }, ), diff --git a/tests/api-resources/stored.test.ts b/tests/api-resources/stored.test.ts index 801e916..663ca80 100644 --- a/tests/api-resources/stored.test.ts +++ b/tests/api-resources/stored.test.ts @@ -27,7 +27,7 @@ describe('resource stored', () => { client.stored.listSharedTrackingLinks( 'acct_XXXXXXXXXXXXXXX', { - filter: { search: 'wjdlvaxlyadlqrwqppqxf', tags: ['eoekj'] }, + filter: { search: 'wmpjnvsokrtmm', tags: ['db'] }, limit: 10, offset: 0, }, @@ -55,7 +55,7 @@ describe('resource stored', () => { client.stored.listSharedTrialLinks( 'acct_XXXXXXXXXXXXXXX', { - filter: { search: 'zeynkehufhzqvcaqjxnwtpibh', tags: ['vyjau'] }, + filter: { search: 'qjvowkkefosyvpazi', tags: ['ysa'] }, limit: 10, offset: 0, }, @@ -84,9 +84,9 @@ describe('resource stored', () => { 'acct_XXXXXXXXXXXXXXX', { filter: { - include_smart_links: true, - search: 'ycluqgbgiibws', - tags: ['eisqsclddcipdx'], + include_smart_links: false, + search: 'lzamwfuhxgsqjmaarx', + tags: ['xnxlnbqdcuqpdbwkf'], }, limit: 10, offset: 0, @@ -117,8 +117,8 @@ describe('resource stored', () => { { filter: { include_smart_links: true, - search: 'dharcxleeeimxrrewpni', - tags: ['kwqzrpj'], + search: 'tfcfixxskknngoiy', + tags: ['sdvhdjxxzhevudlaginokmjpe'], }, limit: 10, offset: 0, diff --git a/tests/api-resources/stories/highlights.test.ts b/tests/api-resources/stories/highlights.test.ts index 8602598..990b3fc 100644 --- a/tests/api-resources/stories/highlights.test.ts +++ b/tests/api-resources/stories/highlights.test.ts @@ -124,7 +124,7 @@ describe('resource highlights', () => { // Mock server tests are disabled test.skip('addStory: only required params', async () => { - const responsePromise = client.stories.highlights.addStory('maxime', { + const responsePromise = client.stories.highlights.addStory('sed', { account: 'acct_XXXXXXXXXXXXXXX', highlight_id: 1234567890, story_id: 2345678901, @@ -140,7 +140,7 @@ describe('resource highlights', () => { // Mock server tests are disabled test.skip('addStory: required and optional params', async () => { - const response = await client.stories.highlights.addStory('maxime', { + const response = await client.stories.highlights.addStory('sed', { account: 'acct_XXXXXXXXXXXXXXX', highlight_id: 1234567890, story_id: 2345678901, @@ -149,7 +149,7 @@ describe('resource highlights', () => { // Mock server tests are disabled test.skip('removeStory: only required params', async () => { - const responsePromise = client.stories.highlights.removeStory('maxime', { + const responsePromise = client.stories.highlights.removeStory('sed', { account: 'acct_XXXXXXXXXXXXXXX', highlight_id: 1234567890, }); @@ -164,7 +164,7 @@ describe('resource highlights', () => { // Mock server tests are disabled test.skip('removeStory: required and optional params', async () => { - const response = await client.stories.highlights.removeStory('maxime', { + const response = await client.stories.highlights.removeStory('sed', { account: 'acct_XXXXXXXXXXXXXXX', highlight_id: 1234567890, }); diff --git a/tests/api-resources/tracking-links/tracking-links.test.ts b/tests/api-resources/tracking-links/tracking-links.test.ts index 3ad1ecc..e0b1a8b 100644 --- a/tests/api-resources/tracking-links/tracking-links.test.ts +++ b/tests/api-resources/tracking-links/tracking-links.test.ts @@ -30,7 +30,7 @@ describe('resource trackingLinks', () => { // Mock server tests are disabled test.skip('retrieve: only required params', async () => { - const responsePromise = client.trackingLinks.retrieve('et', { account: 'acct_XXXXXXXXXXXXXXX' }); + const responsePromise = client.trackingLinks.retrieve('dignissimos', { account: 'acct_XXXXXXXXXXXXXXX' }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -42,7 +42,7 @@ describe('resource trackingLinks', () => { // Mock server tests are disabled test.skip('retrieve: required and optional params', async () => { - const response = await client.trackingLinks.retrieve('et', { account: 'acct_XXXXXXXXXXXXXXX' }); + const response = await client.trackingLinks.retrieve('dignissimos', { account: 'acct_XXXXXXXXXXXXXXX' }); }); // Mock server tests are disabled @@ -80,7 +80,7 @@ describe('resource trackingLinks', () => { // Mock server tests are disabled test.skip('delete: only required params', async () => { - const responsePromise = client.trackingLinks.delete('et', { account: 'acct_XXXXXXXXXXXXXXX' }); + const responsePromise = client.trackingLinks.delete('dignissimos', { account: 'acct_XXXXXXXXXXXXXXX' }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -92,12 +92,12 @@ describe('resource trackingLinks', () => { // Mock server tests are disabled test.skip('delete: required and optional params', async () => { - const response = await client.trackingLinks.delete('et', { account: 'acct_XXXXXXXXXXXXXXX' }); + const response = await client.trackingLinks.delete('dignissimos', { account: 'acct_XXXXXXXXXXXXXXX' }); }); // Mock server tests are disabled test.skip('getCohortArps: only required params', async () => { - const responsePromise = client.trackingLinks.getCohortArps('et', { account: 'acct_XXXXXXXXXXXXXXX' }); + const responsePromise = client.trackingLinks.getCohortArps('optio', { account: 'acct_XXXXXXXXXXXXXXX' }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -109,7 +109,7 @@ describe('resource trackingLinks', () => { // Mock server tests are disabled test.skip('getCohortArps: required and optional params', async () => { - const response = await client.trackingLinks.getCohortArps('et', { + const response = await client.trackingLinks.getCohortArps('optio', { account: 'acct_XXXXXXXXXXXXXXX', acquisition_end: '2026-01-31T23:59:59Z', acquisition_start: '2026-01-01T00:00:00Z', @@ -119,7 +119,7 @@ describe('resource trackingLinks', () => { // Mock server tests are disabled test.skip('getStats: only required params', async () => { - const responsePromise = client.trackingLinks.getStats('voluptatem', { account: 'acct_XXXXXXXXXXXXXXX' }); + const responsePromise = client.trackingLinks.getStats('nesciunt', { account: 'acct_XXXXXXXXXXXXXXX' }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -131,7 +131,7 @@ describe('resource trackingLinks', () => { // Mock server tests are disabled test.skip('getStats: required and optional params', async () => { - const response = await client.trackingLinks.getStats('voluptatem', { + const response = await client.trackingLinks.getStats('nesciunt', { account: 'acct_XXXXXXXXXXXXXXX', date_end: '2026-01-31T23:59:59Z', date_start: '2026-01-01T00:00:00Z', diff --git a/tests/api-resources/trial-links/trial-links.test.ts b/tests/api-resources/trial-links/trial-links.test.ts index e273b87..84ec524 100644 --- a/tests/api-resources/trial-links/trial-links.test.ts +++ b/tests/api-resources/trial-links/trial-links.test.ts @@ -37,7 +37,7 @@ describe('resource trialLinks', () => { // Mock server tests are disabled test.skip('retrieve: only required params', async () => { - const responsePromise = client.trialLinks.retrieve('officia', { account: 'acct_XXXXXXXXXXXXXXX' }); + const responsePromise = client.trialLinks.retrieve('exercitationem', { account: 'acct_XXXXXXXXXXXXXXX' }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -49,7 +49,7 @@ describe('resource trialLinks', () => { // Mock server tests are disabled test.skip('retrieve: required and optional params', async () => { - const response = await client.trialLinks.retrieve('officia', { account: 'acct_XXXXXXXXXXXXXXX' }); + const response = await client.trialLinks.retrieve('exercitationem', { account: 'acct_XXXXXXXXXXXXXXX' }); }); // Mock server tests are disabled @@ -77,7 +77,7 @@ describe('resource trialLinks', () => { // Mock server tests are disabled test.skip('delete: only required params', async () => { - const responsePromise = client.trialLinks.delete('officia', { account: 'acct_XXXXXXXXXXXXXXX' }); + const responsePromise = client.trialLinks.delete('exercitationem', { account: 'acct_XXXXXXXXXXXXXXX' }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -89,7 +89,7 @@ describe('resource trialLinks', () => { // Mock server tests are disabled test.skip('delete: required and optional params', async () => { - const response = await client.trialLinks.delete('officia', { account: 'acct_XXXXXXXXXXXXXXX' }); + const response = await client.trialLinks.delete('exercitationem', { account: 'acct_XXXXXXXXXXXXXXX' }); }); // Mock server tests are disabled @@ -118,7 +118,7 @@ describe('resource trialLinks', () => { // Mock server tests are disabled test.skip('listSubscribers: only required params', async () => { - const responsePromise = client.trialLinks.listSubscribers('eum', { + const responsePromise = client.trialLinks.listSubscribers('deleniti', { account: 'acct_XXXXXXXXXXXXXXX', limit: 10, offset: 0, @@ -134,7 +134,7 @@ describe('resource trialLinks', () => { // Mock server tests are disabled test.skip('listSubscribers: required and optional params', async () => { - const response = await client.trialLinks.listSubscribers('eum', { + const response = await client.trialLinks.listSubscribers('deleniti', { account: 'acct_XXXXXXXXXXXXXXX', limit: 10, offset: 0, @@ -143,7 +143,7 @@ describe('resource trialLinks', () => { // Mock server tests are disabled test.skip('retrieveCohortArps: only required params', async () => { - const responsePromise = client.trialLinks.retrieveCohortArps('eius', { account: 'acct_XXXXXXXXXXXXXXX' }); + const responsePromise = client.trialLinks.retrieveCohortArps('nisi', { account: 'acct_XXXXXXXXXXXXXXX' }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -155,7 +155,7 @@ describe('resource trialLinks', () => { // Mock server tests are disabled test.skip('retrieveCohortArps: required and optional params', async () => { - const response = await client.trialLinks.retrieveCohortArps('eius', { + const response = await client.trialLinks.retrieveCohortArps('nisi', { account: 'acct_XXXXXXXXXXXXXXX', acquisition_end: '2026-01-31T23:59:59Z', acquisition_start: '2026-01-01T00:00:00Z', @@ -165,7 +165,7 @@ describe('resource trialLinks', () => { // Mock server tests are disabled test.skip('retrieveStats: only required params', async () => { - const responsePromise = client.trialLinks.retrieveStats('aut', { account: 'acct_XXXXXXXXXXXXXXX' }); + const responsePromise = client.trialLinks.retrieveStats('ipsam', { account: 'acct_XXXXXXXXXXXXXXX' }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -177,7 +177,7 @@ describe('resource trialLinks', () => { // Mock server tests are disabled test.skip('retrieveStats: required and optional params', async () => { - const response = await client.trialLinks.retrieveStats('aut', { + const response = await client.trialLinks.retrieveStats('ipsam', { account: 'acct_XXXXXXXXXXXXXXX', date_end: '2026-01-31T23:59:59Z', date_start: '2026-01-01T00:00:00Z', diff --git a/tests/api-resources/user-lists/user-lists.test.ts b/tests/api-resources/user-lists/user-lists.test.ts index c1e9d27..432e27a 100644 --- a/tests/api-resources/user-lists/user-lists.test.ts +++ b/tests/api-resources/user-lists/user-lists.test.ts @@ -10,7 +10,9 @@ const client = new OnlyFansAPI({ describe('resource userLists', () => { // Mock server tests are disabled test.skip('create: only required params', async () => { - const responsePromise = client.userLists.create('acct_XXXXXXXXXXXXXXX', { name: 'sdqtzwslsvoxbkxj' }); + const responsePromise = client.userLists.create('acct_XXXXXXXXXXXXXXX', { + name: 'xoefjwuukvndqnoilzrytz', + }); const rawResponse = await responsePromise.asResponse(); expect(rawResponse).toBeInstanceOf(Response); const response = await responsePromise; @@ -22,7 +24,9 @@ describe('resource userLists', () => { // Mock server tests are disabled test.skip('create: required and optional params', async () => { - const response = await client.userLists.create('acct_XXXXXXXXXXXXXXX', { name: 'sdqtzwslsvoxbkxj' }); + const response = await client.userLists.create('acct_XXXXXXXXXXXXXXX', { + name: 'xoefjwuukvndqnoilzrytz', + }); }); // Mock server tests are disabled