Skip to content

integrations/social/tiktok/dist

Interfaces

ParseTikTokWebhookOptions

Properties

clientSecret?
optional clientSecret?: string;
nowSeconds?
optional nowSeconds?: number;
requireSignature?
optional requireSignature?: boolean;
toleranceSeconds?
optional toleranceSeconds?: number;

TikTokApiResponse

Type Parameters

Type Parameter Default type
T extends TikTokSocialProviderExtensionValue TikTokSocialJsonObject

Indexable

[key: string]: TikTokSocialProviderExtensionValue

Properties

code?
optional code?: string | number;
data?
optional data?: T;
error?
optional error?: {
  code?: string;
  log_id?: string;
  message?: string;
};
code?
optional code?: string;
log_id?
optional log_id?: string;
message?
optional message?: string;
message?
optional message?: string;
request_id?
optional request_id?: string;

TikTokBusinessCommentListInput

Properties

businessId?
optional businessId?: string;
cursor?
optional cursor?: number;
fields?
optional fields?: string[];
pageSize?
optional pageSize?: number;
status?
optional status?: string;
videoId
videoId: string;

TikTokBusinessVideoListInput

Properties

businessId?
optional businessId?: string;
fields?
optional fields?: string[];
filters?
optional filters?: TikTokSocialJsonObject;

TikTokComment

Indexable

[key: string]: TikTokSocialProviderExtensionValue

Properties

create_time?
optional create_time?: number;
id?
optional id?: string;
like_count?
optional like_count?: number;
parent_comment_id?
optional parent_comment_id?: string;
reply_count?
optional reply_count?: number;
text?
optional text?: string;
video_id?
optional video_id?: string;

TikTokCommentList

Indexable

[key: string]: TikTokSocialProviderExtensionValue

Properties

comments?
optional comments?: TikTokComment[];
cursor?
optional cursor?: number;
has_more?
optional has_more?: boolean;

TikTokCommentReplyInput

Properties

additionalFields?
optional additionalFields?: TikTokSocialProviderExtensionFields;
businessId?
optional businessId?: string;
commentId
commentId: string;
text
text: string;
videoId
videoId: string;

TikTokCredentialStatusInput

Properties

accessToken?
optional accessToken?: string;
businessId?
optional businessId?: string;
clientKey?
optional clientKey?: string;
clientSecret?
optional clientSecret?: string;
expiresAt?
optional expiresAt?: string;
openId?
optional openId?: string;
scopes?
optional scopes?: string[];
webhookConfigured?
optional webhookConfigured?: boolean;
webhookSignatureSecret?
optional webhookSignatureSecret?: string;

TikTokGeneralDmSupport

Properties

alternatives
alternatives: string[];
reason
reason: string;
supported
supported: false;

TikTokLiveCheckOptions

Extends

Properties

accessToken?
optional accessToken?: string;
Inherited from

TikTokSocialClientOptions.accessToken

baseUrl?
optional baseUrl?: string;
Inherited from

TikTokSocialClientOptions.baseUrl

businessApiBaseUrl?
optional businessApiBaseUrl?: string;
Inherited from

TikTokSocialClientOptions.businessApiBaseUrl

businessApiVersion?
optional businessApiVersion?: string;
Inherited from

TikTokSocialClientOptions.businessApiVersion

businessId?
optional businessId?: string;
Inherited from

TikTokSocialClientOptions.businessId

client?
optional client?: Pick<TikTokSocialClient, "getUserInfo" | "listVideos">;
clientKey?
optional clientKey?: string;
Inherited from

TikTokSocialClientOptions.clientKey

clientSecret?
optional clientSecret?: string;
Inherited from

TikTokSocialClientOptions.clientSecret

fetch?
optional fetch?: {
  (input, init?): Promise<Response>;
  (input, init?): Promise<Response>;
};
Call Signature
(input, init?): Promise<Response>;

MDN Reference

Parameters
Parameter Type
input URL | RequestInfo
init? RequestInit
Returns

Promise\<Response>

Call Signature
(input, init?): Promise<Response>;

MDN Reference

Parameters
Parameter Type
input string | Request | URL
init? RequestInit
Returns

Promise\<Response>

Inherited from

TikTokSocialClientOptions.fetch

openApiBaseUrl?
optional openApiBaseUrl?: string;
Inherited from

TikTokSocialClientOptions.openApiBaseUrl

openId?
optional openId?: string;
Inherited from

TikTokSocialClientOptions.openId

providerClient?
optional providerClient?: TikTokSocialProviderClient;
Inherited from

TikTokSocialClientOptions.providerClient

retry?
optional retry?:
  | number
  | ProviderJsonRetryOptions;
Inherited from

TikTokSocialClientOptions.retry

signal?
optional signal?: AbortSignal;
Inherited from

TikTokSocialClientOptions.signal

timeoutMs?
optional timeoutMs?: number;
Inherited from

TikTokSocialClientOptions.timeoutMs


TikTokPostStatusInput

Properties

publishId
publishId: string;

TikTokResearchCommentListInput

Properties

commentId?
optional commentId?: string;
cursor?
optional cursor?: number;
fields?
optional fields?: string[];
maxCount?
optional maxCount?: number;
videoId?
optional videoId?: string;

TikTokSelectedOperation

Properties

api
api:
  | "tiktok-open.v2.display"
  | "tiktok-open.v2.content-posting"
  | "tiktok-open.v2.research"
  | "tiktok-business.v1.3";
functionName
functionName: string;
method
method: "GET" | "POST";
path
path: string;
sourceUrl
sourceUrl: string;
uid
uid: string;

TikTokSignatureParts

Properties

signature?
optional signature?: string;
timestamp?
optional timestamp?: number;

TikTokSignedWebhook

Properties

contentType?
optional contentType?: string;
payload
payload: TikTokWebhookPayload;
rawBody
rawBody: string;
signature?
optional signature?: string;
timestamp?
optional timestamp?: number;

TikTokSocialClient

Extends

Properties

providerClient
providerClient: TikTokSocialProviderClient;

Methods

createBusinessComment()
createBusinessComment(input): Promise<TikTokApiResponse<TikTokSocialJsonObject>>;
Parameters
Parameter Type
input Omit\<TikTokCommentReplyInput, "commentId">
Returns

Promise\<TikTokApiResponse\<TikTokSocialJsonObject>>

Inherited from

TikTokSocialProviderClient.createBusinessComment

fetchPostStatus()
fetchPostStatus(input): Promise<TikTokApiResponse<TikTokSocialJsonObject>>;
Parameters
Parameter Type
input TikTokPostStatusInput
Returns

Promise\<TikTokApiResponse\<TikTokSocialJsonObject>>

Inherited from

TikTokSocialProviderClient.fetchPostStatus

getUserInfo()
getUserInfo(fields?): Promise<TikTokApiResponse<TikTokUserInfo>>;
Parameters
Parameter Type
fields? string[]
Returns

Promise\<TikTokApiResponse\<TikTokUserInfo>>

Inherited from

TikTokSocialProviderClient.getUserInfo

listBusinessComments()
listBusinessComments(input): Promise<TikTokApiResponse<TikTokCommentList>>;
Parameters
Parameter Type
input TikTokBusinessCommentListInput
Returns

Promise\<TikTokApiResponse\<TikTokCommentList>>

Inherited from

TikTokSocialProviderClient.listBusinessComments

listBusinessVideos()
listBusinessVideos(input?): Promise<TikTokApiResponse<TikTokSocialJsonObject>>;
Parameters
Parameter Type
input? TikTokBusinessVideoListInput
Returns

Promise\<TikTokApiResponse\<TikTokSocialJsonObject>>

Inherited from

TikTokSocialProviderClient.listBusinessVideos

listVideos()
listVideos(input?): Promise<TikTokApiResponse<TikTokVideoList>>;
Parameters
Parameter Type
input? TikTokVideoListInput
Returns

Promise\<TikTokApiResponse\<TikTokVideoList>>

Inherited from

TikTokSocialProviderClient.listVideos

queryResearchVideoComments()
queryResearchVideoComments(input): Promise<TikTokApiResponse<TikTokCommentList>>;
Parameters
Parameter Type
input TikTokResearchCommentListInput
Returns

Promise\<TikTokApiResponse\<TikTokCommentList>>

Inherited from

TikTokSocialProviderClient.queryResearchVideoComments

replyToBusinessComment()
replyToBusinessComment(input): Promise<TikTokApiResponse<TikTokSocialJsonObject>>;
Parameters
Parameter Type
input TikTokCommentReplyInput
Returns

Promise\<TikTokApiResponse\<TikTokSocialJsonObject>>

Inherited from

TikTokSocialProviderClient.replyToBusinessComment


TikTokSocialClientOptions

Extended by

Properties

accessToken?
optional accessToken?: string;
baseUrl?
optional baseUrl?: string;
businessApiBaseUrl?
optional businessApiBaseUrl?: string;
businessApiVersion?
optional businessApiVersion?: string;
businessId?
optional businessId?: string;
clientKey?
optional clientKey?: string;
clientSecret?
optional clientSecret?: string;
fetch?
optional fetch?: {
  (input, init?): Promise<Response>;
  (input, init?): Promise<Response>;
};
Call Signature
(input, init?): Promise<Response>;

MDN Reference

Parameters
Parameter Type
input URL | RequestInfo
init? RequestInit
Returns

Promise\<Response>

Call Signature
(input, init?): Promise<Response>;

MDN Reference

Parameters
Parameter Type
input string | Request | URL
init? RequestInit
Returns

Promise\<Response>

openApiBaseUrl?
optional openApiBaseUrl?: string;
openId?
optional openId?: string;
providerClient?
optional providerClient?: TikTokSocialProviderClient;
retry?
optional retry?:
  | number
  | ProviderJsonRetryOptions;
signal?
optional signal?: AbortSignal;
timeoutMs?
optional timeoutMs?: number;

TikTokSocialJsonObject

Extended by

Indexable

[key: string]: TikTokSocialProviderExtensionValue

TikTokSocialProviderClient

Extended by

Methods

createBusinessComment()
createBusinessComment(input): Promise<TikTokApiResponse<TikTokSocialJsonObject>>;
Parameters
Parameter Type
input Omit\<TikTokCommentReplyInput, "commentId">
Returns

Promise\<TikTokApiResponse\<TikTokSocialJsonObject>>

fetchPostStatus()
fetchPostStatus(input): Promise<TikTokApiResponse<TikTokSocialJsonObject>>;
Parameters
Parameter Type
input TikTokPostStatusInput
Returns

Promise\<TikTokApiResponse\<TikTokSocialJsonObject>>

getUserInfo()
getUserInfo(fields?): Promise<TikTokApiResponse<TikTokUserInfo>>;
Parameters
Parameter Type
fields? string[]
Returns

Promise\<TikTokApiResponse\<TikTokUserInfo>>

listBusinessComments()
listBusinessComments(input): Promise<TikTokApiResponse<TikTokCommentList>>;
Parameters
Parameter Type
input TikTokBusinessCommentListInput
Returns

Promise\<TikTokApiResponse\<TikTokCommentList>>

listBusinessVideos()
listBusinessVideos(input?): Promise<TikTokApiResponse<TikTokSocialJsonObject>>;
Parameters
Parameter Type
input? TikTokBusinessVideoListInput
Returns

Promise\<TikTokApiResponse\<TikTokSocialJsonObject>>

listVideos()
listVideos(input?): Promise<TikTokApiResponse<TikTokVideoList>>;
Parameters
Parameter Type
input? TikTokVideoListInput
Returns

Promise\<TikTokApiResponse\<TikTokVideoList>>

queryResearchVideoComments()
queryResearchVideoComments(input): Promise<TikTokApiResponse<TikTokCommentList>>;
Parameters
Parameter Type
input TikTokResearchCommentListInput
Returns

Promise\<TikTokApiResponse\<TikTokCommentList>>

replyToBusinessComment()
replyToBusinessComment(input): Promise<TikTokApiResponse<TikTokSocialJsonObject>>;
Parameters
Parameter Type
input TikTokCommentReplyInput
Returns

Promise\<TikTokApiResponse\<TikTokSocialJsonObject>>


TikTokSocialProviderExtensionFields

Extends

Indexable

[key: string]: TikTokSocialProviderExtensionValue

TikTokSocialProviderResponse

Extends

Indexable

[key: string]: TikTokSocialProviderExtensionValue

TikTokUserInfo

Indexable

[key: string]: TikTokSocialProviderExtensionValue

Properties

user?
optional user?: {
[key: string]: TikTokSocialProviderExtensionValue;
  avatar_large_url?: string;
  avatar_url?: string;
  avatar_url_100?: string;
  bio_description?: string;
  display_name?: string;
  follower_count?: number;
  following_count?: number;
  is_verified?: boolean;
  likes_count?: number;
  open_id?: string;
  profile_deep_link?: string;
  union_id?: string;
  username?: string;
  video_count?: number;
};
Index Signature
[key: string]: TikTokSocialProviderExtensionValue
avatar_large_url?
optional avatar_large_url?: string;
avatar_url?
optional avatar_url?: string;
avatar_url_100?
optional avatar_url_100?: string;
bio_description?
optional bio_description?: string;
display_name?
optional display_name?: string;
follower_count?
optional follower_count?: number;
following_count?
optional following_count?: number;
is_verified?
optional is_verified?: boolean;
likes_count?
optional likes_count?: number;
open_id?
optional open_id?: string;
optional profile_deep_link?: string;
union_id?
optional union_id?: string;
username?
optional username?: string;
video_count?
optional video_count?: number;

TikTokVideo

Indexable

[key: string]: TikTokSocialProviderExtensionValue

Properties

comment_count?
optional comment_count?: number;
cover_image_url?
optional cover_image_url?: string;
create_time?
optional create_time?: number;
duration?
optional duration?: number;
embed_html?
optional embed_html?: string;
optional embed_link?: string;
height?
optional height?: number;
id?
optional id?: string;
like_count?
optional like_count?: number;
share_count?
optional share_count?: number;
share_url?
optional share_url?: string;
title?
optional title?: string;
video_description?
optional video_description?: string;
view_count?
optional view_count?: number;
width?
optional width?: number;

TikTokVideoList

Indexable

[key: string]: TikTokSocialProviderExtensionValue

Properties

cursor?
optional cursor?: number;
has_more?
optional has_more?: boolean;
video_list?
optional video_list?: TikTokVideo[];
videos?
optional videos?: TikTokVideo[];

TikTokVideoListInput

Properties

cursor?
optional cursor?: number;
fields?
optional fields?: string[];
maxCount?
optional maxCount?: number;

TikTokWebhookPayload

Indexable

[key: string]: TikTokSocialProviderExtensionValue

Properties

client_key?
optional client_key?: string;
create_time?
optional create_time?: number;
data?
optional data?: TikTokSocialJsonObject;
event?
optional event?: string;
event_id?
optional event_id?: string;
event_name?
optional event_name?: string;
user_open_id?
optional user_open_id?: string;

ValidateTikTokWebhookSignatureInput

Properties

clientSecret
clientSecret: string;
nowSeconds?
optional nowSeconds?: number;
rawBody
rawBody: string | Buffer<ArrayBufferLike>;
signatureHeader
signatureHeader: string;
toleranceSeconds?
optional toleranceSeconds?: number;

Type Aliases

TikTokSocialJsonPrimitive

type TikTokSocialJsonPrimitive = string | number | boolean | null;

TikTokSocialJsonValue

type TikTokSocialJsonValue =
  | TikTokSocialJsonPrimitive
  | TikTokSocialJsonObject
  | readonly TikTokSocialJsonValue[];

TikTokSocialProviderExtensionValue

type TikTokSocialProviderExtensionValue = TikTokSocialJsonValue | object | undefined;

TikTokSocialProviderPayload

type TikTokSocialProviderPayload = TikTokSocialJsonObject | object;

TikTokSocialProviderQuery

type TikTokSocialProviderQuery = Record<string, TikTokSocialProviderExtensionValue>;

Variables

TIKTOK_HOST_CLIENT_SUPPORT_SLICE

const TIKTOK_HOST_CLIENT_SUPPORT_SLICE: {
  allowedOperations: {
     alias: string;
     id: string;
     providerApi:   | "tiktok-open.v2.display"
        | "tiktok-open.v2.content-posting"
        | "tiktok-open.v2.research"
        | "tiktok-business.v1.3";
     providerPath: string;
     source: string;
     sourceUrl: string;
     target: string;
  }[];
  apiCoverage: {
     checkedAt: "2026-06-25";
     operationCatalog: "package:src/selected-operations.ts";
  };
  checkedAt: "2026-06-25";
  implementationStrategy: "no-official-sdk-rest-adapter";
  providerRestAdapterException: {
     checkedAt: "2026-06-25";
     checkedVersion: "1.1.3";
     defaultClientPolicy: "built-in-tiktok-rest-adapter";
     license: "Unlicense";
     reason: "The official JavaScript SDK only targets TikTok Business API generated clients. Its CommentsApi exposes the Business comment list/post surface, but it does not cover TikTok Developers Open API Display reads, Research API comment reads, Content Posting status reads, webhook verification, or the full mixed selected support surface required by this package.";
     result: "sdk-not-suitable-for-mixed-social-surface";
     sdkPackage: "tiktok-business-api-sdk-official";
     typedClientOverride: "TikTokSocialProviderClient";
  };
  sdkDecision: {
     auditedPackages: readonly [{
        package: "tiktok-business-api-sdk-official";
        reason: "CommentsApi covers a Business comment surface, but the package does not expose the full mixed TikTok Developers/Business support surface selected by this adapter.";
        source: "npm + tiktok/tiktok-business-api-sdk";
        status: "not-suitable";
        version: "1.1.3";
     }];
     notes: readonly ["TikTok OpenSDK is an official mobile Login/Share Kit, not a server-side JavaScript/TypeScript client for this selected support surface.", "The official TikTok Business API SDK is a broad Business API package with comment helpers, but it does not cover TikTok Developers Open API Display, Research API, Content Posting status, or webhook verification for this mixed adapter surface.", "This package therefore ships a built-in REST adapter for the selected operations and still accepts an injected TikTok provider client override."];
     viableOfficialSdk: false;
  };
  selectedOperationChecksum: string;
  selectedOperationChecksumAlgorithm: "sha256";
  selectedOperations: (
     | {
     api: "tiktok-open.v2.display";
     functionName: string;
     method: "GET";
     path: string;
     sourceUrl: string;
     uid: string;
   }
     | {
     api: "tiktok-open.v2.display";
     functionName: string;
     method: "POST";
     path: string;
     sourceUrl: string;
     uid: string;
   }
     | {
     api: "tiktok-open.v2.content-posting";
     functionName: string;
     method: "POST";
     path: string;
     sourceUrl: string;
     uid: string;
   }
     | {
     api: "tiktok-open.v2.research";
     functionName: string;
     method: "POST";
     path: string;
     sourceUrl: string;
     uid: string;
   }
     | {
     api: "tiktok-business.v1.3";
     functionName: string;
     method: "GET";
     path: string;
     sourceUrl: string;
     uid: string;
   }
     | {
     api: "tiktok-business.v1.3";
     functionName: string;
     method: "POST";
     path: string;
     sourceUrl: string;
     uid: string;
  })[];
  source: "official TikTok Developers and TikTok Business API docs";
  sourceVersion: "TikTok Open API v2 + Business API v1.3 public docs checked 2026-06-25";
};

Type Declaration

Name Type
allowedOperations { alias: string; id: string; providerApi: | "tiktok-open.v2.display" | "tiktok-open.v2.content-posting" | "tiktok-open.v2.research" | "tiktok-business.v1.3"; providerPath: string; source: string; sourceUrl: string; target: string; }[]
apiCoverage { checkedAt: "2026-06-25"; operationCatalog: "package:src/selected-operations.ts"; }
apiCoverage.checkedAt "2026-06-25"
apiCoverage.operationCatalog "package:src/selected-operations.ts"
checkedAt "2026-06-25"
implementationStrategy "no-official-sdk-rest-adapter"
providerRestAdapterException { checkedAt: "2026-06-25"; checkedVersion: "1.1.3"; defaultClientPolicy: "built-in-tiktok-rest-adapter"; license: "Unlicense"; reason: "The official JavaScript SDK only targets TikTok Business API generated clients. Its CommentsApi exposes the Business comment list/post surface, but it does not cover TikTok Developers Open API Display reads, Research API comment reads, Content Posting status reads, webhook verification, or the full mixed selected support surface required by this package."; result: "sdk-not-suitable-for-mixed-social-surface"; sdkPackage: "tiktok-business-api-sdk-official"; typedClientOverride: "TikTokSocialProviderClient"; }
providerRestAdapterException.checkedAt "2026-06-25"
providerRestAdapterException.checkedVersion "1.1.3"
providerRestAdapterException.defaultClientPolicy "built-in-tiktok-rest-adapter"
providerRestAdapterException.license "Unlicense"
providerRestAdapterException.reason "The official JavaScript SDK only targets TikTok Business API generated clients. Its CommentsApi exposes the Business comment list/post surface, but it does not cover TikTok Developers Open API Display reads, Research API comment reads, Content Posting status reads, webhook verification, or the full mixed selected support surface required by this package."
providerRestAdapterException.result "sdk-not-suitable-for-mixed-social-surface"
providerRestAdapterException.sdkPackage "tiktok-business-api-sdk-official"
providerRestAdapterException.typedClientOverride "TikTokSocialProviderClient"
sdkDecision { auditedPackages: readonly [{ package: "tiktok-business-api-sdk-official"; reason: "CommentsApi covers a Business comment surface, but the package does not expose the full mixed TikTok Developers/Business support surface selected by this adapter."; source: "npm + tiktok/tiktok-business-api-sdk"; status: "not-suitable"; version: "1.1.3"; }]; notes: readonly ["TikTok OpenSDK is an official mobile Login/Share Kit, not a server-side JavaScript/TypeScript client for this selected support surface.", "The official TikTok Business API SDK is a broad Business API package with comment helpers, but it does not cover TikTok Developers Open API Display, Research API, Content Posting status, or webhook verification for this mixed adapter surface.", "This package therefore ships a built-in REST adapter for the selected operations and still accepts an injected TikTok provider client override."]; viableOfficialSdk: false; }
sdkDecision.auditedPackages readonly [{ package: "tiktok-business-api-sdk-official"; reason: "CommentsApi covers a Business comment surface, but the package does not expose the full mixed TikTok Developers/Business support surface selected by this adapter."; source: "npm + tiktok/tiktok-business-api-sdk"; status: "not-suitable"; version: "1.1.3"; }]
sdkDecision.notes readonly ["TikTok OpenSDK is an official mobile Login/Share Kit, not a server-side JavaScript/TypeScript client for this selected support surface.", "The official TikTok Business API SDK is a broad Business API package with comment helpers, but it does not cover TikTok Developers Open API Display, Research API, Content Posting status, or webhook verification for this mixed adapter surface.", "This package therefore ships a built-in REST adapter for the selected operations and still accepts an injected TikTok provider client override."]
sdkDecision.viableOfficialSdk false
selectedOperationChecksum string
selectedOperationChecksumAlgorithm "sha256"
selectedOperations ( | { api: "tiktok-open.v2.display"; functionName: string; method: "GET"; path: string; sourceUrl: string; uid: string; } | { api: "tiktok-open.v2.display"; functionName: string; method: "POST"; path: string; sourceUrl: string; uid: string; } | { api: "tiktok-open.v2.content-posting"; functionName: string; method: "POST"; path: string; sourceUrl: string; uid: string; } | { api: "tiktok-open.v2.research"; functionName: string; method: "POST"; path: string; sourceUrl: string; uid: string; } | { api: "tiktok-business.v1.3"; functionName: string; method: "GET"; path: string; sourceUrl: string; uid: string; } | { api: "tiktok-business.v1.3"; functionName: string; method: "POST"; path: string; sourceUrl: string; uid: string; })[]
source "official TikTok Developers and TikTok Business API docs"
sourceVersion "TikTok Open API v2 + Business API v1.3 public docs checked 2026-06-25"

TIKTOK_SELECTED_OPERATION_COUNT

const TIKTOK_SELECTED_OPERATION_COUNT: number;

TIKTOK_SELECTED_OPERATIONS

const TIKTOK_SELECTED_OPERATIONS: (
  | {
  api: "tiktok-open.v2.display";
  functionName: string;
  method: "GET";
  path: string;
  sourceUrl: string;
  uid: string;
}
  | {
  api: "tiktok-open.v2.display";
  functionName: string;
  method: "POST";
  path: string;
  sourceUrl: string;
  uid: string;
}
  | {
  api: "tiktok-open.v2.content-posting";
  functionName: string;
  method: "POST";
  path: string;
  sourceUrl: string;
  uid: string;
}
  | {
  api: "tiktok-open.v2.research";
  functionName: string;
  method: "POST";
  path: string;
  sourceUrl: string;
  uid: string;
}
  | {
  api: "tiktok-business.v1.3";
  functionName: string;
  method: "GET";
  path: string;
  sourceUrl: string;
  uid: string;
}
  | {
  api: "tiktok-business.v1.3";
  functionName: string;
  method: "POST";
  path: string;
  sourceUrl: string;
  uid: string;
})[];

TIKTOK_SUPPORT_SLICE

const TIKTOK_SUPPORT_SLICE: {
  allowedOperations: {
     alias: string;
     id: string;
     providerApi:   | "tiktok-open.v2.display"
        | "tiktok-open.v2.content-posting"
        | "tiktok-open.v2.research"
        | "tiktok-business.v1.3";
     providerPath: string;
     source: string;
     sourceUrl: string;
     target: string;
  }[];
  apiCoverage: {
     checkedAt: "2026-06-25";
     operationCatalog: "package:src/selected-operations.ts";
  };
  checkedAt: "2026-06-25";
  implementationStrategy: "no-official-sdk-rest-adapter";
  providerRestAdapterException: {
     checkedAt: "2026-06-25";
     checkedVersion: "1.1.3";
     defaultClientPolicy: "built-in-tiktok-rest-adapter";
     license: "Unlicense";
     reason: "The official JavaScript SDK only targets TikTok Business API generated clients. Its CommentsApi exposes the Business comment list/post surface, but it does not cover TikTok Developers Open API Display reads, Research API comment reads, Content Posting status reads, webhook verification, or the full mixed selected support surface required by this package.";
     result: "sdk-not-suitable-for-mixed-social-surface";
     sdkPackage: "tiktok-business-api-sdk-official";
     typedClientOverride: "TikTokSocialProviderClient";
  };
  sdkDecision: {
     auditedPackages: readonly [{
        package: "tiktok-business-api-sdk-official";
        reason: "CommentsApi covers a Business comment surface, but the package does not expose the full mixed TikTok Developers/Business support surface selected by this adapter.";
        source: "npm + tiktok/tiktok-business-api-sdk";
        status: "not-suitable";
        version: "1.1.3";
     }];
     notes: readonly ["TikTok OpenSDK is an official mobile Login/Share Kit, not a server-side JavaScript/TypeScript client for this selected support surface.", "The official TikTok Business API SDK is a broad Business API package with comment helpers, but it does not cover TikTok Developers Open API Display, Research API, Content Posting status, or webhook verification for this mixed adapter surface.", "This package therefore ships a built-in REST adapter for the selected operations and still accepts an injected TikTok provider client override."];
     viableOfficialSdk: false;
  };
  selectedOperationChecksum: string;
  selectedOperationChecksumAlgorithm: "sha256";
  selectedOperations: (
     | {
     api: "tiktok-open.v2.display";
     functionName: string;
     method: "GET";
     path: string;
     sourceUrl: string;
     uid: string;
   }
     | {
     api: "tiktok-open.v2.display";
     functionName: string;
     method: "POST";
     path: string;
     sourceUrl: string;
     uid: string;
   }
     | {
     api: "tiktok-open.v2.content-posting";
     functionName: string;
     method: "POST";
     path: string;
     sourceUrl: string;
     uid: string;
   }
     | {
     api: "tiktok-open.v2.research";
     functionName: string;
     method: "POST";
     path: string;
     sourceUrl: string;
     uid: string;
   }
     | {
     api: "tiktok-business.v1.3";
     functionName: string;
     method: "GET";
     path: string;
     sourceUrl: string;
     uid: string;
   }
     | {
     api: "tiktok-business.v1.3";
     functionName: string;
     method: "POST";
     path: string;
     sourceUrl: string;
     uid: string;
  })[];
  source: "official TikTok Developers and TikTok Business API docs";
  sourceVersion: "TikTok Open API v2 + Business API v1.3 public docs checked 2026-06-25";
};

Type Declaration

Name Type
allowedOperations { alias: string; id: string; providerApi: | "tiktok-open.v2.display" | "tiktok-open.v2.content-posting" | "tiktok-open.v2.research" | "tiktok-business.v1.3"; providerPath: string; source: string; sourceUrl: string; target: string; }[]
apiCoverage { checkedAt: "2026-06-25"; operationCatalog: "package:src/selected-operations.ts"; }
apiCoverage.checkedAt "2026-06-25"
apiCoverage.operationCatalog "package:src/selected-operations.ts"
checkedAt "2026-06-25"
implementationStrategy "no-official-sdk-rest-adapter"
providerRestAdapterException { checkedAt: "2026-06-25"; checkedVersion: "1.1.3"; defaultClientPolicy: "built-in-tiktok-rest-adapter"; license: "Unlicense"; reason: "The official JavaScript SDK only targets TikTok Business API generated clients. Its CommentsApi exposes the Business comment list/post surface, but it does not cover TikTok Developers Open API Display reads, Research API comment reads, Content Posting status reads, webhook verification, or the full mixed selected support surface required by this package."; result: "sdk-not-suitable-for-mixed-social-surface"; sdkPackage: "tiktok-business-api-sdk-official"; typedClientOverride: "TikTokSocialProviderClient"; }
providerRestAdapterException.checkedAt "2026-06-25"
providerRestAdapterException.checkedVersion "1.1.3"
providerRestAdapterException.defaultClientPolicy "built-in-tiktok-rest-adapter"
providerRestAdapterException.license "Unlicense"
providerRestAdapterException.reason "The official JavaScript SDK only targets TikTok Business API generated clients. Its CommentsApi exposes the Business comment list/post surface, but it does not cover TikTok Developers Open API Display reads, Research API comment reads, Content Posting status reads, webhook verification, or the full mixed selected support surface required by this package."
providerRestAdapterException.result "sdk-not-suitable-for-mixed-social-surface"
providerRestAdapterException.sdkPackage "tiktok-business-api-sdk-official"
providerRestAdapterException.typedClientOverride "TikTokSocialProviderClient"
sdkDecision { auditedPackages: readonly [{ package: "tiktok-business-api-sdk-official"; reason: "CommentsApi covers a Business comment surface, but the package does not expose the full mixed TikTok Developers/Business support surface selected by this adapter."; source: "npm + tiktok/tiktok-business-api-sdk"; status: "not-suitable"; version: "1.1.3"; }]; notes: readonly ["TikTok OpenSDK is an official mobile Login/Share Kit, not a server-side JavaScript/TypeScript client for this selected support surface.", "The official TikTok Business API SDK is a broad Business API package with comment helpers, but it does not cover TikTok Developers Open API Display, Research API, Content Posting status, or webhook verification for this mixed adapter surface.", "This package therefore ships a built-in REST adapter for the selected operations and still accepts an injected TikTok provider client override."]; viableOfficialSdk: false; }
sdkDecision.auditedPackages readonly [{ package: "tiktok-business-api-sdk-official"; reason: "CommentsApi covers a Business comment surface, but the package does not expose the full mixed TikTok Developers/Business support surface selected by this adapter."; source: "npm + tiktok/tiktok-business-api-sdk"; status: "not-suitable"; version: "1.1.3"; }]
sdkDecision.notes readonly ["TikTok OpenSDK is an official mobile Login/Share Kit, not a server-side JavaScript/TypeScript client for this selected support surface.", "The official TikTok Business API SDK is a broad Business API package with comment helpers, but it does not cover TikTok Developers Open API Display, Research API, Content Posting status, or webhook verification for this mixed adapter surface.", "This package therefore ships a built-in REST adapter for the selected operations and still accepts an injected TikTok provider client override."]
sdkDecision.viableOfficialSdk false
selectedOperationChecksum string
selectedOperationChecksumAlgorithm "sha256"
selectedOperations ( | { api: "tiktok-open.v2.display"; functionName: string; method: "GET"; path: string; sourceUrl: string; uid: string; } | { api: "tiktok-open.v2.display"; functionName: string; method: "POST"; path: string; sourceUrl: string; uid: string; } | { api: "tiktok-open.v2.content-posting"; functionName: string; method: "POST"; path: string; sourceUrl: string; uid: string; } | { api: "tiktok-open.v2.research"; functionName: string; method: "POST"; path: string; sourceUrl: string; uid: string; } | { api: "tiktok-business.v1.3"; functionName: string; method: "GET"; path: string; sourceUrl: string; uid: string; } | { api: "tiktok-business.v1.3"; functionName: string; method: "POST"; path: string; sourceUrl: string; uid: string; })[]
source "official TikTok Developers and TikTok Business API docs"
sourceVersion "TikTok Open API v2 + Business API v1.3 public docs checked 2026-06-25"

Functions

createTikTokBusinessCommentReply()

function createTikTokBusinessCommentReply(input, defaultBusinessId?): {
[k: string]: TikTokSocialProviderExtensionValue;
};

Parameters

Parameter Type
input TikTokCommentReplyInput
defaultBusinessId? string

Returns

{
[k: string]: TikTokSocialProviderExtensionValue;
}

createTikTokRestProviderClient()

function createTikTokRestProviderClient(options): TikTokSocialProviderClient;

Parameters

Parameter Type
options TikTokSocialClientOptions

Returns

TikTokSocialProviderClient


createTikTokSocialClient()

function createTikTokSocialClient(options?): TikTokSocialClient;

Parameters

Parameter Type
options? TikTokSocialClientOptions

Returns

TikTokSocialClient


createTikTokSocialLiveChecks()

function createTikTokSocialLiveChecks(options): {
  description: string;
  id: string;
  requiredCredentialIds: string[];
  run: Promise<{
     details: {
        displayName: string;
        openId: string;
        username: string;
     };
  }>;
}[];

Parameters

Parameter Type
options TikTokLiveCheckOptions

Returns

{ description: string; id: string; requiredCredentialIds: string[]; run: Promise\<{ details: { displayName: string; openId: string; username: string; }; }>; }[]


getTikTokGeneralDmSupport()

function getTikTokGeneralDmSupport(): TikTokGeneralDmSupport;

Returns

TikTokGeneralDmSupport


parseTikTokSignatureHeader()

function parseTikTokSignatureHeader(header): TikTokSignatureParts;

Parameters

Parameter Type
header string

Returns

TikTokSignatureParts


parseTikTokWebhook()

function parseTikTokWebhook(request, options?): Promise<TikTokSignedWebhook>;

Parameters

Parameter Type
request Request
options? ParseTikTokWebhookOptions

Returns

Promise\<TikTokSignedWebhook>


tiktokSocialCredentialStatuses()

function tiktokSocialCredentialStatuses(input): {
  expiresAt?: string;
  message?: string;
  providerPackageId?: string;
  requirementId: string;
  scopes?: string[];
  state:   | "required"
     | "configured"
     | "permission-blocked"
     | "not-required"
     | "missing"
     | "expired"
     | "insufficient-scope"
     | "unavailable";
}[];

Parameters

Parameter Type
input TikTokCredentialStatusInput

Returns

{ expiresAt?: string; message?: string; providerPackageId?: string; requirementId: string; scopes?: string[]; state: | "required" | "configured" | "permission-blocked" | "not-required" | "missing" | "expired" | "insufficient-scope" | "unavailable"; }[]


validateTikTokWebhookSignature()

function validateTikTokWebhookSignature(input): boolean;

Parameters

Parameter Type
input ValidateTikTokWebhookSignatureInput

Returns

boolean

References

tiktokSocialProviderManifest

Re-exports tiktokSocialProviderManifest