main 7382202ec866 cached
4644 files
8.5 MB
2.6M tokens
9141 symbols
1 requests
Copy disabled (too large) Download .txt
Showing preview only (10,787K chars total). Download the full file to get everything.
Repository: fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance
Branch: main
Commit: 7382202ec866
Files: 4644
Total size: 8.5 MB

Directory structure:
gitextract_ceduv36k/

├── .editorconfig
├── .gitee/
│   ├── ISSUE_TEMPLATE.zh-CN.md
│   └── PULL_REQUEST_TEMPLATE.zh-CN.md
├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── 1_bug_report.md
│   │   ├── 2_feature_request.md
│   │   └── 3_custom.md
│   ├── PULL_REQUEST_TEMPLATE/
│   │   ├── 1_bugfix.md
│   │   └── 2_enhancement.md
│   └── workflows/
│       ├── codeql-analysis.yml
│       └── super-linter.yml
├── .gitignore
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── SKIT.FlurlHttpClient.ByteDance.slnx
├── docs/
│   ├── DouyinOpen/
│   │   ├── Advanced_Dispose.md
│   │   ├── Advanced_HttpClient.md
│   │   ├── Advanced_HttpClientFactory.md
│   │   ├── Advanced_Interceptor.md
│   │   ├── Advanced_JsonSerializer.md
│   │   ├── Basic_EventDeserialization.md
│   │   ├── Basic_EventSignatureVerification.md
│   │   ├── Basic_Extensions.md
│   │   ├── Basic_GoodLifeSPIDecryption.md
│   │   ├── Basic_MobileNumberDecryption.md
│   │   ├── Basic_ModelDefinition.md
│   │   ├── Basic_Parameters.md
│   │   ├── Migration_V3.md
│   │   └── README.md
│   ├── DouyinShop/
│   │   └── README.md
│   ├── MicroApp/
│   │   ├── Advanced_Dispose.md
│   │   ├── Advanced_HttpClient.md
│   │   ├── Advanced_HttpClientFactory.md
│   │   ├── Advanced_Interceptor.md
│   │   ├── Advanced_JsonSerializer.md
│   │   ├── Basic_EventDeserialization.md
│   │   ├── Basic_EventSignatureVerification.md
│   │   ├── Basic_Extensions.md
│   │   ├── Basic_ModelDefinition.md
│   │   ├── Migration_V3.md
│   │   └── README.md
│   ├── TikTokGlobal/
│   │   ├── Basic_ModelDefinition.md
│   │   └── README.md
│   └── TikTokGlobalShop/
│       ├── Basic_LegacyAPI.md
│       ├── Basic_ModelDefinition.md
│       └── README.md
├── src/
│   ├── SKIT.FlurlHttpClient.ByteDance.DouyinOpen/
│   │   ├── DouyinOpenClient.cs
│   │   ├── DouyinOpenClientBuilder.cs
│   │   ├── DouyinOpenClientOptions.cs
│   │   ├── DouyinOpenEndpoints.cs
│   │   ├── DouyinOpenEvent.cs
│   │   ├── DouyinOpenException.cs
│   │   ├── DouyinOpenRequest.cs
│   │   ├── DouyinOpenResponse.cs
│   │   ├── Events/
│   │   │   ├── GoodLife/
│   │   │   │   ├── LifeMemberJoinEvent.cs
│   │   │   │   ├── LifeMemberLeaveEvent.cs
│   │   │   │   ├── LifeProductAuditEvent.cs
│   │   │   │   ├── LifeTradeCertificateNotifyEvent.cs
│   │   │   │   └── LifeTradeOrderNotifyEvent.cs
│   │   │   ├── IM/
│   │   │   │   ├── EnterGroupAuditChangeEvent.cs
│   │   │   │   ├── GroupFansEventEvent.cs
│   │   │   │   ├── IMAuthorizeEvent.cs
│   │   │   │   ├── IMEnterDirectMessageEvent.cs
│   │   │   │   ├── IMGroupReceiveMessageEvent.cs
│   │   │   │   ├── IMGroupSendMessageEvent.cs
│   │   │   │   ├── IMReceiveMessageEvent.cs
│   │   │   │   └── IMSendMessageEvent.cs
│   │   │   ├── Interaction/
│   │   │   │   ├── NewFollowActionEvent.cs
│   │   │   │   └── NewVideoDiggEvent.cs
│   │   │   ├── UnionAuth/
│   │   │   │   ├── UnionAuthInfoForBEvent.cs
│   │   │   │   └── UnionAuthInfoForCEvent.cs
│   │   │   └── Webhook/
│   │   │       ├── AuthorizeEvent.cs
│   │   │       ├── CreateVideoEvent.cs
│   │   │       ├── DialogPhoneEvent.cs
│   │   │       ├── ItemCommentReplyEvent.cs
│   │   │       ├── PersonalTabContactEvent.cs
│   │   │       ├── ReceiveMessageEvent.cs
│   │   │       ├── UnauthorizeEvent.cs
│   │   │       ├── VerifyWebhookEvent.cs
│   │   │       └── WebsiteContactEvent.cs
│   │   ├── Extensions/
│   │   │   ├── DouyinOpenClientDecryptionExtensions.cs
│   │   │   ├── DouyinOpenClientEventExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiAppsAuthExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiAppsTradeExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinAuthExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinIMExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinInteractiveExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinRoleExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinSchemaExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinUserExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinVideoExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiIMExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiIndustryExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiMatchExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteDataExternalExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteDevToolExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteDiscoveryExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteEnterpriseExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteEventExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteFansExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteGoodLifeExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteHotSearchExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteIMExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteImageExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteItemExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteJSExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteMarketServiceExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteMessageExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteNamekExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteOAuthExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteOpenExtensions.cs
│   │   │   ├── DouyinOpenClientExecutePOIExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteRoomExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteSandboxExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteShareIdExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteStarExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteTaskExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteToolExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteVideoExtensions.cs
│   │   │   ├── DouyinOpenClientParameterExtensions.cs
│   │   │   └── DouyinOpenClientSPIExtensions.cs
│   │   ├── Models/
│   │   │   ├── ApiAppsAuth/
│   │   │   │   ├── AppsAuthGetOpenIdByCV1Request.cs
│   │   │   │   └── AppsAuthGetOpenIdByCV1Response.cs
│   │   │   ├── ApiAppsTrade/
│   │   │   │   ├── AppsTradeBookCreateBookV2Request.cs
│   │   │   │   ├── AppsTradeBookCreateBookV2Response.cs
│   │   │   │   ├── AppsTradeBookMerchantCancelBookV2Request.cs
│   │   │   │   ├── AppsTradeBookMerchantCancelBookV2Response.cs
│   │   │   │   ├── AppsTradeBookQueryBookV2Request.cs
│   │   │   │   ├── AppsTradeBookQueryBookV2Response.cs
│   │   │   │   ├── AppsTradeBookResultCallbackV2Request.cs
│   │   │   │   ├── AppsTradeBookResultCallbackV2Response.cs
│   │   │   │   ├── AppsTradeBookUserCancelBookV2Request.cs
│   │   │   │   ├── AppsTradeBookUserCancelBookV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentDeliveryPrepareV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentDeliveryPrepareV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentDeliveryVerifyV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentDeliveryVerifyV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentOrderCanUseV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentOrderCanUseV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentPushDeliveryV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentPushDeliveryV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentQueryUserCertificatesV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentQueryUserCertificatesV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentVerifyCancelV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentVerifyCancelV2Response.cs
│   │   │   │   ├── AppsTradeOrderCloseOrderV2Request.cs
│   │   │   │   ├── AppsTradeOrderCloseOrderV2Response.cs
│   │   │   │   ├── AppsTradeOrderCreateOrderV2Request.cs
│   │   │   │   ├── AppsTradeOrderCreateOrderV2Response.cs
│   │   │   │   ├── AppsTradeOrderQueryCPSV2Request.cs
│   │   │   │   ├── AppsTradeOrderQueryCPSV2Response.cs
│   │   │   │   ├── AppsTradeOrderQueryItemOrderInfoV2Request.cs
│   │   │   │   ├── AppsTradeOrderQueryItemOrderInfoV2Response.cs
│   │   │   │   ├── AppsTradeOrderQueryOrderV2Request.cs
│   │   │   │   ├── AppsTradeOrderQueryOrderV2Response.cs
│   │   │   │   ├── AppsTradeRefundCreateRefundV2Request.cs
│   │   │   │   ├── AppsTradeRefundCreateRefundV2Response.cs
│   │   │   │   ├── AppsTradeRefundMerchantAuditCallbackV2Request.cs
│   │   │   │   ├── AppsTradeRefundMerchantAuditCallbackV2Response.cs
│   │   │   │   ├── AppsTradeRefundQueryRefundV2Request.cs
│   │   │   │   ├── AppsTradeRefundQueryRefundV2Response.cs
│   │   │   │   ├── AppsTradeSettleCreateSettleV2Request.cs
│   │   │   │   ├── AppsTradeSettleCreateSettleV2Response.cs
│   │   │   │   ├── AppsTradeSettleQuerySettleV2Request.cs
│   │   │   │   └── AppsTradeSettleQuerySettleV2Response.cs
│   │   │   ├── ApiDouyinAuth/
│   │   │   │   ├── DouyinAuthGetOpenIdByBV1Request.cs
│   │   │   │   ├── DouyinAuthGetOpenIdByBV1Response.cs
│   │   │   │   ├── DouyinAuthGetOpenIdByCV1Request.cs
│   │   │   │   ├── DouyinAuthGetOpenIdByCV1Response.cs
│   │   │   │   ├── DouyinAuthGetRelatedIdV1Request.cs
│   │   │   │   └── DouyinAuthGetRelatedIdV1Response.cs
│   │   │   ├── ApiDouyinIM/
│   │   │   │   ├── DouyinIMDeleteAppletTemplateV1Request.cs
│   │   │   │   ├── DouyinIMDeleteAppletTemplateV1Response.cs
│   │   │   │   ├── DouyinIMGetAppletTemplateV1Request.cs
│   │   │   │   ├── DouyinIMGetAppletTemplateV1Response.cs
│   │   │   │   ├── DouyinIMSetAppletTemplateV1Request.cs
│   │   │   │   └── DouyinIMSetAppletTemplateV1Response.cs
│   │   │   ├── ApiDouyinInteractive/
│   │   │   │   ├── DouyinInteractiveIntentionLogListV1Request.cs
│   │   │   │   └── DouyinInteractiveIntentionLogListV1Response.cs
│   │   │   ├── ApiDouyinRole/
│   │   │   │   ├── DouyinRoleCheckV1Request.cs
│   │   │   │   └── DouyinRoleCheckV1Response.cs
│   │   │   ├── ApiDouyinSchema/
│   │   │   │   ├── DouyinSchemaGetChatV1Request.cs
│   │   │   │   ├── DouyinSchemaGetChatV1Response.cs
│   │   │   │   ├── DouyinSchemaGetItemInfoV1Request.cs
│   │   │   │   ├── DouyinSchemaGetItemInfoV1Response.cs
│   │   │   │   ├── DouyinSchemaGetLiveV1Request.cs
│   │   │   │   ├── DouyinSchemaGetLiveV1Response.cs
│   │   │   │   ├── DouyinSchemaGetShareV1Request.cs
│   │   │   │   ├── DouyinSchemaGetShareV1Response.cs
│   │   │   │   ├── DouyinSchemaGetUserProfileV1Request.cs
│   │   │   │   └── DouyinSchemaGetUserProfileV1Response.cs
│   │   │   ├── ApiDouyinUser/
│   │   │   │   ├── DouyinUserFansDataV1Request.cs
│   │   │   │   └── DouyinUserFansDataV1Response.cs
│   │   │   ├── ApiDouyinVideo/
│   │   │   │   ├── DouyinVideoBasicInfoV1Request.cs
│   │   │   │   ├── DouyinVideoBasicInfoV1Response.cs
│   │   │   │   ├── DouyinVideoCreateVideoV1Request.cs
│   │   │   │   ├── DouyinVideoCreateVideoV1Response.cs
│   │   │   │   ├── DouyinVideoDataV1Request.cs
│   │   │   │   ├── DouyinVideoDataV1Response.cs
│   │   │   │   ├── DouyinVideoListV1Request.cs
│   │   │   │   ├── DouyinVideoListV1Response.cs
│   │   │   │   ├── DouyinVideoUploadVideoV1Request.cs
│   │   │   │   ├── DouyinVideoUploadVideoV1Response.cs
│   │   │   │   ├── Iframe/
│   │   │   │   │   ├── DouyinVideoGetIframeByItemV1Request.cs
│   │   │   │   │   ├── DouyinVideoGetIframeByItemV1Response.cs
│   │   │   │   │   ├── DouyinVideoGetIframeByVideoV1Request.cs
│   │   │   │   │   └── DouyinVideoGetIframeByVideoV1Response.cs
│   │   │   │   ├── Image/
│   │   │   │   │   ├── DouyinVideoCreateImageTextV1Request.cs
│   │   │   │   │   ├── DouyinVideoCreateImageTextV1Response.cs
│   │   │   │   │   ├── DouyinVideoUploadImageV1Request.cs
│   │   │   │   │   └── DouyinVideoUploadImageV1Response.cs
│   │   │   │   └── Part/
│   │   │   │       ├── DouyinVideoCompleteVideoPartUploadV1Request.cs
│   │   │   │       ├── DouyinVideoCompleteVideoPartUploadV1Response.cs
│   │   │   │       ├── DouyinVideoInitVideoPartUploadV1Request.cs
│   │   │   │       ├── DouyinVideoInitVideoPartUploadV1Response.cs
│   │   │   │       ├── DouyinVideoUploadVideoPartV1Request.cs
│   │   │   │       └── DouyinVideoUploadVideoPartV1Response.cs
│   │   │   ├── ApiIM/
│   │   │   │   ├── IMMessageResourcesRequest.cs
│   │   │   │   └── IMMessageResourcesResponse.cs
│   │   │   ├── ApiIndustry/
│   │   │   │   ├── AppTestRelation/
│   │   │   │   │   ├── IndustrySolutionAddAppTestRelationV1Request.cs
│   │   │   │   │   ├── IndustrySolutionAddAppTestRelationV1Response.cs
│   │   │   │   │   ├── IndustrySolutionDeleteAppTestRelationV1Request.cs
│   │   │   │   │   ├── IndustrySolutionDeleteAppTestRelationV1Response.cs
│   │   │   │   │   ├── IndustrySolutionQueryAppTestRelationV1Request.cs
│   │   │   │   │   └── IndustrySolutionQueryAppTestRelationV1Response.cs
│   │   │   │   └── Implementation/
│   │   │   │       ├── IndustrySolutionQueryImplementationV1Request.cs
│   │   │   │       ├── IndustrySolutionQueryImplementationV1Response.cs
│   │   │   │       ├── IndustrySolutionSetImplementationV1Request.cs
│   │   │   │       └── IndustrySolutionSetImplementationV1Response.cs
│   │   │   ├── ApiMatch/
│   │   │   │   ├── MatchTaskboxAgencyQueryBillLinkV2Request.cs
│   │   │   │   ├── MatchTaskboxAgencyQueryBillLinkV2Response.cs
│   │   │   │   ├── MatchTaskboxAgencyQueryVideoSummaryDataV2Request.cs
│   │   │   │   ├── MatchTaskboxAgencyQueryVideoSummaryDataV2Response.cs
│   │   │   │   ├── MatchTaskboxChangeUserBindAgentV1Request.cs
│   │   │   │   ├── MatchTaskboxChangeUserBindAgentV1Response.cs
│   │   │   │   ├── MatchTaskboxGenerateAgentLinkV1Request.cs
│   │   │   │   ├── MatchTaskboxGenerateAgentLinkV1Response.cs
│   │   │   │   ├── MatchTaskboxGetAgencyUserBindRecordV1Request.cs
│   │   │   │   ├── MatchTaskboxGetAgencyUserBindRecordV1Response.cs
│   │   │   │   ├── MatchTaskboxQueryAppTaskIdV1Request.cs
│   │   │   │   ├── MatchTaskboxQueryAppTaskIdV1Response.cs
│   │   │   │   ├── MatchTaskboxQueryTaskInfoV1Request.cs
│   │   │   │   ├── MatchTaskboxQueryTaskInfoV1Response.cs
│   │   │   │   ├── MatchTaskboxQueryTaskVideoStatusV2Request.cs
│   │   │   │   ├── MatchTaskboxQueryTaskVideoStatusV2Response.cs
│   │   │   │   ├── MatchTaskboxQueryViolateTalentListV2Request.cs
│   │   │   │   ├── MatchTaskboxQueryViolateTalentListV2Response.cs
│   │   │   │   ├── MatchTaskboxSaveAgentV1Request.cs
│   │   │   │   └── MatchTaskboxSaveAgentV1Response.cs
│   │   │   ├── DataExternal/
│   │   │   │   ├── Anchor/
│   │   │   │   │   ├── DataExternalAnchorMpItemClickDistributionRequest.cs
│   │   │   │   │   └── DataExternalAnchorMpItemClickDistributionResponse.cs
│   │   │   │   ├── Billboard/
│   │   │   │   │   ├── Amusement/
│   │   │   │   │   │   ├── DataExternalBillboardAmusementNewRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardAmusementNewResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardAmusementOverallRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardAmusementOverallResponse.cs
│   │   │   │   │   ├── Car/
│   │   │   │   │   │   ├── DataExternalBillboardCarCommentRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarCommentResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarDriverRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarDriverResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarOverallRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarOverallResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarPlayRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarPlayResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarUseRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardCarUseResponse.cs
│   │   │   │   │   ├── Cospa/
│   │   │   │   │   │   ├── DataExternalBillboardCospaBrainCavityRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaBrainCavityResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaNewRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaNewResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaOutshotRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaOutshotResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaOverallRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaOverallResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaPaintingRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaPaintingResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaQingmanRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaQingmanResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaVoiceRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardCospaVoiceResponse.cs
│   │   │   │   │   ├── Drama/
│   │   │   │   │   │   ├── DataExternalBillboardDramaOverallRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardDramaOverallResponse.cs
│   │   │   │   │   ├── Food/
│   │   │   │   │   │   ├── DataExternalBillboardFoodNewRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodNewResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodOverallRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodOverallResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodShopRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodShopResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodTutorialRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardFoodTutorialResponse.cs
│   │   │   │   │   ├── Game/
│   │   │   │   │   │   ├── DataExternalBillboardGameConsoleRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardGameConsoleResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardGameInformationRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardGameInformationResponse.cs
│   │   │   │   │   ├── HotVideo/
│   │   │   │   │   │   ├── DataExternalBillboardHotVideoRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardHotVideoResponse.cs
│   │   │   │   │   ├── Live/
│   │   │   │   │   │   ├── DataExternalBillboardLiveRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardLiveResponse.cs
│   │   │   │   │   ├── Music/
│   │   │   │   │   │   ├── DataExternalBillboardMusicHotRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardMusicHotResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardMusicOriginalRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardMusicOriginalResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardMusicSoarRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardMusicSoarResponse.cs
│   │   │   │   │   ├── Prop/
│   │   │   │   │   │   ├── DataExternalBillboardPropRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardPropResponse.cs
│   │   │   │   │   ├── Sport/
│   │   │   │   │   │   ├── DataExternalBillboardSportBasketballRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportBasketballResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportComprehensiveRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportComprehensiveResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportCultureRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportCultureResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportFitnessRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportFitnessResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportOutdoorsRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportOutdoorsResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportOverallRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportOverallResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportSoccerRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportSoccerResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportTableTennisRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardSportTableTennisResponse.cs
│   │   │   │   │   ├── Stars/
│   │   │   │   │   │   ├── DataExternalBillboardStarsRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardStarsResponse.cs
│   │   │   │   │   ├── Topic/
│   │   │   │   │   │   ├── DataExternalBillboardTopicRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardTopicResponse.cs
│   │   │   │   │   └── Travel/
│   │   │   │   │       ├── DataExternalBillboardTravelNewRequest.cs
│   │   │   │   │       ├── DataExternalBillboardTravelNewResponse.cs
│   │   │   │   │       ├── DataExternalBillboardTravelOverallRequest.cs
│   │   │   │   │       └── DataExternalBillboardTravelOverallResponse.cs
│   │   │   │   ├── Fans/
│   │   │   │   │   ├── DataExternalFansCommentRequest.cs
│   │   │   │   │   ├── DataExternalFansCommentResponse.cs
│   │   │   │   │   ├── DataExternalFansFavouriteRequest.cs
│   │   │   │   │   ├── DataExternalFansFavouriteResponse.cs
│   │   │   │   │   ├── DataExternalFansSourceRequest.cs
│   │   │   │   │   └── DataExternalFansSourceResponse.cs
│   │   │   │   ├── Item/
│   │   │   │   │   ├── DataExternalItemBaseRequest.cs
│   │   │   │   │   ├── DataExternalItemBaseResponse.cs
│   │   │   │   │   ├── DataExternalItemCommentRequest.cs
│   │   │   │   │   ├── DataExternalItemCommentResponse.cs
│   │   │   │   │   ├── DataExternalItemLikeRequest.cs
│   │   │   │   │   ├── DataExternalItemLikeResponse.cs
│   │   │   │   │   ├── DataExternalItemPlayRequest.cs
│   │   │   │   │   ├── DataExternalItemPlayResponse.cs
│   │   │   │   │   ├── DataExternalItemShareRequest.cs
│   │   │   │   │   └── DataExternalItemShareResponse.cs
│   │   │   │   ├── POI/
│   │   │   │   │   ├── DataExternalPOIBaseRequest.cs
│   │   │   │   │   ├── DataExternalPOIBaseResponse.cs
│   │   │   │   │   ├── DataExternalPOIBillboardRequest.cs
│   │   │   │   │   ├── DataExternalPOIBillboardResponse.cs
│   │   │   │   │   ├── DataExternalPOIClaimListRequest.cs
│   │   │   │   │   ├── DataExternalPOIClaimListResponse.cs
│   │   │   │   │   ├── DataExternalPOIServiceBaseRequest.cs
│   │   │   │   │   ├── DataExternalPOIServiceBaseResponse.cs
│   │   │   │   │   ├── DataExternalPOIServiceUserRequest.cs
│   │   │   │   │   ├── DataExternalPOIServiceUserResponse.cs
│   │   │   │   │   ├── DataExternalPOIUserRequest.cs
│   │   │   │   │   └── DataExternalPOIUserResponse.cs
│   │   │   │   └── User/
│   │   │   │       ├── DataExternalUserCommentRequest.cs
│   │   │   │       ├── DataExternalUserCommentResponse.cs
│   │   │   │       ├── DataExternalUserFansRequest.cs
│   │   │   │       ├── DataExternalUserFansResponse.cs
│   │   │   │       ├── DataExternalUserItemRequest.cs
│   │   │   │       ├── DataExternalUserItemResponse.cs
│   │   │   │       ├── DataExternalUserLikeRequest.cs
│   │   │   │       ├── DataExternalUserLikeResponse.cs
│   │   │   │       ├── DataExternalUserProfileRequest.cs
│   │   │   │       ├── DataExternalUserProfileResponse.cs
│   │   │   │       ├── DataExternalUserShareRequest.cs
│   │   │   │       └── DataExternalUserShareResponse.cs
│   │   │   ├── DevTool/
│   │   │   │   ├── DevToolMicroAppIsLegalRequest.cs
│   │   │   │   └── DevToolMicroAppIsLegalResponse.cs
│   │   │   ├── Discovery/
│   │   │   │   ├── DiscoveryEntertainmentRankItemRequest.cs
│   │   │   │   ├── DiscoveryEntertainmentRankItemResponse.cs
│   │   │   │   ├── DiscoveryEntertainmentRankVersionRequest.cs
│   │   │   │   └── DiscoveryEntertainmentRankVersionResponse.cs
│   │   │   ├── Enterprise/
│   │   │   │   └── Media/
│   │   │   │       ├── EnterpriseMediaDeleteRequest.cs
│   │   │   │       ├── EnterpriseMediaDeleteResponse.cs
│   │   │   │       ├── EnterpriseMediaListRequest.cs
│   │   │   │       ├── EnterpriseMediaListResponse.cs
│   │   │   │       ├── EnterpriseMediaTempUploadRequest.cs
│   │   │   │       ├── EnterpriseMediaTempUploadResponse.cs
│   │   │   │       ├── EnterpriseMediaUploadRequest.cs
│   │   │   │       └── EnterpriseMediaUploadResponse.cs
│   │   │   ├── Event/
│   │   │   │   ├── EventStatusListRequest.cs
│   │   │   │   ├── EventStatusListResponse.cs
│   │   │   │   ├── EventStatusUpdateRequest.cs
│   │   │   │   └── EventStatusUpdateResponse.cs
│   │   │   ├── Fans/
│   │   │   │   ├── FansCheckRequest.cs
│   │   │   │   └── FansCheckResponse.cs
│   │   │   ├── GoodLife/
│   │   │   │   ├── Aftersale/
│   │   │   │   │   ├── Audit/
│   │   │   │   │   │   ├── GoodLifeAftersaleAuditNotifyV1Request.cs
│   │   │   │   │   │   └── GoodLifeAftersaleAuditNotifyV1Response.cs
│   │   │   │   │   └── Order/
│   │   │   │   │       ├── GoodLifeAftersaleOrderApplyRefundV1Request.cs
│   │   │   │   │       ├── GoodLifeAftersaleOrderApplyRefundV1Response.cs
│   │   │   │   │       ├── GoodLifeAftersaleOrderMerchantRejectV1Request.cs
│   │   │   │   │       └── GoodLifeAftersaleOrderMerchantRejectV1Response.cs
│   │   │   │   ├── Fulfilment/
│   │   │   │   │   ├── Certificate/
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateCancelV1Request.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateCancelV1Response.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateGetV1Request.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateGetV1Response.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificatePrepareV1Request.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificatePrepareV1Response.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateVerifyRecordQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateVerifyRecordQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateVerifyV1Request.cs
│   │   │   │   │   │   └── GoodLifeFulfilmentCertificateVerifyV1Response.cs
│   │   │   │   │   ├── Distribution/
│   │   │   │   │   │   ├── GoodLifeFulfilmentDistributionOrderSyncStatusV1Request.cs
│   │   │   │   │   │   └── GoodLifeFulfilmentDistributionOrderSyncStatusV1Response.cs
│   │   │   │   │   └── ReserveCode/
│   │   │   │   │       ├── GoodLifeFulfilmentReserveCodeBatchImportV1Request.cs
│   │   │   │   │       ├── GoodLifeFulfilmentReserveCodeBatchImportV1Response.cs
│   │   │   │   │       ├── GoodLifeFulfilmentReserveCodeBindOrderInfoV1Request.cs
│   │   │   │   │       └── GoodLifeFulfilmentReserveCodeBindOrderInfoV1Response.cs
│   │   │   │   ├── Goods/
│   │   │   │   │   ├── Calendar/
│   │   │   │   │   │   ├── GoodLifeGoodsCalendarAmountGroupSaveV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsCalendarAmountGroupSaveV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsCalendarStockGroupSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsCalendarStockGroupSaveV1Response.cs
│   │   │   │   │   ├── Category/
│   │   │   │   │   │   ├── GoodLifeGoodsCategoryGetV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsCategoryGetV1Response.cs
│   │   │   │   │   ├── Product/
│   │   │   │   │   │   ├── GoodLifeGoodsProductDraftGetV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductDraftGetV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductDraftQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductDraftQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductFreeAuditV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductFreeAuditV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOnlineGetV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOnlineGetV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOnlineQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOnlineQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOperateV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOperateV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsProductSaveV1Response.cs
│   │   │   │   │   ├── SKU/
│   │   │   │   │   │   ├── GoodLifeGoodsSKUBatchSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsSKUBatchSaveV1Response.cs
│   │   │   │   │   ├── SPU/
│   │   │   │   │   │   ├── GoodLifeGoodsSPUSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsSPUSaveV1Response.cs
│   │   │   │   │   ├── Stock/
│   │   │   │   │   │   ├── GoodLifeGoodsStockSyncV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsStockSyncV1Response.cs
│   │   │   │   │   └── Template/
│   │   │   │   │       ├── GoodLifeGoodsTemplateGetV1Request.cs
│   │   │   │   │       └── GoodLifeGoodsTemplateGetV1Response.cs
│   │   │   │   ├── Member/
│   │   │   │   │   ├── GoodLifeMemberUnionIdGetV1Request.cs
│   │   │   │   │   ├── GoodLifeMemberUnionIdGetV1Response.cs
│   │   │   │   │   ├── GoodLifeMemberUserUpdateV1Request.cs
│   │   │   │   │   └── GoodLifeMemberUserUpdateV1Response.cs
│   │   │   │   ├── POI/
│   │   │   │   │   ├── Crowd/
│   │   │   │   │   │   ├── GoodLifePOICrowdSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifePOICrowdSaveV1Response.cs
│   │   │   │   │   ├── GoodLifePOIClaimV1Request.cs
│   │   │   │   │   ├── GoodLifePOIClaimV1Response.cs
│   │   │   │   │   ├── GoodLifePOIDecorateV1Request.cs
│   │   │   │   │   ├── GoodLifePOIDecorateV1Response.cs
│   │   │   │   │   ├── GoodLifePOIMatchRelationQueryV1Request.cs
│   │   │   │   │   ├── GoodLifePOIMatchRelationQueryV1Response.cs
│   │   │   │   │   ├── GoodLifePOIMatchTaskQueryV1Request.cs
│   │   │   │   │   ├── GoodLifePOIMatchTaskQueryV1Response.cs
│   │   │   │   │   ├── GoodLifePOIMatchTaskSubmitV1Request.cs
│   │   │   │   │   ├── GoodLifePOIMatchTaskSubmitV1Response.cs
│   │   │   │   │   ├── GoodLifePOISyncV1Request.cs
│   │   │   │   │   ├── GoodLifePOISyncV1Response.cs
│   │   │   │   │   ├── GoodLifePOITaskQueryV1Request.cs
│   │   │   │   │   ├── GoodLifePOITaskQueryV1Response.cs
│   │   │   │   │   ├── GoodLifePOIUpdateV1Request.cs
│   │   │   │   │   └── GoodLifePOIUpdateV1Response.cs
│   │   │   │   ├── Partner/
│   │   │   │   │   ├── Commission/
│   │   │   │   │   │   ├── GoodLifePartnerCommissionRecordGetV1Request.cs
│   │   │   │   │   │   ├── GoodLifePartnerCommissionRecordGetV1Response.cs
│   │   │   │   │   │   ├── GoodLifePartnerCommissionRecordQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifePartnerCommissionRecordQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifePartnerProductCommissionQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifePartnerProductCommissionQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifePartnerProductCommissionSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifePartnerProductCommissionSaveV1Response.cs
│   │   │   │   │   └── Order/
│   │   │   │   │       ├── GoodLifePartnerOrderCreateV1Request.cs
│   │   │   │   │       ├── GoodLifePartnerOrderCreateV1Response.cs
│   │   │   │   │       ├── GoodLifePartnerOrderGetV1Request.cs
│   │   │   │   │       ├── GoodLifePartnerOrderGetV1Response.cs
│   │   │   │   │       ├── GoodLifePartnerOrderQueryV1Request.cs
│   │   │   │   │       └── GoodLifePartnerOrderQueryV1Response.cs
│   │   │   │   ├── Settle/
│   │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryByOrderV1Request.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryByOrderV1Response.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryV1Request.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryV1Response.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerQueryByOrderV1Request.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerQueryByOrderV1Response.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerQueryRecordByCertificateV1Request.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerQueryRecordByCertificateV1Response.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerQueryV1Request.cs
│   │   │   │   │   └── GoodLifeSettleLedgerQueryV1Response.cs
│   │   │   │   ├── Shop/
│   │   │   │   │   ├── GoodLifeShopPOIQueryV1Request.cs
│   │   │   │   │   └── GoodLifeShopPOIQueryV1Response.cs
│   │   │   │   └── Trade/
│   │   │   │       ├── GoodLifeTradeBookGetV1Request.cs
│   │   │   │       ├── GoodLifeTradeBookGetV1Response.cs
│   │   │   │       ├── GoodLifeTradeBuyMerchantConfirmOrderV1Request.cs
│   │   │   │       ├── GoodLifeTradeBuyMerchantConfirmOrderV1Response.cs
│   │   │   │       ├── GoodLifeTradeOrderQueryV1Request.cs
│   │   │   │       └── GoodLifeTradeOrderQueryV1Response.cs
│   │   │   ├── HotSearch/
│   │   │   │   ├── HotSearchSentencesRequest.cs
│   │   │   │   ├── HotSearchSentencesResponse.cs
│   │   │   │   ├── HotSearchTrendingSentencesRequest.cs
│   │   │   │   ├── HotSearchTrendingSentencesResponse.cs
│   │   │   │   ├── HotSearchVideosRequest.cs
│   │   │   │   └── HotSearchVideosResponse.cs
│   │   │   ├── IM/
│   │   │   │   ├── Authorize/
│   │   │   │   │   ├── IMAuthorizeStatusRequest.cs
│   │   │   │   │   ├── IMAuthorizeStatusResponse.cs
│   │   │   │   │   ├── IMAuthorizeUserListRequest.cs
│   │   │   │   │   └── IMAuthorizeUserListResponse.cs
│   │   │   │   ├── Card/
│   │   │   │   │   ├── IMDeleteRetainConsultCardRequest.cs
│   │   │   │   │   ├── IMDeleteRetainConsultCardResponse.cs
│   │   │   │   │   ├── IMGetRetainConsultCardRequest.cs
│   │   │   │   │   ├── IMGetRetainConsultCardResponse.cs
│   │   │   │   │   ├── IMSaveRetainConsultCardRequest.cs
│   │   │   │   │   └── IMSaveRetainConsultCardResponse.cs
│   │   │   │   ├── Group/
│   │   │   │   │   ├── IMGroupEnterAuditGetRequest.cs
│   │   │   │   │   ├── IMGroupEnterAuditGetResponse.cs
│   │   │   │   │   ├── IMGroupEnterAuditSetRequest.cs
│   │   │   │   │   ├── IMGroupEnterAuditSetResponse.cs
│   │   │   │   │   ├── IMGroupFansCountRequest.cs
│   │   │   │   │   ├── IMGroupFansCountResponse.cs
│   │   │   │   │   ├── IMGroupFansCreateRequest.cs
│   │   │   │   │   ├── IMGroupFansCreateResponse.cs
│   │   │   │   │   ├── IMGroupFansListRequest.cs
│   │   │   │   │   ├── IMGroupFansListResponse.cs
│   │   │   │   │   ├── IMGroupSettingDisableRequest.cs
│   │   │   │   │   ├── IMGroupSettingDisableResponse.cs
│   │   │   │   │   ├── IMGroupSettingSetRequest.cs
│   │   │   │   │   └── IMGroupSettingSetResponse.cs
│   │   │   │   └── Message/
│   │   │   │       ├── IMRecallMessageRequest.cs
│   │   │   │       ├── IMRecallMessageResponse.cs
│   │   │   │       ├── IMSendMessageGroupRequest.cs
│   │   │   │       ├── IMSendMessageGroupResponse.cs
│   │   │   │       ├── IMSendMessageRequest.cs
│   │   │   │       └── IMSendMessageResponse.cs
│   │   │   ├── Image/
│   │   │   │   ├── ImageCreateRequest.cs
│   │   │   │   ├── ImageCreateResponse.cs
│   │   │   │   ├── ImageUploadRequest.cs
│   │   │   │   └── ImageUploadResponse.cs
│   │   │   ├── Item/
│   │   │   │   └── Comment/
│   │   │   │       ├── ItemCommentListRequest.cs
│   │   │   │       ├── ItemCommentListResponse.cs
│   │   │   │       ├── ItemCommentReplyListRequest.cs
│   │   │   │       ├── ItemCommentReplyListResponse.cs
│   │   │   │       ├── ItemCommentReplyRequest.cs
│   │   │   │       ├── ItemCommentReplyResponse.cs
│   │   │   │       ├── ItemCommentTopRequest.cs
│   │   │   │       └── ItemCommentTopResponse.cs
│   │   │   ├── JS/
│   │   │   │   ├── JSGetTicketRequest.cs
│   │   │   │   └── JSGetTicketResponse.cs
│   │   │   ├── MarketService/
│   │   │   │   ├── MarketServiceUserDeletePurchaseInfoRequest.cs
│   │   │   │   ├── MarketServiceUserDeletePurchaseInfoResponse.cs
│   │   │   │   ├── MarketServiceUserInsertPurchaseInfoRequest.cs
│   │   │   │   ├── MarketServiceUserInsertPurchaseInfoResponse.cs
│   │   │   │   ├── MarketServiceUserPurchaseListRequest.cs
│   │   │   │   ├── MarketServiceUserPurchaseListResponse.cs
│   │   │   │   ├── MarketServiceUserRemainTimesDecreaseRequest.cs
│   │   │   │   └── MarketServiceUserRemainTimesDecreaseResponse.cs
│   │   │   ├── Message/
│   │   │   │   ├── MessageOnceSendRequest.cs
│   │   │   │   └── MessageOnceSendResponse.cs
│   │   │   ├── Namek/
│   │   │   │   ├── NamekFulfilmentPrepareRequest.cs
│   │   │   │   └── NamekFulfilmentPrepareResponse.cs
│   │   │   ├── OAuth/
│   │   │   │   ├── OAuthAccessTokenRequest.cs
│   │   │   │   ├── OAuthAccessTokenResponse.cs
│   │   │   │   ├── OAuthBusinessScopesRequest.cs
│   │   │   │   ├── OAuthBusinessScopesResponse.cs
│   │   │   │   ├── OAuthBusinessTokenRequest.cs
│   │   │   │   ├── OAuthBusinessTokenResponse.cs
│   │   │   │   ├── OAuthClientTokenRequest.cs
│   │   │   │   ├── OAuthClientTokenResponse.cs
│   │   │   │   ├── OAuthRefreshBusinessTokenRequest.cs
│   │   │   │   ├── OAuthRefreshBusinessTokenResponse.cs
│   │   │   │   ├── OAuthRefreshTokenRequest.cs
│   │   │   │   ├── OAuthRefreshTokenResponse.cs
│   │   │   │   ├── OAuthRenewRefreshTokenRequest.cs
│   │   │   │   ├── OAuthRenewRefreshTokenResponse.cs
│   │   │   │   └── User/
│   │   │   │       ├── OAuthUserInfoRequest.cs
│   │   │   │       └── OAuthUserInfoResponse.cs
│   │   │   ├── Open/
│   │   │   │   ├── OpenGetTicketRequest.cs
│   │   │   │   └── OpenGetTicketResponse.cs
│   │   │   ├── POI/
│   │   │   │   ├── Coupon/
│   │   │   │   │   ├── POICouponSyncCouponAvailableV2Request.cs
│   │   │   │   │   ├── POICouponSyncCouponAvailableV2Response.cs
│   │   │   │   │   ├── POICouponSyncV2Request.cs
│   │   │   │   │   └── POICouponSyncV2Response.cs
│   │   │   │   ├── External/
│   │   │   │   │   ├── Hotel/
│   │   │   │   │   │   ├── POIExternalHotelOrderCancelRequest.cs
│   │   │   │   │   │   ├── POIExternalHotelOrderCancelResponse.cs
│   │   │   │   │   │   ├── POIExternalHotelOrderCommitRequest.cs
│   │   │   │   │   │   ├── POIExternalHotelOrderCommitResponse.cs
│   │   │   │   │   │   ├── POIExternalHotelOrderStatusRequest.cs
│   │   │   │   │   │   ├── POIExternalHotelOrderStatusResponse.cs
│   │   │   │   │   │   ├── POIExternalHotelSKURequest.cs
│   │   │   │   │   │   └── POIExternalHotelSKUResponse.cs
│   │   │   │   │   └── PresaleGroupon/
│   │   │   │   │       ├── POIExternalPresaleGrouponOrderCancelRequest.cs
│   │   │   │   │       ├── POIExternalPresaleGrouponOrderCancelResponse.cs
│   │   │   │   │       ├── POIExternalPresaleGrouponOrderCommitRequest.cs
│   │   │   │   │       ├── POIExternalPresaleGrouponOrderCommitResponse.cs
│   │   │   │   │       ├── POIExternalPresaleGrouponOrderCreateRequest.cs
│   │   │   │   │       └── POIExternalPresaleGrouponOrderCreateResponse.cs
│   │   │   │   ├── Order/
│   │   │   │   │   ├── POIOrderBillTokenRequest.cs
│   │   │   │   │   ├── POIOrderBillTokenResponse.cs
│   │   │   │   │   ├── POIOrderConfirmCancelPrepareRequest.cs
│   │   │   │   │   ├── POIOrderConfirmCancelPrepareResponse.cs
│   │   │   │   │   ├── POIOrderConfirmPrepareRequest.cs
│   │   │   │   │   ├── POIOrderConfirmPrepareResponse.cs
│   │   │   │   │   ├── POIOrderConfirmRequest.cs
│   │   │   │   │   ├── POIOrderConfirmResponse.cs
│   │   │   │   │   ├── POIOrderListTokenRequest.cs
│   │   │   │   │   ├── POIOrderListTokenResponse.cs
│   │   │   │   │   ├── POIOrderStatusRequest.cs
│   │   │   │   │   ├── POIOrderStatusResponse.cs
│   │   │   │   │   ├── POIOrderSyncRequest.cs
│   │   │   │   │   └── POIOrderSyncResponse.cs
│   │   │   │   ├── POIBaseQueryAMapRequest.cs
│   │   │   │   ├── POIBaseQueryAMapResponse.cs
│   │   │   │   ├── POIQueryRequest.cs
│   │   │   │   ├── POIQueryResponse.cs
│   │   │   │   ├── POISearchKeywordRequest.cs
│   │   │   │   ├── POISearchKeywordResponse.cs
│   │   │   │   ├── Plan/
│   │   │   │   │   ├── POICommonPlanDetailRequest.cs
│   │   │   │   │   ├── POICommonPlanDetailResponse.cs
│   │   │   │   │   ├── POICommonPlanSaveRequest.cs
│   │   │   │   │   ├── POICommonPlanSaveResponse.cs
│   │   │   │   │   ├── POICommonPlanTalentDetailRequest.cs
│   │   │   │   │   ├── POICommonPlanTalentDetailResponse.cs
│   │   │   │   │   ├── POICommonPlanTalentListRequest.cs
│   │   │   │   │   ├── POICommonPlanTalentListResponse.cs
│   │   │   │   │   ├── POICommonPlanTalentMediaListRequest.cs
│   │   │   │   │   ├── POICommonPlanTalentMediaListResponse.cs
│   │   │   │   │   ├── POICommonPlanUpdateStatusRequest.cs
│   │   │   │   │   ├── POICommonPlanUpdateStatusResponse.cs
│   │   │   │   │   ├── POIPlanListRequest.cs
│   │   │   │   │   └── POIPlanListResponse.cs
│   │   │   │   ├── SKU/
│   │   │   │   │   ├── POISKUSyncRequest.cs
│   │   │   │   │   └── POISKUSyncResponse.cs
│   │   │   │   ├── SPU/
│   │   │   │   │   ├── POISPUGetV2Request.cs
│   │   │   │   │   ├── POISPUGetV2Response.cs
│   │   │   │   │   ├── POISPUStatusSyncV2Request.cs
│   │   │   │   │   ├── POISPUStatusSyncV2Response.cs
│   │   │   │   │   ├── POISPUStockUpdateV2Request.cs
│   │   │   │   │   ├── POISPUStockUpdateV2Response.cs
│   │   │   │   │   ├── POISPUSyncV2Request.cs
│   │   │   │   │   ├── POISPUSyncV2Response.cs
│   │   │   │   │   ├── POISPUTakeRateSyncV2Request.cs
│   │   │   │   │   └── POISPUTakeRateSyncV2Response.cs
│   │   │   │   ├── ServiceProvider/
│   │   │   │   │   ├── POIServiceProviderSyncV2Request.cs
│   │   │   │   │   └── POIServiceProviderSyncV2Response.cs
│   │   │   │   └── Supplier/
│   │   │   │       ├── POISupplierMatchV2Request.cs
│   │   │   │       ├── POISupplierMatchV2Response.cs
│   │   │   │       ├── POISupplierQueryAllRequest.cs
│   │   │   │       ├── POISupplierQueryAllResponse.cs
│   │   │   │       ├── POISupplierQueryCallbackRequest.cs
│   │   │   │       ├── POISupplierQueryCallbackResponse.cs
│   │   │   │       ├── POISupplierQueryRequest.cs
│   │   │   │       ├── POISupplierQueryResponse.cs
│   │   │   │       ├── POISupplierQuerySupplierV2Request.cs
│   │   │   │       ├── POISupplierQuerySupplierV2Response.cs
│   │   │   │       ├── POISupplierQueryTaskV2Request.cs
│   │   │   │       ├── POISupplierQueryTaskV2Response.cs
│   │   │   │       ├── POISupplierSyncRequest.cs
│   │   │   │       └── POISupplierSyncResponse.cs
│   │   │   ├── Room/
│   │   │   │   ├── RoomDataAudienceGetRequest.cs
│   │   │   │   ├── RoomDataAudienceGetResponse.cs
│   │   │   │   ├── RoomDataBaseGetRequest.cs
│   │   │   │   ├── RoomDataBaseGetResponse.cs
│   │   │   │   ├── RoomDataInteractiveGetRequest.cs
│   │   │   │   ├── RoomDataInteractiveGetResponse.cs
│   │   │   │   ├── RoomDataRoomIdGetRequest.cs
│   │   │   │   └── RoomDataRoomIdGetResponse.cs
│   │   │   ├── Sandbox/
│   │   │   │   ├── SandboxWebhookEventSendRequest.cs
│   │   │   │   └── SandboxWebhookEventSendResponse.cs
│   │   │   ├── ShareId/
│   │   │   │   ├── ShareIdRequest.cs
│   │   │   │   └── ShareIdResponse.cs
│   │   │   ├── Star/
│   │   │   │   ├── StarAuthorScoreRequest.cs
│   │   │   │   ├── StarAuthorScoreResponse.cs
│   │   │   │   ├── StarAuthorScoreV2Request.cs
│   │   │   │   ├── StarAuthorScoreV2Response.cs
│   │   │   │   ├── StarHotListRequest.cs
│   │   │   │   └── StarHotListResponse.cs
│   │   │   ├── Task/
│   │   │   │   ├── TaskPostingBindVideoRequest.cs
│   │   │   │   ├── TaskPostingBindVideoResponse.cs
│   │   │   │   ├── TaskPostingCreateRequest.cs
│   │   │   │   ├── TaskPostingCreateResponse.cs
│   │   │   │   ├── TaskPostingUserRequest.cs
│   │   │   │   └── TaskPostingUserResponse.cs
│   │   │   ├── Tool/
│   │   │   │   ├── ToolImagexClientUploadRequest.cs
│   │   │   │   └── ToolImagexClientUploadResponse.cs
│   │   │   └── Video/
│   │   │       ├── Comment/
│   │   │       │   ├── VideoCommentListRequest.cs
│   │   │       │   ├── VideoCommentListResponse.cs
│   │   │       │   ├── VideoCommentReplyListRequest.cs
│   │   │       │   ├── VideoCommentReplyListResponse.cs
│   │   │       │   ├── VideoCommentReplyRequest.cs
│   │   │       │   ├── VideoCommentReplyResponse.cs
│   │   │       │   ├── VideoCommentTopRequest.cs
│   │   │       │   └── VideoCommentTopResponse.cs
│   │   │       ├── Search/
│   │   │       │   ├── VideoSearchCommentListRequest.cs
│   │   │       │   ├── VideoSearchCommentListResponse.cs
│   │   │       │   ├── VideoSearchCommentReplyListRequest.cs
│   │   │       │   ├── VideoSearchCommentReplyListResponse.cs
│   │   │       │   ├── VideoSearchCommentReplyRequest.cs
│   │   │       │   ├── VideoSearchCommentReplyResponse.cs
│   │   │       │   ├── VideoSearchRequest.cs
│   │   │       │   └── VideoSearchResponse.cs
│   │   │       ├── VideoSourceRequest.cs
│   │   │       └── VideoSourceResponse.cs
│   │   ├── README.md
│   │   ├── SKIT.FlurlHttpClient.ByteDance.DouyinOpen.csproj
│   │   ├── Settings/
│   │   │   └── Credentials.cs
│   │   └── Utilities/
│   │       ├── AESUtility.cs
│   │       ├── HMACUtility.cs
│   │       ├── MD5Utility.cs
│   │       ├── SHA1Utility.cs
│   │       ├── SHA256Utility.cs
│   │       └── [Internal]/
│   │           └── HttpContentBuilder.cs
│   ├── SKIT.FlurlHttpClient.ByteDance.DouyinShop/
│   │   ├── Constants/
│   │   │   ├── Internal/
│   │   │   │   └── FormDataFields.cs
│   │   │   └── SignAlgorithms.cs
│   │   ├── Converters/
│   │   │   └── Internal/
│   │   │       ├── Newtonsoft.Json/
│   │   │       │   └── List[String]/
│   │   │       │       └── TextualStringListWithPipeSplitConverter.cs
│   │   │       └── System.Text.Json/
│   │   │           ├── Array[String]/
│   │   │           │   └── NumericalStringArrayConverter.cs
│   │   │           └── List[String]/
│   │   │               └── TextualStringListWithPipeSplitConverter.cs
│   │   ├── DouyinShopClient.cs
│   │   ├── DouyinShopClientOptions.cs
│   │   ├── DouyinShopEndpoints.cs
│   │   ├── DouyinShopEvent.cs
│   │   ├── DouyinShopException.cs
│   │   ├── DouyinShopRequest.cs
│   │   ├── DouyinShopResponse.cs
│   │   ├── Events/
│   │   │   ├── IOPTrade/
│   │   │   │   ├── IOPTradeDistributionCancelEvent.cs
│   │   │   │   ├── IOPTradeDistributionEvent.cs
│   │   │   │   ├── IOPTradeStatusReturnEvent.cs
│   │   │   │   ├── IOPTradeUpdateReceiverEvent.cs
│   │   │   │   └── IOPTradeUpdateRemarkEvent.cs
│   │   │   ├── Product/
│   │   │   │   └── ProductChangeEvent.cs
│   │   │   ├── Refund/
│   │   │   │   ├── Arbitrate/
│   │   │   │   │   ├── RefundArbitrateAppliedEvent.cs
│   │   │   │   │   ├── RefundArbitrateAuditedEvent.cs
│   │   │   │   │   ├── RefundArbitrateCancelledEvent.cs
│   │   │   │   │   ├── RefundArbitrateDiscussUploadEvent.cs
│   │   │   │   │   ├── RefundArbitrateServiceInterveneEvent.cs
│   │   │   │   │   ├── RefundArbitrateSubmitedEvent.cs
│   │   │   │   │   └── RefundArbitrateSubmitingEvent.cs
│   │   │   │   ├── RefundAgreedEvent.cs
│   │   │   │   ├── RefundClosedEvent.cs
│   │   │   │   ├── RefundCreatedEvent.cs
│   │   │   │   ├── RefundExchangeComfirmedEvent.cs
│   │   │   │   ├── RefundExpirationChangeEvent.cs
│   │   │   │   ├── RefundModifiedEvent.cs
│   │   │   │   ├── RefundRefusedEvent.cs
│   │   │   │   ├── RefundSuccessEvent.cs
│   │   │   │   └── Return/
│   │   │   │       ├── RefundBuyerReturnGoodsEvent.cs
│   │   │   │       ├── RefundReturnAgreedEvent.cs
│   │   │   │       ├── RefundReturnApplyAgreedEvent.cs
│   │   │   │       └── RefundReturnApplyRefusedEvent.cs
│   │   │   └── Trade/
│   │   │       ├── TradeAddressChangeAppliedEvent.cs
│   │   │       ├── TradeAddressChangedEvent.cs
│   │   │       ├── TradeAmountChangedEvent.cs
│   │   │       ├── TradeAppointmentEvent.cs
│   │   │       ├── TradeCanceledEvent.cs
│   │   │       ├── TradeCreateEvent.cs
│   │   │       ├── TradeLogisticsChangedEvent.cs
│   │   │       ├── TradeMemoModifyEvent.cs
│   │   │       ├── TradePaidEvent.cs
│   │   │       ├── TradePartlySellerShipEvent.cs
│   │   │       ├── TradePendingEvent.cs
│   │   │       ├── TradeSellerShipEvent.cs
│   │   │       └── TradeSuccessEvent.cs
│   │   ├── Exceptions/
│   │   │   ├── DouyinShopEventSerializationException.cs
│   │   │   ├── DouyinShopRequestMarshalException.cs
│   │   │   ├── DouyinShopRequestSignatureException.cs
│   │   │   └── DouyinShopRequestTimeoutException.cs
│   │   ├── Extensions/
│   │   │   ├── DouyinShopClientEventExtensions.cs
│   │   │   ├── DouyinShopClientExecuteAddressExtensions.cs
│   │   │   ├── DouyinShopClientExecuteAftersaleExtensions.cs
│   │   │   ├── DouyinShopClientExecuteAllianceExtensions.cs
│   │   │   ├── DouyinShopClientExecuteAntiSpamExtensions.cs
│   │   │   ├── DouyinShopClientExecuteBTASExtensions.cs
│   │   │   ├── DouyinShopClientExecuteBuyinExtensions.cs
│   │   │   ├── DouyinShopClientExecuteCouponsExtensions.cs
│   │   │   ├── DouyinShopClientExecuteCrossBorderExtensions.cs
│   │   │   ├── DouyinShopClientExecuteDutyFreeExtensions.cs
│   │   │   ├── DouyinShopClientExecuteFreightTemplateExtensions.cs
│   │   │   ├── DouyinShopClientExecuteIOPExtensions.cs
│   │   │   ├── DouyinShopClientExecuteLogisticsExtensions.cs
│   │   │   ├── DouyinShopClientExecuteMaterialExtensions.cs
│   │   │   ├── DouyinShopClientExecuteMemberExtensions.cs
│   │   │   ├── DouyinShopClientExecuteOpportunityProductExtensions.cs
│   │   │   ├── DouyinShopClientExecuteOrderCodeExtensions.cs
│   │   │   ├── DouyinShopClientExecuteOrderExtensions.cs
│   │   │   ├── DouyinShopClientExecuteProductExtensions.cs
│   │   │   ├── DouyinShopClientExecutePromiseExtensions.cs
│   │   │   ├── DouyinShopClientExecuteRecycleExtensions.cs
│   │   │   ├── DouyinShopClientExecuteSKUExtensions.cs
│   │   │   ├── DouyinShopClientExecuteSPUExtensions.cs
│   │   │   ├── DouyinShopClientExecuteShopExtensions.cs
│   │   │   ├── DouyinShopClientExecuteStorageExtensions.cs
│   │   │   ├── DouyinShopClientExecuteTokenExtensions.cs
│   │   │   ├── DouyinShopClientExecuteWarehouseExtensions.cs
│   │   │   └── DouyinShopClientExecuteYuncExtensions.cs
│   │   ├── Interceptors/
│   │   │   ├── DouyinShopRequestFormatInterceptor.cs
│   │   │   └── DouyinShopRequestSignInterceptor.cs
│   │   ├── Models/
│   │   │   ├── Address/
│   │   │   │   ├── AddressCreateRequest.cs
│   │   │   │   ├── AddressCreateResponse.cs
│   │   │   │   ├── AddressGetAreasByProvinceRequest.cs
│   │   │   │   ├── AddressGetAreasByProvinceResponse.cs
│   │   │   │   ├── AddressGetProvinceRequest.cs
│   │   │   │   ├── AddressGetProvinceResponse.cs
│   │   │   │   ├── AddressListRequest.cs
│   │   │   │   ├── AddressListResponse.cs
│   │   │   │   ├── AddressUpdateRequest.cs
│   │   │   │   └── AddressUpdateResponse.cs
│   │   │   ├── Aftersale/
│   │   │   │   ├── AftersaleAddOrderRemarkRequest.cs
│   │   │   │   ├── AftersaleAddOrderRemarkResponse.cs
│   │   │   │   ├── AftersaleApplyLogisticsInterceptRequest.cs
│   │   │   │   ├── AftersaleApplyLogisticsInterceptResponse.cs
│   │   │   │   ├── AftersaleBuyerExchangeConfirmRequest.cs
│   │   │   │   ├── AftersaleBuyerExchangeConfirmResponse.cs
│   │   │   │   ├── AftersaleBuyerExchangeRequest.cs
│   │   │   │   ├── AftersaleBuyerExchangeResponse.cs
│   │   │   │   ├── AftersaleCancelSendGoodsSuccessRequest.cs
│   │   │   │   ├── AftersaleCancelSendGoodsSuccessResponse.cs
│   │   │   │   ├── AftersaleDetailRequest.cs
│   │   │   │   ├── AftersaleDetailResponse.cs
│   │   │   │   ├── AftersaleListRequest.cs
│   │   │   │   ├── AftersaleListResponse.cs
│   │   │   │   ├── AftersaleOpenAfterSaleChannelRequest.cs
│   │   │   │   ├── AftersaleOpenAfterSaleChannelResponse.cs
│   │   │   │   ├── AftersaleOperateRequest.cs
│   │   │   │   ├── AftersaleOperateResponse.cs
│   │   │   │   ├── AftersaleRefundListSearchRequest.cs
│   │   │   │   ├── AftersaleRefundListSearchResponse.cs
│   │   │   │   ├── AftersaleReturnGoodsToWareHouseSuccessRequest.cs
│   │   │   │   ├── AftersaleReturnGoodsToWareHouseSuccessResponse.cs
│   │   │   │   ├── AftersaleSubmitEvidenceRequest.cs
│   │   │   │   ├── AftersaleSubmitEvidenceResponse.cs
│   │   │   │   ├── AftersaleTimeExtendRequest.cs
│   │   │   │   └── AftersaleTimeExtendResponse.cs
│   │   │   ├── Alliance/
│   │   │   │   ├── AllianceGetOrderListRequest.cs
│   │   │   │   ├── AllianceGetOrderListResponse.cs
│   │   │   │   └── MaterialsProducts/
│   │   │   │       ├── AllianceMaterialsProductsDetailsRequest.cs
│   │   │   │       ├── AllianceMaterialsProductsDetailsResponse.cs
│   │   │   │       ├── AllianceMaterialsProductsSearchRequest.cs
│   │   │   │       └── AllianceMaterialsProductsSearchResponse.cs
│   │   │   ├── AntiSpam/
│   │   │   │   ├── AntiSpamOrderQueryRequest.cs
│   │   │   │   ├── AntiSpamOrderQueryResponse.cs
│   │   │   │   ├── AntiSpamOrderSendRequest.cs
│   │   │   │   ├── AntiSpamOrderSendResponse.cs
│   │   │   │   ├── AntiSpamUserLoginRequest.cs
│   │   │   │   └── AntiSpamUserLoginResponse.cs
│   │   │   ├── BTAS/
│   │   │   │   ├── BTASGetInspectionOrderRequest.cs
│   │   │   │   ├── BTASGetInspectionOrderResponse.cs
│   │   │   │   ├── BTASGetOrderInspectionResultRequest.cs
│   │   │   │   ├── BTASGetOrderInspectionResultResponse.cs
│   │   │   │   ├── BTASListBrandRequest.cs
│   │   │   │   ├── BTASListBrandResponse.cs
│   │   │   │   ├── BTASSaveInspectionInformationRequest.cs
│   │   │   │   ├── BTASSaveInspectionInformationResponse.cs
│   │   │   │   ├── BTASSaveInspectionOnlineRequest.cs
│   │   │   │   ├── BTASSaveInspectionOnlineResponse.cs
│   │   │   │   ├── BTASShippingRequest.cs
│   │   │   │   └── BTASShippingResponse.cs
│   │   │   ├── Buyin/
│   │   │   │   ├── Activity/
│   │   │   │   │   ├── BuyinActivitySearchRequest.cs
│   │   │   │   │   ├── BuyinActivitySearchResponse.cs
│   │   │   │   │   ├── BuyinApplyActivitiesRequest.cs
│   │   │   │   │   └── BuyinApplyActivitiesResponse.cs
│   │   │   │   ├── BuyinInstituteOrderAdsRequest.cs
│   │   │   │   ├── BuyinInstituteOrderAdsResponse.cs
│   │   │   │   ├── OrientPlan/
│   │   │   │   │   ├── BuyinCreateOrUpdateOrientPlanRequest.cs
│   │   │   │   │   ├── BuyinCreateOrUpdateOrientPlanResponse.cs
│   │   │   │   │   ├── BuyinOrientPlanAuditRequest.cs
│   │   │   │   │   ├── BuyinOrientPlanAuditResponse.cs
│   │   │   │   │   ├── BuyinOrientPlanAuthorsAddRequest.cs
│   │   │   │   │   ├── BuyinOrientPlanAuthorsAddResponse.cs
│   │   │   │   │   ├── BuyinOrientPlanAuthorsRequest.cs
│   │   │   │   │   ├── BuyinOrientPlanAuthorsResponse.cs
│   │   │   │   │   ├── BuyinOrientPlanControlRequest.cs
│   │   │   │   │   ├── BuyinOrientPlanControlResponse.cs
│   │   │   │   │   ├── BuyinOrientPlanListRequest.cs
│   │   │   │   │   └── BuyinOrientPlanListResponse.cs
│   │   │   │   └── Plan/
│   │   │   │       ├── BuyinExclusivePlanRequest.cs
│   │   │   │       ├── BuyinExclusivePlanResponse.cs
│   │   │   │       ├── BuyinSimplePlanRequest.cs
│   │   │   │       └── BuyinSimplePlanResponse.cs
│   │   │   ├── Coupons/
│   │   │   │   ├── CouponsAbandonRequest.cs
│   │   │   │   ├── CouponsAbandonResponse.cs
│   │   │   │   ├── CouponsCancelVerifyRequest.cs
│   │   │   │   ├── CouponsCancelVerifyResponse.cs
│   │   │   │   ├── CouponsSyncV2Request.cs
│   │   │   │   ├── CouponsSyncV2Response.cs
│   │   │   │   ├── CouponsVerifyV2Request.cs
│   │   │   │   └── CouponsVerifyV2Response.cs
│   │   │   ├── CrossBorder/
│   │   │   │   ├── CrossBorderBankAccountVerifyRequest.cs
│   │   │   │   ├── CrossBorderBankAccountVerifyResponse.cs
│   │   │   │   ├── CrossBorderOrderInterceptionRequest.cs
│   │   │   │   ├── CrossBorderOrderInterceptionResponse.cs
│   │   │   │   ├── CrossBorderOrderListRequest.cs
│   │   │   │   ├── CrossBorderOrderListResponse.cs
│   │   │   │   ├── CrossBorderQueryBalanceRequest.cs
│   │   │   │   ├── CrossBorderQueryBalanceResponse.cs
│   │   │   │   ├── CrossBorderStockTakingRequest.cs
│   │   │   │   ├── CrossBorderStockTakingResponse.cs
│   │   │   │   ├── CrossBorderStockTransformRequest.cs
│   │   │   │   ├── CrossBorderStockTransformResponse.cs
│   │   │   │   ├── CrossBorderWarehouseInOutboundEventRequest.cs
│   │   │   │   └── CrossBorderWarehouseInOutboundEventResponse.cs
│   │   │   ├── DutyFree/
│   │   │   │   ├── DutyFreeOrderConfirmRequest.cs
│   │   │   │   └── DutyFreeOrderConfirmResponse.cs
│   │   │   ├── FreightTemplate/
│   │   │   │   ├── FreightTemplateListRequest.cs
│   │   │   │   └── FreightTemplateListResponse.cs
│   │   │   ├── IOP/
│   │   │   │   ├── IOPOrderInformationRequest.cs
│   │   │   │   ├── IOPOrderInformationResponse.cs
│   │   │   │   ├── IOPOrderListRequest.cs
│   │   │   │   ├── IOPOrderListResponse.cs
│   │   │   │   ├── IOPRoleGetRequest.cs
│   │   │   │   ├── IOPRoleGetResponse.cs
│   │   │   │   ├── Seller/
│   │   │   │   │   ├── IOPSellerCancelDistributeRequest.cs
│   │   │   │   │   ├── IOPSellerCancelDistributeResponse.cs
│   │   │   │   │   ├── IOPSellerDistributeRequest.cs
│   │   │   │   │   ├── IOPSellerDistributeResponse.cs
│   │   │   │   │   ├── IOPSellerOrderInformationRequest.cs
│   │   │   │   │   ├── IOPSellerOrderInformationResponse.cs
│   │   │   │   │   ├── IOPSellerOrderListRequest.cs
│   │   │   │   │   ├── IOPSellerOrderListResponse.cs
│   │   │   │   │   ├── IOPSellerSupplierListRequest.cs
│   │   │   │   │   └── IOPSellerSupplierListResponse.cs
│   │   │   │   └── Waybill/
│   │   │   │       ├── IOPWaybillCancelRequest.cs
│   │   │   │       ├── IOPWaybillCancelResponse.cs
│   │   │   │       ├── IOPWaybillGetRequest.cs
│   │   │   │       ├── IOPWaybillGetResponse.cs
│   │   │   │       ├── IOPWaybillReturnRequest.cs
│   │   │   │       ├── IOPWaybillReturnResponse.cs
│   │   │   │       ├── IOPWaybillUpdateRequest.cs
│   │   │   │       └── IOPWaybillUpdateResponse.cs
│   │   │   ├── Logistics/
│   │   │   │   ├── LogisticsCancelOrderRequest.cs
│   │   │   │   ├── LogisticsCancelOrderResponse.cs
│   │   │   │   ├── LogisticsGetCustomTemplateListRequest.cs
│   │   │   │   ├── LogisticsGetCustomTemplateListResponse.cs
│   │   │   │   ├── LogisticsGetOutRangeRequest.cs
│   │   │   │   ├── LogisticsGetOutRangeResponse.cs
│   │   │   │   ├── LogisticsListShopNetSiteRequest.cs
│   │   │   │   ├── LogisticsListShopNetSiteResponse.cs
│   │   │   │   ├── LogisticsNewCreateOrderRequest.cs
│   │   │   │   ├── LogisticsNewCreateOrderResponse.cs
│   │   │   │   ├── LogisticsTemplateListRequest.cs
│   │   │   │   ├── LogisticsTemplateListResponse.cs
│   │   │   │   ├── LogisticsTrackNoRouteDetailRequest.cs
│   │   │   │   ├── LogisticsTrackNoRouteDetailResponse.cs
│   │   │   │   ├── LogisticsUpdateOrderRequest.cs
│   │   │   │   └── LogisticsUpdateOrderResponse.cs
│   │   │   ├── Material/
│   │   │   │   ├── Folder/
│   │   │   │   │   ├── MaterialCreateFolderRequest.cs
│   │   │   │   │   ├── MaterialCreateFolderResponse.cs
│   │   │   │   │   ├── MaterialDeleteFolderRequest.cs
│   │   │   │   │   ├── MaterialDeleteFolderResponse.cs
│   │   │   │   │   ├── MaterialEditFolderRequest.cs
│   │   │   │   │   ├── MaterialEditFolderResponse.cs
│   │   │   │   │   ├── MaterialGetFolderInformationRequest.cs
│   │   │   │   │   ├── MaterialGetFolderInformationResponse.cs
│   │   │   │   │   ├── MaterialMoveFolderToRecyleBinRequest.cs
│   │   │   │   │   ├── MaterialMoveFolderToRecyleBinResponse.cs
│   │   │   │   │   ├── MaterialRecoverFolderRequest.cs
│   │   │   │   │   ├── MaterialRecoverFolderResponse.cs
│   │   │   │   │   ├── MaterialSearchFolderRequest.cs
│   │   │   │   │   └── MaterialSearchFolderResponse.cs
│   │   │   │   ├── Material/
│   │   │   │   │   ├── MaterialDeleteMaterialRequest.cs
│   │   │   │   │   ├── MaterialDeleteMaterialResponse.cs
│   │   │   │   │   ├── MaterialEditMaterialRequest.cs
│   │   │   │   │   ├── MaterialEditMaterialResponse.cs
│   │   │   │   │   ├── MaterialMoveMaterialToRecyleBinRequest.cs
│   │   │   │   │   ├── MaterialMoveMaterialToRecyleBinResponse.cs
│   │   │   │   │   ├── MaterialQueryMaterialDetailRequest.cs
│   │   │   │   │   ├── MaterialQueryMaterialDetailResponse.cs
│   │   │   │   │   ├── MaterialRecoverMaterialRequest.cs
│   │   │   │   │   ├── MaterialRecoverMaterialResponse.cs
│   │   │   │   │   ├── MaterialSearchMaterialRequest.cs
│   │   │   │   │   └── MaterialSearchMaterialResponse.cs
│   │   │   │   ├── MaterialUploadImageSyncRequest.cs
│   │   │   │   ├── MaterialUploadImageSyncResponse.cs
│   │   │   │   ├── MaterialUploadVideoAsyncRequest.cs
│   │   │   │   └── MaterialUploadVideoAsyncResponse.cs
│   │   │   ├── Member/
│   │   │   │   ├── MemberBatchUpdateRequest.cs
│   │   │   │   ├── MemberBatchUpdateResponse.cs
│   │   │   │   ├── MemberSearchListRequest.cs
│   │   │   │   └── MemberSearchListResponse.cs
│   │   │   ├── OpportunityProduct/
│   │   │   │   ├── OpportunityProductApplyRequest.cs
│   │   │   │   ├── OpportunityProductApplyResponse.cs
│   │   │   │   ├── OpportunityProductClueRequest.cs
│   │   │   │   ├── OpportunityProductClueResponse.cs
│   │   │   │   ├── OpportunityProductGetApplyProgressRequest.cs
│   │   │   │   └── OpportunityProductGetApplyProgressResponse.cs
│   │   │   ├── Order/
│   │   │   │   ├── CrossBorder/
│   │   │   │   │   ├── OrderGetCrossBorderFulfillInformationRequest.cs
│   │   │   │   │   └── OrderGetCrossBorderFulfillInformationResponse.cs
│   │   │   │   ├── Encryption/
│   │   │   │   │   ├── OrderBatchDecryptRequest.cs
│   │   │   │   │   ├── OrderBatchDecryptResponse.cs
│   │   │   │   │   ├── OrderBatchEncryptRequest.cs
│   │   │   │   │   ├── OrderBatchEncryptResponse.cs
│   │   │   │   │   ├── OrderBatchSearchIndexRequest.cs
│   │   │   │   │   ├── OrderBatchSearchIndexResponse.cs
│   │   │   │   │   ├── OrderBatchSensitiveRequest.cs
│   │   │   │   │   └── OrderBatchSensitiveResponse.cs
│   │   │   │   ├── Insurance/
│   │   │   │   │   ├── OrderInsuranceRequest.cs
│   │   │   │   │   ├── OrderInsuranceResponse.cs
│   │   │   │   │   ├── OrderPolicyRequest.cs
│   │   │   │   │   └── OrderPolicyResponse.cs
│   │   │   │   ├── Invoice/
│   │   │   │   │   ├── OrderInvoiceListRequest.cs
│   │   │   │   │   ├── OrderInvoiceListResponse.cs
│   │   │   │   │   ├── OrderInvoiceUploadRequest.cs
│   │   │   │   │   └── OrderInvoiceUploadResponse.cs
│   │   │   │   ├── Logistics/
│   │   │   │   │   ├── OrderLogisticsAddRequest.cs
│   │   │   │   │   ├── OrderLogisticsAddResponse.cs
│   │   │   │   │   ├── OrderLogisticsCompanyListRequest.cs
│   │   │   │   │   ├── OrderLogisticsCompanyListResponse.cs
│   │   │   │   │   ├── OrderLogisticsEditRequest.cs
│   │   │   │   │   ├── OrderLogisticsEditResponse.cs
│   │   │   │   │   └── Package/
│   │   │   │   │       ├── OrderLogisticsAddMultiplePackageRequest.cs
│   │   │   │   │       ├── OrderLogisticsAddMultiplePackageResponse.cs
│   │   │   │   │       ├── OrderLogisticsAddSinglePackageRequest.cs
│   │   │   │   │       ├── OrderLogisticsAddSinglePackageResponse.cs
│   │   │   │   │       ├── OrderLogisticsEditByPackageRequest.cs
│   │   │   │   │       └── OrderLogisticsEditByPackageResponse.cs
│   │   │   │   ├── OrderAddOrderRemarkRequest.cs
│   │   │   │   ├── OrderAddOrderRemarkResponse.cs
│   │   │   │   ├── OrderAddSerialNumberRequest.cs
│   │   │   │   ├── OrderAddSerialNumberResponse.cs
│   │   │   │   ├── OrderAddressAppliedSwitchRequest.cs
│   │   │   │   ├── OrderAddressAppliedSwitchResponse.cs
│   │   │   │   ├── OrderAddressConfirmRequest.cs
│   │   │   │   ├── OrderAddressConfirmResponse.cs
│   │   │   │   ├── OrderAddressModifyRequest.cs
│   │   │   │   ├── OrderAddressModifyResponse.cs
│   │   │   │   ├── OrderAddressSwitchConfigRequest.cs
│   │   │   │   ├── OrderAddressSwitchConfigResponse.cs
│   │   │   │   ├── OrderDetailRequest.cs
│   │   │   │   ├── OrderDetailResponse.cs
│   │   │   │   ├── OrderSearchListRequest.cs
│   │   │   │   ├── OrderSearchListResponse.cs
│   │   │   │   ├── OrderUpdateOrderAmountRequest.cs
│   │   │   │   ├── OrderUpdateOrderAmountResponse.cs
│   │   │   │   ├── OrderUpdatePostAmountRequest.cs
│   │   │   │   ├── OrderUpdatePostAmountResponse.cs
│   │   │   │   ├── Service/
│   │   │   │   │   ├── OrderGetServiceListRequest.cs
│   │   │   │   │   ├── OrderGetServiceListResponse.cs
│   │   │   │   │   ├── OrderReplyServiceRequest.cs
│   │   │   │   │   ├── OrderReplyServiceResponse.cs
│   │   │   │   │   ├── OrderServiceDetailRequest.cs
│   │   │   │   │   └── OrderServiceDetailResponse.cs
│   │   │   │   └── Settle/
│   │   │   │       ├── OrderDownloadSettleItemToShopRequest.cs
│   │   │   │       ├── OrderDownloadSettleItemToShopResponse.cs
│   │   │   │       ├── OrderDownloadToShopRequest.cs
│   │   │   │       ├── OrderDownloadToShopResponse.cs
│   │   │   │       ├── OrderGetSettleBillDetailRequest.cs
│   │   │   │       ├── OrderGetSettleBillDetailResponse.cs
│   │   │   │       ├── OrderSettleRequest.cs
│   │   │   │       └── OrderSettleResponse.cs
│   │   │   ├── OrderCode/
│   │   │   │   ├── OrderCodeBatchGetOrderCodeByShopRequest.cs
│   │   │   │   ├── OrderCodeBatchGetOrderCodeByShopResponse.cs
│   │   │   │   ├── OrderCodeDownloadOrderCodeByShopRequest.cs
│   │   │   │   ├── OrderCodeDownloadOrderCodeByShopResponse.cs
│   │   │   │   ├── OrderCodeERPShopBindOrderCodeRequest.cs
│   │   │   │   └── OrderCodeERPShopBindOrderCodeResponse.cs
│   │   │   ├── Product/
│   │   │   │   ├── ProductAddV2Request.cs
│   │   │   │   ├── ProductAddV2Response.cs
│   │   │   │   ├── ProductDeleteRequest.cs
│   │   │   │   ├── ProductDeleteResponse.cs
│   │   │   │   ├── ProductDetailRequest.cs
│   │   │   │   ├── ProductDetailResponse.cs
│   │   │   │   ├── ProductEditBuyerLimitRequest.cs
│   │   │   │   ├── ProductEditBuyerLimitResponse.cs
│   │   │   │   ├── ProductEditV2Request.cs
│   │   │   │   ├── ProductEditV2Response.cs
│   │   │   │   ├── ProductGetCategoryPropertyRequest.cs
│   │   │   │   ├── ProductGetCategoryPropertyResponse.cs
│   │   │   │   ├── ProductListV2Request.cs
│   │   │   │   ├── ProductListV2Response.cs
│   │   │   │   ├── ProductSetOfflineRequest.cs
│   │   │   │   ├── ProductSetOfflineResponse.cs
│   │   │   │   ├── ProductSetOnlineRequest.cs
│   │   │   │   ├── ProductSetOnlineResponse.cs
│   │   │   │   └── Quality/
│   │   │   │       ├── ProductQualityDetailRequest.cs
│   │   │   │       ├── ProductQualityDetailResponse.cs
│   │   │   │       ├── ProductQualityListRequest.cs
│   │   │   │       ├── ProductQualityListResponse.cs
│   │   │   │       ├── ProductQualityTaskRequest.cs
│   │   │   │       └── ProductQualityTaskResponse.cs
│   │   │   ├── Promise/
│   │   │   │   ├── PromiseSetSKUShipTimeRequest.cs
│   │   │   │   └── PromiseSetSKUShipTimeResponse.cs
│   │   │   ├── Recycle/
│   │   │   │   ├── RecycleApplyChangePriceRequest.cs
│   │   │   │   ├── RecycleApplyChangePriceResponse.cs
│   │   │   │   ├── RecycleBuyerGetOrderDetailRequest.cs
│   │   │   │   ├── RecycleBuyerGetOrderDetailResponse.cs
│   │   │   │   ├── RecycleBuyerGetOrderListRequest.cs
│   │   │   │   ├── RecycleBuyerGetOrderListResponse.cs
│   │   │   │   ├── RecycleChangePriceRequest.cs
│   │   │   │   ├── RecycleChangePriceResponse.cs
│   │   │   │   ├── RecycleConfirmReceiveRequest.cs
│   │   │   │   ├── RecycleConfirmReceiveResponse.cs
│   │   │   │   ├── RecycleCreatePriceRequest.cs
│   │   │   │   ├── RecycleCreatePriceResponse.cs
│   │   │   │   ├── RecycleLogisticsBackRequest.cs
│   │   │   │   ├── RecycleLogisticsBackResponse.cs
│   │   │   │   ├── RecycleQualityTestingResultRequest.cs
│   │   │   │   ├── RecycleQualityTestingResultResponse.cs
│   │   │   │   ├── RecycleSellSucceedRequest.cs
│   │   │   │   └── RecycleSellSucceedResponse.cs
│   │   │   ├── SKU/
│   │   │   │   ├── SKUDetailRequest.cs
│   │   │   │   ├── SKUDetailResponse.cs
│   │   │   │   ├── SKUEditCodeRequest.cs
│   │   │   │   ├── SKUEditCodeResponse.cs
│   │   │   │   ├── SKUEditPriceRequest.cs
│   │   │   │   ├── SKUEditPriceResponse.cs
│   │   │   │   ├── SKUListRequest.cs
│   │   │   │   ├── SKUListResponse.cs
│   │   │   │   ├── SKUStockNumberRequest.cs
│   │   │   │   ├── SKUStockNumberResponse.cs
│   │   │   │   ├── SKUSyncStockBatchRequest.cs
│   │   │   │   ├── SKUSyncStockBatchResponse.cs
│   │   │   │   ├── SKUSyncStockRequest.cs
│   │   │   │   └── SKUSyncStockResponse.cs
│   │   │   ├── SPU/
│   │   │   │   ├── SPUAddShopSPURequest.cs
│   │   │   │   ├── SPUAddShopSPUResponse.cs
│   │   │   │   ├── SPUGetKeyPropertyByCategoryIdRequest.cs
│   │   │   │   ├── SPUGetKeyPropertyByCategoryIdResponse.cs
│   │   │   │   ├── SPUGetSPUInformationBySPUIdRequest.cs
│   │   │   │   ├── SPUGetSPUInformationBySPUIdResponse.cs
│   │   │   │   ├── SPUGetSPUTemplateRequest.cs
│   │   │   │   └── SPUGetSPUTemplateResponse.cs
│   │   │   ├── Shop/
│   │   │   │   ├── ShopBandListRequest.cs
│   │   │   │   ├── ShopBandListResponse.cs
│   │   │   │   ├── ShopGetShopCategoryRequest.cs
│   │   │   │   └── ShopGetShopCategoryResponse.cs
│   │   │   ├── Storage/
│   │   │   │   ├── StorageNotifySaleReturnStatusRequest.cs
│   │   │   │   └── StorageNotifySaleReturnStatusResponse.cs
│   │   │   ├── Token/
│   │   │   │   ├── TokenCreateRequest.cs
│   │   │   │   ├── TokenCreateResponse.cs
│   │   │   │   ├── TokenRefreshRequest.cs
│   │   │   │   └── TokenRefreshResponse.cs
│   │   │   ├── Warehouse/
│   │   │   │   ├── WarehouseAdjustInventoryRequest.cs
│   │   │   │   ├── WarehouseAdjustInventoryResponse.cs
│   │   │   │   ├── WarehouseCreateBatchRequest.cs
│   │   │   │   ├── WarehouseCreateBatchResponse.cs
│   │   │   │   ├── WarehouseCreateRequest.cs
│   │   │   │   ├── WarehouseCreateResponse.cs
│   │   │   │   ├── WarehouseEditRequest.cs
│   │   │   │   ├── WarehouseEditResponse.cs
│   │   │   │   ├── WarehouseInformationRequest.cs
│   │   │   │   ├── WarehouseInformationResponse.cs
│   │   │   │   ├── WarehouseListRequest.cs
│   │   │   │   ├── WarehouseListResponse.cs
│   │   │   │   ├── WarehouseRemoveAddressRequest.cs
│   │   │   │   ├── WarehouseRemoveAddressResponse.cs
│   │   │   │   ├── WarehouseSetAddressBatchRequest.cs
│   │   │   │   ├── WarehouseSetAddressBatchResponse.cs
│   │   │   │   ├── WarehouseSetAddressRequest.cs
│   │   │   │   ├── WarehouseSetAddressResponse.cs
│   │   │   │   ├── WarehouseSetPriorityRequest.cs
│   │   │   │   └── WarehouseSetPriorityResponse.cs
│   │   │   └── Yunc/
│   │   │       ├── ERP/
│   │   │       │   ├── YuncCancelOutboundOrderToBusinessRequest.cs
│   │   │       │   ├── YuncCancelOutboundOrderToBusinessResponse.cs
│   │   │       │   ├── YuncCreateOutboundOrderToBusinessRequest.cs
│   │   │       │   ├── YuncCreateOutboundOrderToBusinessResponse.cs
│   │   │       │   ├── YuncERPCargoSinglePushRequest.cs
│   │   │       │   ├── YuncERPCargoSinglePushResponse.cs
│   │   │       │   ├── YuncERPInboundCancelRequest.cs
│   │   │       │   ├── YuncERPInboundCancelResponse.cs
│   │   │       │   ├── YuncERPInboundCreateRequest.cs
│   │   │       │   ├── YuncERPInboundCreateResponse.cs
│   │   │       │   ├── YuncShopWarehouseRefQueryRequest.cs
│   │   │       │   └── YuncShopWarehouseRefQueryResponse.cs
│   │   │       └── WMS/
│   │   │           ├── YuncAdjustInventoryRequest.cs
│   │   │           ├── YuncAdjustInventoryResponse.cs
│   │   │           ├── YuncPushOutboundFeedbackRequest.cs
│   │   │           ├── YuncPushOutboundFeedbackResponse.cs
│   │   │           ├── YuncWMSInboundCallbackRequest.cs
│   │   │           └── YuncWMSInboundCallbackResponse.cs
│   │   ├── README.md
│   │   ├── SKIT.FlurlHttpClient.ByteDance.DouyinShop.csproj
│   │   ├── Settings/
│   │   │   └── Credentials.cs
│   │   └── Utilities/
│   │       ├── HMACUtility.cs
│   │       ├── Internal/
│   │       │   ├── FileHttpContentBuilder.cs
│   │       │   └── JsonUtility.cs
│   │       └── MD5Utility.cs
│   ├── SKIT.FlurlHttpClient.ByteDance.MicroApp/
│   │   ├── Converters/
│   │   │   └── [Internal]/
│   │   │       ├── Newtonsoft.Json/
│   │   │       │   └── DateTimeOffset/
│   │   │       │       └── CstDateTimeOffsetConverter.cs
│   │   │       └── System.Text.Json/
│   │   │           └── DateTimeOffset/
│   │   │               └── CstDateTimeOffsetConverter.cs
│   │   ├── DouyinMicroAppClient.cs
│   │   ├── DouyinMicroAppClientBuilder.cs
│   │   ├── DouyinMicroAppClientOptions.cs
│   │   ├── DouyinMicroAppEndpoints.cs
│   │   ├── DouyinMicroAppEvent.cs
│   │   ├── DouyinMicroAppException.cs
│   │   ├── DouyinMicroAppRequest.cs
│   │   ├── DouyinMicroAppResponse.cs
│   │   ├── Events/
│   │   │   └── Message/
│   │   │       ├── ImageMessageEvent.cs
│   │   │       └── TextMessageEvent.cs
│   │   ├── ExtendedSDK/
│   │   │   ├── OpenApi/
│   │   │   │   ├── DouyinMicroAppOpenApiClient.cs
│   │   │   │   ├── DouyinMicroAppOpenApiClientBuilder.cs
│   │   │   │   ├── DouyinMicroAppOpenApiClientOptions.cs
│   │   │   │   ├── DouyinMicroAppOpenApiEndpoints.cs
│   │   │   │   ├── DouyinMicroAppOpenApiEvent.cs
│   │   │   │   ├── DouyinMicroAppOpenApiRequest.cs
│   │   │   │   ├── DouyinMicroAppOpenApiResponse.cs
│   │   │   │   ├── Events/
│   │   │   │   │   ├── Auth/
│   │   │   │   │   │   ├── ComponentAuthorizedEvent.cs
│   │   │   │   │   │   ├── ComponentPushTicketEvent.cs
│   │   │   │   │   │   ├── ComponentUnauthorizedEvent.cs
│   │   │   │   │   │   └── ComponentUpdateAuthorizedEvent.cs
│   │   │   │   │   ├── MicroAppManagement/
│   │   │   │   │   │   ├── AppNameResetEvent.cs
│   │   │   │   │   │   ├── ModifyAppCategoryEvent.cs
│   │   │   │   │   │   ├── ModifyAppIconEvent.cs
│   │   │   │   │   │   ├── ModifyAppIntroductionEvent.cs
│   │   │   │   │   │   ├── ModifyAppNameEvent.cs
│   │   │   │   │   │   └── PackageAuditEvent.cs
│   │   │   │   │   └── MicroAppOperation/
│   │   │   │   │       ├── AliasAuditResultEvent.cs
│   │   │   │   │       ├── ApplyCapabilityEvent.cs
│   │   │   │   │       ├── ApplyLiveCapabilityEvent.cs
│   │   │   │   │       ├── ApplyPhoneNumberCapabilityEvent.cs
│   │   │   │   │       ├── ApplyShareTemplateEvent.cs
│   │   │   │   │       ├── ApplyVideoCapabilityEvent.cs
│   │   │   │   │       ├── AwemePermissionAuditResultEvent.cs
│   │   │   │   │       ├── AwemeVideoKeywordAuditResultEvent.cs
│   │   │   │   │       ├── BindAwemeUserEvent.cs
│   │   │   │   │       ├── CreateSubscribeNotificationTemplateResultEvent.cs
│   │   │   │   │       ├── ScopeQuotaAuditResultEvent.cs
│   │   │   │   │       ├── SearchTagAuditResultEvent.cs
│   │   │   │   │       └── SelfMountBindEvent.cs
│   │   │   │   ├── Extensions/
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientEventExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsBasicInfoExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsCategoryExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsCreditScoreExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsDomainExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsFileExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsICPRecordExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsMicroAppExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsPackageVersionExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsTrialExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteLegacyAuthExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteLegacyMicroAppExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteLegacySettleExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteLegacyThirdPartyExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecutePlatformWebhookExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteTpAppAuthExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteTpAppDomainExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteTpAppFileExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteTpAppTemplateExtensions.cs
│   │   │   │   │   └── DouyinMicroAppOpenApiClientParameterExtensions.cs
│   │   │   │   ├── Models/
│   │   │   │   │   ├── AppsBasicInfo/
│   │   │   │   │   │   ├── OpenAppsBasicInfoCheckAppNameV2Request.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoCheckAppNameV2Response.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoGetInfoV2Request.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoGetInfoV2Response.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoGetQrcodeV2Request.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoGetQrcodeV2Response.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoModifyAppIconV2Request.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoModifyAppIconV2Response.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoModifyAppIntroductionV2Request.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoModifyAppIntroductionV2Response.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoModifyAppNameV2Request.cs
│   │   │   │   │   │   └── OpenAppsBasicInfoModifyAppNameV2Response.cs
│   │   │   │   │   ├── AppsCategory/
│   │   │   │   │   │   ├── OpenAppsCategoryAddCategoriesV1Request.cs
│   │   │   │   │   │   ├── OpenAppsCategoryAddCategoriesV1Response.cs
│   │   │   │   │   │   ├── OpenAppsCategoryDeleteCategoriesV1Request.cs
│   │   │   │   │   │   ├── OpenAppsCategoryDeleteCategoriesV1Response.cs
│   │   │   │   │   │   ├── OpenAppsCategoryGetAllCategoriesV1Request.cs
│   │   │   │   │   │   ├── OpenAppsCategoryGetAllCategoriesV1Response.cs
│   │   │   │   │   │   ├── OpenAppsCategoryGetAuditCategoriesV1Request.cs
│   │   │   │   │   │   ├── OpenAppsCategoryGetAuditCategoriesV1Response.cs
│   │   │   │   │   │   ├── OpenAppsCategorySupplyCategoriesV1Request.cs
│   │   │   │   │   │   └── OpenAppsCategorySupplyCategoriesV1Response.cs
│   │   │   │   │   ├── AppsCreditScore/
│   │   │   │   │   │   ├── OpenAppsCreditScoreGetCreditScoreV2Request.cs
│   │   │   │   │   │   └── OpenAppsCreditScoreGetCreditScoreV2Response.cs
│   │   │   │   │   ├── AppsDomain/
│   │   │   │   │   │   ├── OpenAppsDomainModifyServerDomainV2Request.cs
│   │   │   │   │   │   ├── OpenAppsDomainModifyServerDomainV2Response.cs
│   │   │   │   │   │   ├── OpenAppsDomainModifyWebviewDomainV2Request.cs
│   │   │   │   │   │   └── OpenAppsDomainModifyWebviewDomainV2Response.cs
│   │   │   │   │   ├── AppsFile/
│   │   │   │   │   │   ├── OpenAppsFileUploadMaterialV2Request.cs
│   │   │   │   │   │   └── OpenAppsFileUploadMaterialV2Response.cs
│   │   │   │   │   ├── AppsICPRecord/
│   │   │   │   │   │   ├── OpenAppsICPRecordGetFacialRecognitionUrlV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordGetFacialRecognitionUrlV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryCorpTypeListV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryCorpTypeListV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryFacialRecognitionStatusV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryFacialRecognitionStatusV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryInchargePeopleCredentialsTypeListV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryInchargePeopleCredentialsTypeListV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryPreApprovalItemTypeListV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryPreApprovalItemTypeListV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryRecordStatusV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryRecordStatusV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryRegionListV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryRegionListV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryServiceContentTypeListV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryServiceContentTypeListV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordSendFacialRecognitionNotifyV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordSendFacialRecognitionNotifyV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordSubmitRecordInfoV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordSubmitRecordInfoV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordUploadImageV1Request.cs
│   │   │   │   │   │   └── OpenAppsICPRecordUploadImageV1Response.cs
│   │   │   │   │   ├── AppsMicroApp/
│   │   │   │   │   │   ├── OpenAppsMicroAppCode2SessionV1Request.cs
│   │   │   │   │   │   └── OpenAppsMicroAppCode2SessionV1Response.cs
│   │   │   │   │   ├── AppsPackageVersion/
│   │   │   │   │   │   ├── OpenAppsPackageVersionAuditV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionAuditV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionGetAuditHostsV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionGetAuditHostsV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionGetVersionsV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionGetVersionsV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionReleaseV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionReleaseV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionRevokeAuditV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionRevokeAuditV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionRollbackV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionRollbackV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionUploadV1Request.cs
│   │   │   │   │   │   └── OpenAppsPackageVersionUploadV1Response.cs
│   │   │   │   │   ├── AppsTrial/
│   │   │   │   │   │   ├── OpenAppsTrialGetTrialInfoV2Request.cs
│   │   │   │   │   │   └── OpenAppsTrialGetTrialInfoV2Response.cs
│   │   │   │   │   ├── Platform/
│   │   │   │   │   │   └── Webhook/
│   │   │   │   │   │       ├── OpenPlatformWebhookEventStatusListV1Request.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookEventStatusListV1Response.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookResetSecretV1Request.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookResetSecretV1Response.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookSaveCallbackUrlV1Request.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookSaveCallbackUrlV1Response.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookUpdateEventStatusV1Request.cs
│   │   │   │   │   │       └── OpenPlatformWebhookUpdateEventStatusV1Response.cs
│   │   │   │   │   ├── TpAppAuth/
│   │   │   │   │   │   ├── OpenAuthThirdPartyTokenV2Request.cs
│   │   │   │   │   │   ├── OpenAuthThirdPartyTokenV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGenerateLinkV3Request.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGenerateLinkV3Response.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGetAuthAppListV2Request.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGetAuthAppListV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGetAuthTokenV2Request.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGetAuthTokenV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppAuthRetrieveAuthCodeV2Request.cs
│   │   │   │   │   │   └── OpenTpAppAuthRetrieveAuthCodeV2Response.cs
│   │   │   │   │   ├── TpAppDomain/
│   │   │   │   │   │   ├── OpenTpAppDomainGetWebviewCheckFileInfoV2Request.cs
│   │   │   │   │   │   └── OpenTpAppDomainGetWebviewCheckFileInfoV2Response.cs
│   │   │   │   │   ├── TpAppFile/
│   │   │   │   │   │   ├── OpenTpAppFileUploadMaterialV2Request.cs
│   │   │   │   │   │   └── OpenTpAppFileUploadMaterialV2Response.cs
│   │   │   │   │   ├── TpAppTemplate/
│   │   │   │   │   │   ├── OpenTpAppTemplateAddTemplateV2Request.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateAddTemplateV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateDeleteTemplateV2Request.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateDeleteTemplateV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateGetTemplateAppListV2Request.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateGetTemplateAppListV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateGetTemplateListV2Request.cs
│   │   │   │   │   │   └── OpenTpAppTemplateGetTemplateListV2Response.cs
│   │   │   │   │   └── _Legacy/
│   │   │   │   │       ├── Auth/
│   │   │   │   │       │   ├── OpenApiAuthGenerateLinkV2Request.cs
│   │   │   │   │       │   ├── OpenApiAuthGenerateLinkV2Response.cs
│   │   │   │   │       │   ├── OpenApiAuthPreAuthCodeV2Request.cs
│   │   │   │   │       │   ├── OpenApiAuthPreAuthCodeV2Response.cs
│   │   │   │   │       │   ├── OpenApiAuthRetrieveV1Request.cs
│   │   │   │   │       │   ├── OpenApiAuthRetrieveV1Response.cs
│   │   │   │   │       │   ├── OpenApiAuthThirdPartyTokenV1Request.cs
│   │   │   │   │       │   ├── OpenApiAuthThirdPartyTokenV1Response.cs
│   │   │   │   │       │   ├── OpenApiOAuthTokenV1Request.cs
│   │   │   │   │       │   └── OpenApiOAuthTokenV1Response.cs
│   │   │   │   │       ├── MicroApp/
│   │   │   │   │       │   ├── App/
│   │   │   │   │       │   │   ├── Category/
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppAddCategoriesV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppAddCategoriesV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppAllCategoriesV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppAllCategoriesV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppCategoriesV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppCategoriesV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppDeleteCategoriesV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppDeleteCategoriesV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppSupplyCategoriesV1Request.cs
│   │   │   │   │       │   │   │   └── OpenApiMicroAppAppSupplyCategoriesV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppCheckAppNameV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppCheckAppNameV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppCreditScoreV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppCreditScoreV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppInfoV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppInfoV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppIconV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppIconV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppIntroductionV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppIntroductionV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppNameV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppNameV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyServerDomainV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyServerDomainV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyWebviewDomainV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyWebviewDomainV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppQrcodeV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppQrcodeV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppQualityRatingV1Request.cs
│   │   │   │   │       │   │   └── OpenApiMicroAppAppQualityRatingV1Response.cs
│   │   │   │   │       │   ├── OpenApiMicroAppCode2SessionV1Request.cs
│   │   │   │   │       │   ├── OpenApiMicroAppCode2SessionV1Response.cs
│   │   │   │   │       │   ├── OpenApiMicroAppUploadMaterialV1Request.cs
│   │   │   │   │       │   ├── OpenApiMicroAppUploadMaterialV1Response.cs
│   │   │   │   │       │   ├── Operation/
│   │   │   │   │       │   │   ├── Application/
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationLiveApplicationStatusV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationLiveApplicationStatusV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationLiveApplicationV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationLiveApplicationV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationPhoneNumberApplicationV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationPhoneNumberApplicationV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationVideoApplicationStatusV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationVideoApplicationStatusV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationVideoApplicationV1Request.cs
│   │   │   │   │       │   │   │   └── OpenApiMicroAppOperationVideoApplicationV1Response.cs
│   │   │   │   │       │   │   ├── ShareTemplate/
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationAddShareTemplateV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationAddShareTemplateV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationDeleteShareTemplateV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationDeleteShareTemplateV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationModifyShareTemplateV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationModifyShareTemplateV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationSetDefaultShareTemplateV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationSetDefaultShareTemplateV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationShareTemplateListV1Request.cs
│   │   │   │   │       │   │   │   └── OpenApiMicroAppOperationShareTemplateListV1Response.cs
│   │   │   │   │       │   │   └── ShopMaterial/
│   │   │   │   │       │   │       ├── OpenApiMicroAppOperationAddShopMaterialV1Request.cs
│   │   │   │   │       │   │       ├── OpenApiMicroAppOperationAddShopMaterialV1Response.cs
│   │   │   │   │       │   │       ├── OpenApiMicroAppOperationQueryShopMaterialV1Request.cs
│   │   │   │   │       │   │       └── OpenApiMicroAppOperationQueryShopMaterialV1Response.cs
│   │   │   │   │       │   └── Package/
│   │   │   │   │       │       ├── OpenApiMicroAppPackageAuditHostsV1Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageAuditHostsV1Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageAuditV2Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageAuditV2Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageReleaseV1Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageReleaseV1Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageRevokeAuditV1Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageRevokeAuditV1Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageRollbackV1Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageRollbackV1Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageUploadV1Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageUploadV1Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageVersionsV1Request.cs
│   │   │   │   │       │       └── OpenApiMicroAppPackageVersionsV1Response.cs
│   │   │   │   │       ├── Settle/
│   │   │   │   │       │   ├── OpenApiSettleApplyV1Request.cs
│   │   │   │   │       │   ├── OpenApiSettleApplyV1Response.cs
│   │   │   │   │       │   ├── OpenApiSettleGetApplyStatusV1Request.cs
│   │   │   │   │       │   ├── OpenApiSettleGetApplyStatusV1Response.cs
│   │   │   │   │       │   ├── OpenApiSettlePreCheckV1Request.cs
│   │   │   │   │       │   └── OpenApiSettlePreCheckV1Response.cs
│   │   │   │   │       ├── ThirdParty/
│   │   │   │   │       │   ├── Domain/
│   │   │   │   │       │   │   ├── OpenApiThirdPartyDownloadWebviewFileV1Request.cs
│   │   │   │   │       │   │   └── OpenApiThirdPartyDownloadWebviewFileV1Response.cs
│   │   │   │   │       │   ├── OpenApiThirdPartyAuthAppListV1Request.cs
│   │   │   │   │       │   ├── OpenApiThirdPartyAuthAppListV1Response.cs
│   │   │   │   │       │   ├── OpenApiThirdPartyUploadPictureMaterialV1Request.cs
│   │   │   │   │       │   ├── OpenApiThirdPartyUploadPictureMaterialV1Response.cs
│   │   │   │   │       │   ├── POI/
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOIBaseQueryAMapV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOIBaseQueryAMapV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierMatchV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierMatchV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryMatchTaskV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryMatchTaskV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryMatchV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryMatchV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierSyncV1Request.cs
│   │   │   │   │       │   │   └── OpenApiThirdPartyPOISupplierSyncV1Response.cs
│   │   │   │   │       │   └── Template/
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateAddTemplateV1Request.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateAddTemplateV1Response.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateDeleteTemplateV1Request.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateDeleteTemplateV1Response.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateGetTemplateAppListV1Request.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateGetTemplateAppListV1Response.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateGetTemplateListV1Request.cs
│   │   │   │   │       │       └── OpenApiThirdPartyTemplateGetTemplateListV1Response.cs
│   │   │   │   │       └── __Abstractions/
│   │   │   │   │           └── DouyinMicroAppOpenApiLegacyResponseBase.cs
│   │   │   │   └── Settings/
│   │   │   │       └── Credentials.cs
│   │   │   ├── ProductApi/
│   │   │   │   ├── DouyinMicroAppProductApiClient.cs
│   │   │   │   ├── DouyinMicroAppProductApiClientBuilder.cs
│   │   │   │   ├── DouyinMicroAppProductApiClientOptions.cs
│   │   │   │   ├── DouyinMicroAppProductApiEndpoints.cs
│   │   │   │   ├── DouyinMicroAppProductApiEvent.cs
│   │   │   │   ├── DouyinMicroAppProductApiRequest.cs
│   │   │   │   ├── DouyinMicroAppProductApiResponse.cs
│   │   │   │   ├── Events/
│   │   │   │   │   ├── ProductEvent.cs
│   │   │   │   │   ├── ProductFulfilmentEvent.cs
│   │   │   │   │   ├── ProductQualificationEvent.cs
│   │   │   │   │   └── ProductResourceEvent.cs
│   │   │   │   ├── Extensions/
│   │   │   │   │   ├── DouyinMicroAppProductApiClientEventExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppProductApiClientExecuteCallbackExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppProductApiClientExecuteProductExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppProductApiClientExecuteQualificationExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppProductApiClientExecuteRefundRuleExtensions.cs
│   │   │   │   │   └── DouyinMicroAppProductApiClientExecuteResourceExtensions.cs
│   │   │   │   ├── Models/
│   │   │   │   │   ├── Callback/
│   │   │   │   │   │   ├── ProductSyncCallbackUrlRequest.cs
│   │   │   │   │   │   └── ProductSyncCallbackUrlResponse.cs
│   │   │   │   │   ├── Product/
│   │   │   │   │   │   ├── ProductAddRequest.cs
│   │   │   │   │   │   ├── ProductAddResponse.cs
│   │   │   │   │   │   ├── ProductModifyNoAuditRequest.cs
│   │   │   │   │   │   ├── ProductModifyNoAuditResponse.cs
│   │   │   │   │   │   ├── ProductModifyRequest.cs
│   │   │   │   │   │   ├── ProductModifyResponse.cs
│   │   │   │   │   │   ├── ProductModifyStatusRequest.cs
│   │   │   │   │   │   ├── ProductModifyStatusResponse.cs
│   │   │   │   │   │   ├── ProductQueryClassInfoRequest.cs
│   │   │   │   │   │   ├── ProductQueryClassInfoResponse.cs
│   │   │   │   │   │   ├── ProductQueryRequest.cs
│   │   │   │   │   │   ├── ProductQueryResponse.cs
│   │   │   │   │   │   ├── ProductQueryReviewRequest.cs
│   │   │   │   │   │   ├── ProductQueryReviewResponse.cs
│   │   │   │   │   │   ├── ProductQueryTemplateInfoRequest.cs
│   │   │   │   │   │   └── ProductQueryTemplateInfoResponse.cs
│   │   │   │   │   ├── Qualification/
│   │   │   │   │   │   ├── ProductAddQualificationRequest.cs
│   │   │   │   │   │   ├── ProductAddQualificationResponse.cs
│   │   │   │   │   │   ├── ProductModifyQualificationRequest.cs
│   │   │   │   │   │   ├── ProductModifyQualificationResponse.cs
│   │   │   │   │   │   ├── ProductQueryQualificationRequest.cs
│   │   │   │   │   │   └── ProductQueryQualificationResponse.cs
│   │   │   │   │   ├── RefundRule/
│   │   │   │   │   │   ├── ProductModifyRefundRuleRequest.cs
│   │   │   │   │   │   ├── ProductModifyRefundRuleResponse.cs
│   │   │   │   │   │   ├── ProductQueryRefundRuleMetaRequest.cs
│   │   │   │   │   │   └── ProductQueryRefundRuleMetaResponse.cs
│   │   │   │   │   └── Resource/
│   │   │   │   │       ├── ProductQueryResourceStatusRequest.cs
│   │   │   │   │       ├── ProductQueryResourceStatusResponse.cs
│   │   │   │   │       ├── ProductUploadResourceRequest.cs
│   │   │   │   │       └── ProductUploadResourceResponse.cs
│   │   │   │   └── Settings/
│   │   │   │       └── Credentials.cs
│   │   │   ├── RoleApi/
│   │   │   │   ├── DouyinMicroAppRoleApiClient.cs
│   │   │   │   ├── DouyinMicroAppRoleApiClientBuilder.cs
│   │   │   │   ├── DouyinMicroAppRoleApiClientOptions.cs
│   │   │   │   ├── DouyinMicroAppRoleApiEndpoints.cs
│   │   │   │   ├── DouyinMicroAppRoleApiRequest.cs
│   │   │   │   ├── DouyinMicroAppRoleApiResponse.cs
│   │   │   │   ├── Extensions/
│   │   │   │   │   └── DouyinMicroAppRoleApiClientExecuteRoleExtensions.cs
│   │   │   │   ├── Models/
│   │   │   │   │   ├── Auth/
│   │   │   │   │   │   ├── AuthEntityAddClassAuthRequest.cs
│   │   │   │   │   │   ├── AuthEntityAddClassAuthResponse.cs
│   │   │   │   │   │   ├── AuthEntityByPartnerRequest.cs
│   │   │   │   │   │   ├── AuthEntityByPartnerResponse.cs
│   │   │   │   │   │   ├── AuthEntityBySelfRequest.cs
│   │   │   │   │   │   ├── AuthEntityBySelfResponse.cs
│   │   │   │   │   │   ├── AuthEntityGetAuditDetailRequest.cs
│   │   │   │   │   │   ├── AuthEntityGetAuditDetailResponse.cs
│   │   │   │   │   │   ├── AuthEntityGetBasicAuthRequest.cs
│   │   │   │   │   │   ├── AuthEntityGetBasicAuthResponse.cs
│   │   │   │   │   │   ├── AuthEntityGetClassAuthRequest.cs
│   │   │   │   │   │   ├── AuthEntityGetClassAuthResponse.cs
│   │   │   │   │   │   ├── AuthEntityUpdateBasicAuthRequest.cs
│   │   │   │   │   │   ├── AuthEntityUpdateBasicAuthResponse.cs
│   │   │   │   │   │   ├── AuthEntityUpdateClassAuthRequest.cs
│   │   │   │   │   │   └── AuthEntityUpdateClassAuthResponse.cs
│   │   │   │   │   ├── AuthEntityQueryEntityInfoRequest.cs
│   │   │   │   │   ├── AuthEntityQueryEntityInfoResponse.cs
│   │   │   │   │   ├── AuthEntityUploadMaterialRequest.cs
│   │   │   │   │   ├── AuthEntityUploadMaterialResponse.cs
│   │   │   │   │   ├── Bind/
│   │   │   │   │   │   ├── AuthEntityEnableMountScopeRequest.cs
│   │   │   │   │   │   ├── AuthEntityEnableMountScopeResponse.cs
│   │   │   │   │   │   ├── AuthEntityQueryBindToCListRequest.cs
│   │   │   │   │   │   ├── AuthEntityQueryBindToCListResponse.cs
│   │   │   │   │   │   ├── AuthEntityQueryMountScopeRequest.cs
│   │   │   │   │   │   ├── AuthEntityQueryMountScopeResponse.cs
│   │   │   │   │   │   ├── AuthEntityUnbindAccountRequest.cs
│   │   │   │   │   │   └── AuthEntityUnbindAccountResponse.cs
│   │   │   │   │   ├── MerchantCode/
│   │   │   │   │   │   ├── AuthEntityActivateMerchantCodeRequest.cs
│   │   │   │   │   │   ├── AuthEntityActivateMerchantCodeResponse.cs
│   │   │   │   │   │   ├── AuthEntityQueryMerchantCodeStatusRequest.cs
│   │   │   │   │   │   └── AuthEntityQueryMerchantCodeStatusResponse.cs
│   │   │   │   │   └── Role/
│   │   │   │   │       ├── AuthEntityAddRoleRequest.cs
│   │   │   │   │       ├── AuthEntityAddRoleResponse.cs
│   │   │   │   │       ├── AuthEntityAuthRoleRequest.cs
│   │   │   │   │       ├── AuthEntityAuthRoleResponse.cs
│   │   │   │   │       ├── AuthEntityBindRoleRequest.cs
│   │   │   │   │       ├── AuthEntityBindRoleResponse.cs
│   │   │   │   │       ├── AuthEntityGetAppIdAuthRequest.cs
│   │   │   │   │       ├── AuthEntityGetAppIdAuthResponse.cs
│   │   │   │   │       ├── AuthEntityGetBindListRequest.cs
│   │   │   │   │       ├── AuthEntityGetBindListResponse.cs
│   │   │   │   │       ├── AuthEntityUnauthRoleRequest.cs
│   │   │   │   │       ├── AuthEntityUnauthRoleResponse.cs
│   │   │   │   │       ├── AuthEntityUnbindRoleRequest.cs
│   │   │   │   │       ├── AuthEntityUnbindRoleResponse.cs
│   │   │   │   │       ├── AuthEntityUpdateAuthLetterRequest.cs
│   │   │   │   │       └── AuthEntityUpdateAuthLetterResponse.cs
│   │   │   │   └── Settings/
│   │   │   │       └── Credentials.cs
│   │   │   └── Webcast/
│   │   │       ├── DouyinMicroAppWebcastClient.cs
│   │   │       ├── DouyinMicroAppWebcastClientBuilder.cs
│   │   │       ├── DouyinMicroAppWebcastClientOptions.cs
│   │   │       ├── DouyinMicroAppWebcastEndpoints.cs
│   │   │       ├── DouyinMicroAppWebcastRequest.cs
│   │   │       ├── DouyinMicroAppWebcastResponse.cs
│   │   │       ├── Extensions/
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteAudienceExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteBusinessExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteCardExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteFileExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteGamingConExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteGiftExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteLinkMicExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteLiveDataExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteQuizExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteWebcastMateExtensions.cs
│   │   │       │   └── DouyinMicroAppWebcastClientResponseVerificationExtensions.cs
│   │   │       ├── Interceptors/
│   │   │       │   └── DouyinMicroAppWebcastRequestSigningInterceptor.cs
│   │   │       ├── Models/
│   │   │       │   ├── Audience/
│   │   │       │   │   ├── WebcastAudienceJoinGameRequest.cs
│   │   │       │   │   ├── WebcastAudienceJoinGameResponse.cs
│   │   │       │   │   ├── WebcastAudienceLeaveGameRequest.cs
│   │   │       │   │   └── WebcastAudienceLeaveGameResponse.cs
│   │   │       │   ├── Business/
│   │   │       │   │   ├── WebcastBusinessDiamondOrderAckRequest.cs
│   │   │       │   │   ├── WebcastBusinessDiamondOrderAckResponse.cs
│   │   │       │   │   ├── WebcastBusinessDiamondQueryRequest.cs
│   │   │       │   │   ├── WebcastBusinessDiamondQueryResponse.cs
│   │   │       │   │   ├── WebcastBusinessDiamondReconciliationRequest.cs
│   │   │       │   │   ├── WebcastBusinessDiamondReconciliationResponse.cs
│   │   │       │   │   ├── WebcastBusinessOrderPrecreateRequest.cs
│   │   │       │   │   └── WebcastBusinessOrderPrecreateResponse.cs
│   │   │       │   ├── Card/
│   │   │       │   │   ├── WebcastCardDefaultGetRequest.cs
│   │   │       │   │   ├── WebcastCardDefaultGetResponse.cs
│   │   │       │   │   ├── WebcastCardDefaultSetRequest.cs
│   │   │       │   │   ├── WebcastCardDefaultSetResponse.cs
│   │   │       │   │   ├── WebcastCardDeleteRequest.cs
│   │   │       │   │   ├── WebcastCardDeleteResponse.cs
│   │   │       │   │   ├── WebcastCardGetAllCardsForUserRequest.cs
│   │   │       │   │   ├── WebcastCardGetAllCardsForUserResponse.cs
│   │   │       │   │   ├── WebcastCardGetRequest.cs
│   │   │       │   │   ├── WebcastCardGetResponse.cs
│   │   │       │   │   ├── WebcastCardSetRequest.cs
│   │   │       │   │   ├── WebcastCardSetResponse.cs
│   │   │       │   │   ├── WebcastCardUpdateRequest.cs
│   │   │       │   │   └── WebcastCardUpdateResponse.cs
│   │   │       │   ├── File/
│   │   │       │   │   ├── WebcastFileCardImageDeleteRequest.cs
│   │   │       │   │   ├── WebcastFileCardImageDeleteResponse.cs
│   │   │       │   │   ├── WebcastFileCardImageGetRequest.cs
│   │   │       │   │   ├── WebcastFileCardImageGetResponse.cs
│   │   │       │   │   ├── WebcastFileCardImageUploadRequest.cs
│   │   │       │   │   └── WebcastFileCardImageUploadResponse.cs
│   │   │       │   ├── GamingCon/
│   │   │       │   │   ├── WebcastGamingConRoundCoGameUploadUserDataRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundCoGameUploadUserDataResponse.cs
│   │   │       │   │   ├── WebcastGamingConRoundCompleteUploadUserResultRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundCompleteUploadUserResultResponse.cs
│   │   │       │   │   ├── WebcastGamingConRoundSyncStatusRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundSyncStatusResponse.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadRankListRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadRankListResponse.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadUserGroupInfoRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadUserGroupInfoResponse.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadUserResultRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadUserResultResponse.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankCompleteUploadUserResultRequest.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankCompleteUploadUserResultResponse.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankSetValidVersionRequest.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankSetValidVersionResponse.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankUploadRankListRequest.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankUploadRankListResponse.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankUploadUserResultRequest.cs
│   │   │       │   │   └── WebcastGamingConWorldRankUploadUserResultResponse.cs
│   │   │       │   ├── Gift/
│   │   │       │   │   ├── WebcastGiftTopGiftRequest.cs
│   │   │       │   │   └── WebcastGiftTopGiftResponse.cs
│   │   │       │   ├── LinkMic/
│   │   │       │   │   ├── WebcastLinkMicQueryRequest.cs
│   │   │       │   │   └── WebcastLinkMicQueryResponse.cs
│   │   │       │   ├── LiveData/
│   │   │       │   │   ├── WebcastLiveDataTaskFailDataGetRequest.cs
│   │   │       │   │   ├── WebcastLiveDataTaskFailDataGetResponse.cs
│   │   │       │   │   ├── WebcastLiveDataTaskGetRequest.cs
│   │   │       │   │   ├── WebcastLiveDataTaskGetResponse.cs
│   │   │       │   │   ├── WebcastLiveDataTaskStartRequest.cs
│   │   │       │   │   ├── WebcastLiveDataTaskStartResponse.cs
│   │   │       │   │   ├── WebcastLiveDataTaskStopRequest.cs
│   │   │       │   │   └── WebcastLiveDataTaskStopResponse.cs
│   │   │       │   ├── Quiz/
│   │   │       │   │   ├── WebcastQuizGetRequest.cs
│   │   │       │   │   └── WebcastQuizGetResponse.cs
│   │   │       │   └── WebcastMate/
│   │   │       │       ├── WebcastWebcastMateInfoRequest.cs
│   │   │       │       └── WebcastWebcastMateInfoResponse.cs
│   │   │       └── Settings/
│   │   │           └── Credentials.cs
│   │   ├── Extensions/
│   │   │   ├── DouyinMicroAppClientEventExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsAdPlacementExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsAuthExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsCapacityExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsCategoryExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsCensorExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsDeveloperToolboxExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsDouyinExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsECPayExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsItemExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsLiveBookingExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsPlayletBusinessExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsPrivacySettingExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsQrcodeExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsSearchExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsShareExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsTaskExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsTradeExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsTrafficPermissionExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsUrlLinkExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsUrlSchemaExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsUserExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsVideoExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteECommerceExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteGiftExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyAppsECPayExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyAppsExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyAppsGameExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyAppsStorageExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyAppsTradeExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyCommentExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyTagsExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLiveBookingExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteMatchTaskBoxExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteNotificationSubscriptionExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecutePlatformDataAnalysisExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteProductExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecutePromotionExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteTradeAuthDeveloperExtensions.cs
│   │   │   └── DouyinMicroAppClientExecuteTradeBasicDeveloperExtensions.cs
│   │   ├── Models/
│   │   │   ├── AppsAdPlacement/
│   │   │   │   ├── AppsAdPlacementAddV1Request.cs
│   │   │   │   ├── AppsAdPlacementAddV1Response.cs
│   │   │   │   ├── AppsAdPlacementQueryV1Request.cs
│   │   │   │   ├── AppsAdPlacementQueryV1Response.cs
│   │   │   │   ├── AppsAdPlacementUpdateV1Request.cs
│   │   │   │   └── AppsAdPlacementUpdateV1Response.cs
│   │   │   ├── AppsAuth/
│   │   │   │   ├── AppsAuthGetRelatedIdV1Request.cs
│   │   │   │   └── AppsAuthGetRelatedIdV1Response.cs
│   │   │   ├── AppsCapacity/
│   │   │   │   ├── Ad/
│   │   │   │   │   ├── AppsCapacityQueryAdIncomeV3Request.cs
│   │   │   │   │   ├── AppsCapacityQueryAdIncomeV3Response.cs
│   │   │   │   │   ├── AppsCapacityQueryAdSettlementListV3Request.cs
│   │   │   │   │   └── AppsCapacityQueryAdSettlementListV3Response.cs
│   │   │   │   ├── AwemeBind/
│   │   │   │   │   ├── AppsCapacityBindAwemeRelationV1Request.cs
│   │   │   │   │   ├── AppsCapacityBindAwemeRelationV1Response.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeBindTemplateInfoV1Request.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeBindTemplateInfoV1Response.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeBindTemplateListV1Request.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeBindTemplateListV1Response.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeRelationBindQrcodeV1Request.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeRelationBindQrcodeV1Response.cs
│   │   │   │   │   ├── AppsCapacityQueryAwemeRelationListV1Request.cs
│   │   │   │   │   ├── AppsCapacityQueryAwemeRelationListV1Response.cs
│   │   │   │   │   ├── AppsCapacityUnbindAwemeRelationV1Request.cs
│   │   │   │   │   └── AppsCapacityUnbindAwemeRelationV1Response.cs
│   │   │   │   ├── AwemeKeyword/
│   │   │   │   │   ├── AppsCapacityAddAwemeVideoKeywordV1Request.cs
│   │   │   │   │   ├── AppsCapacityAddAwemeVideoKeywordV1Response.cs
│   │   │   │   │   ├── AppsCapacityDeleteAwemeVideoKeywordV1Request.cs
│   │   │   │   │   ├── AppsCapacityDeleteAwemeVideoKeywordV1Response.cs
│   │   │   │   │   ├── AppsCapacityQueryAwemeVideoKeywordListV1Request.cs
│   │   │   │   │   └── AppsCapacityQueryAwemeVideoKeywordListV1Response.cs
│   │   │   │   ├── Delivery/
│   │   │   │   │   ├── AppsCapacityCreateAliasV1Request.cs
│   │   │   │   │   ├── AppsCapacityCreateAliasV1Response.cs
│   │   │   │   │   ├── AppsCapacityDeleteAliasV1Request.cs
│   │   │   │   │   ├── AppsCapacityDeleteAliasV1Response.cs
│   │   │   │   │   ├── AppsCapacityListAliasV1Request.cs
│   │   │   │   │   ├── AppsCapacityListAliasV1Response.cs
│   │   │   │   │   ├── AppsCapacityModifyAliasV1Request.cs
│   │   │   │   │   ├── AppsCapacityModifyAliasV1Response.cs
│   │   │   │   │   ├── AppsCapacityQuerySearchTagListV1Request.cs
│   │   │   │   │   ├── AppsCapacityQuerySearchTagListV1Response.cs
│   │   │   │   │   ├── AppsCapacitySetSearchTagV1Request.cs
│   │   │   │   │   └── AppsCapacitySetSearchTagV1Response.cs
│   │   │   │   ├── SimpleQrcode/
│   │   │   │   │   ├── AppsCapacityAddSimpleQrcodeBindV2Request.cs
│   │   │   │   │   ├── AppsCapacityAddSimpleQrcodeBindV2Response.cs
│   │   │   │   │   ├── AppsCapacityDeleteSimpleQrcodeBindV2Request.cs
│   │   │   │   │   ├── AppsCapacityDeleteSimpleQrcodeBindV2Response.cs
│   │   │   │   │   ├── AppsCapacityQuerySimpleQrcodeBindListV2Request.cs
│   │   │   │   │   ├── AppsCapacityQuerySimpleQrcodeBindListV2Response.cs
│   │   │   │   │   ├── AppsCapacityUpdateSimpleQrcodeBindStatusV2Request.cs
│   │   │   │   │   ├── AppsCapacityUpdateSimpleQrcodeBindStatusV2Response.cs
│   │   │   │   │   ├── AppsCapacityUpdateSimpleQrcodeBindV2Request.cs
│   │   │   │   │   └── AppsCapacityUpdateSimpleQrcodeBindV2Response.cs
│   │   │   │   └── SubService/
│   │   │   │       ├── AppsCapacityCreateMicroAppSubServiceV1Request.cs
│   │   │   │       ├── AppsCapacityCreateMicroAppSubServiceV1Response.cs
│   │   │   │       ├── AppsCapacityQueryMicroAppSubServiceV1Request.cs
│   │   │   │       └── AppsCapacityQueryMicroAppSubServiceV1Response.cs
│   │   │   ├── AppsCategory/
│   │   │   │   ├── AppsCategoryQueryAppCategoriesV1Request.cs
│   │   │   │   └── AppsCategoryQueryAppCategoriesV1Response.cs
│   │   │   ├── AppsCensor/
│   │   │   │   ├── AppsCensorImageV1Request.cs
│   │   │   │   └── AppsCensorImageV1Response.cs
│   │   │   ├── AppsDeveloperToolbox/
│   │   │   │   ├── AppsDeveloperToolboxImageMaterialFunctionConfigAddV1Request.cs
│   │   │   │   ├── AppsDeveloperToolboxImageMaterialFunctionConfigAddV1Response.cs
│   │   │   │   ├── AppsDeveloperToolboxImageMaterialFunctionConfigQueryStatusV1Request.cs
│   │   │   │   ├── AppsDeveloperToolboxImageMaterialFunctionConfigQueryStatusV1Response.cs
│   │   │   │   ├── AppsDeveloperToolboxImageMaterialUploadV1Request.cs
│   │   │   │   └── AppsDeveloperToolboxImageMaterialUploadV1Response.cs
│   │   │   ├── AppsDouyin/
│   │   │   │   ├── InteractTask/
│   │   │   │   │   ├── AppsDouyinCreateInteractTaskV1Request.cs
│   │   │   │   │   ├── AppsDouyinCreateInteractTaskV1Response.cs
│   │   │   │   │   ├── AppsDouyinQueryUserInteractTaskV1Request.cs
│   │   │   │   │   └── AppsDouyinQueryUserInteractTaskV1Response.cs
│   │   │   │   └── Task/
│   │   │   │       ├── AppsDouyinCreateTaskV1Request.cs
│   │   │   │       ├── AppsDouyinCreateTaskV1Response.cs
│   │   │   │       ├── AppsDouyinQueryUserTaskV1Request.cs
│   │   │   │       └── AppsDouyinQueryUserTaskV1Response.cs
│   │   │   ├── AppsECPay/
│   │   │   │   ├── Bill/
│   │   │   │   │   ├── AppsBillsV3Request.cs
│   │   │   │   │   ├── AppsBillsV3Response.cs
│   │   │   │   │   ├── AppsFundBillsV3Request.cs
│   │   │   │   │   └── AppsFundBillsV3Response.cs
│   │   │   │   └── SaaS/
│   │   │   │       ├── Applyment/
│   │   │   │       │   ├── AppsECPaySaaSCreateMerchantV3Request.cs
│   │   │   │       │   ├── AppsECPaySaaSCreateMerchantV3Response.cs
│   │   │   │       │   ├── AppsECPaySaaSImageUploadV3Request.cs
│   │   │   │       │   ├── AppsECPaySaaSImageUploadV3Response.cs
│   │   │   │       │   ├── AppsECPaySaaSQueryMerchantStatusV3Request.cs
│   │   │   │       │   └── AppsECPaySaaSQueryMerchantStatusV3Response.cs
│   │   │   │       ├── Links/
│   │   │   │       │   ├── AppsECPaySaaSAddMerchantV3Request.cs
│   │   │   │       │   ├── AppsECPaySaaSAddMerchantV3Response.cs
│   │   │   │       │   ├── AppsECPaySaaSAddSubMerchantV3Request.cs
│   │   │   │       │   ├── AppsECPaySaaSAddSubMerchantV3Response.cs
│   │   │   │       │   ├── AppsECPaySaaSAppAddSubMerchantV3Request.cs
│   │   │   │       │   ├── AppsECPaySaaSAppAddSubMerchantV3Response.cs
│   │   │   │       │   ├── AppsECPaySaaSGetAppMerchantV3Request.cs
│   │   │   │       │   └── AppsECPaySaaSGetAppMerchantV3Response.cs
│   │   │   │       └── Withdraw/
│   │   │   │           ├── AppsECPaySaaSMerchantWithdrawV3Request.cs
│   │   │   │           ├── AppsECPaySaaSMerchantWithdrawV3Response.cs
│   │   │   │           ├── AppsECPaySaaSQueryMerchantBalanceV3Request.cs
│   │   │   │           ├── AppsECPaySaaSQueryMerchantBalanceV3Response.cs
│   │   │   │           ├── AppsECPaySaaSQueryWithdrawOrderV3Request.cs
│   │   │   │           └── AppsECPaySaaSQueryWithdrawOrderV3Response.cs
│   │   │   ├── AppsItem/
│   │   │   │   ├── AppsItemBCGetBaseV1Request.cs
│   │   │   │   ├── AppsItemBCGetBaseV1Response.cs
│   │   │   │   ├── AppsItemBCGetCommentV1Request.cs
│   │   │   │   ├── AppsItemBCGetCommentV1Response.cs
│   │   │   │   ├── AppsItemBCGetLikeV1Request.cs
│   │   │   │   ├── AppsItemBCGetLikeV1Response.cs
│   │   │   │   ├── AppsItemBCGetPlayV1Request.cs
│   │   │   │   ├── AppsItemBCGetPlayV1Response.cs
│   │   │   │   ├── AppsItemBCGetShareV1Request.cs
│   │   │   │   ├── AppsItemBCGetShareV1Response.cs
│   │   │   │   ├── AppsItemGetBaseV1Request.cs
│   │   │   │   ├── AppsItemGetBaseV1Response.cs
│   │   │   │   ├── AppsItemGetCommentV1Request.cs
│   │   │   │   ├── AppsItemGetCommentV1Response.cs
│   │   │   │   ├── AppsItemGetLikeV1Request.cs
│   │   │   │   ├── AppsItemGetLikeV1Response.cs
│   │   │   │   ├── AppsItemGetPlayV1Request.cs
│   │   │   │   ├── AppsItemGetPlayV1Response.cs
│   │   │   │   ├── AppsItemGetShareV1Request.cs
│   │   │   │   ├── AppsItemGetShareV1Response.cs
│   │   │   │   └── Comment/
│   │   │   │       ├── AppsItemBCListCommentReplyV1Request.cs
│   │   │   │       ├── AppsItemBCListCommentReplyV1Response.cs
│   │   │   │       ├── AppsItemBCListCommentV1Request.cs
│   │   │   │       ├── AppsItemBCListCommentV1Response.cs
│   │   │   │       ├── AppsItemBCReplyCommentV1Request.cs
│   │   │   │       ├── AppsItemBCReplyCommentV1Response.cs
│   │   │   │       ├── AppsItemBCTopCommentV1Request.cs
│   │   │   │       ├── AppsItemBCTopCommentV1Response.cs
│   │   │   │       ├── AppsItemListCommentReplyV1Request.cs
│   │   │   │       ├── AppsItemListCommentReplyV1Response.cs
│   │   │   │       ├── AppsItemListCommentV1Request.cs
│   │   │   │       ├── AppsItemListCommentV1Response.cs
│   │   │   │       ├── AppsItemReplyCommentV1Request.cs
│   │   │   │       ├── AppsItemReplyCommentV1Response.cs
│   │   │   │       ├── AppsItemTopCommentV1Request.cs
│   │   │   │       └── AppsItemTopCommentV1Response.cs
│   │   │   ├── AppsLiveBooking/
│   │   │   │   ├── AppsLiveBookingVideoCancelV2Request.cs
│   │   │   │   ├── AppsLiveBookingVideoCancelV2Response.cs
│   │   │   │   ├── AppsLiveBookingVideoCreateV2Request.cs
│   │   │   │   └── AppsLiveBookingVideoCreateV2Response.cs
│   │   │   ├── AppsPlayletBusiness/
│   │   │   │   ├── AppsPlayletBusinessUploadV1Request.cs
│   │   │   │   └── AppsPlayletBusinessUploadV1Response.cs
│   │   │   ├── AppsPrivacySetting/
│   │   │   │   ├── AppsPrivacySettingAddV1Request.cs
│   │   │   │   ├── AppsPrivacySettingAddV1Response.cs
│   │   │   │   ├── AppsPrivacySettingQueryV1Request.cs
│   │   │   │   └── AppsPrivacySettingQueryV1Response.cs
│   │   │   ├── AppsQrcode/
│   │   │   │   ├── AppsQrcodeCreateV1Request.cs
│   │   │   │   └── AppsQrcodeCreateV1Response.cs
│   │   │   ├── AppsSearch/
│   │   │   │   ├── AppsSearchDeleteIndexV1Request.cs
│   │   │   │   ├── AppsSearchDeleteIndexV1Response.cs
│   │   │   │   ├── AppsSearchUploadSitemapV1Request.cs
│   │   │   │   └── AppsSearchUploadSitemapV1Response.cs
│   │   │   ├── AppsShare/
│   │   │   │   └── Task/
│   │   │   │       ├── AppsShareCreateTaskV1Request.cs
│   │   │   │       ├── AppsShareCreateTaskV1Response.cs
│   │   │   │       ├── AppsShareQueryUserTaskV1Request.cs
│   │   │   │       └── AppsShareQueryUserTaskV1Response.cs
│   │   │   ├── AppsTask/
│   │   │   │   ├── AppsTaskCreateLiveV2Request.cs
│   │   │   │   ├── AppsTaskCreateLiveV2Response.cs
│   │   │   │   ├── AppsTaskCreateVideoV2Request.cs
│   │   │   │   ├── AppsTaskCreateVideoV2Response.cs
│   │   │   │   ├── AppsTaskWriteoffLiveV2Request.cs
│   │   │   │   ├── AppsTaskWriteoffLiveV2Response.cs
│   │   │   │   ├── AppsTaskWriteoffVideoV2Request.cs
│   │   │   │   └── AppsTaskWriteoffVideoV2Response.cs
│   │   │   ├── AppsTrade/
│   │   │   │   ├── AppsTradeToolkitButtonWhiteSettingV2Request.cs
│   │   │   │   ├── AppsTradeToolkitButtonWhiteSettingV2Response.cs
│   │   │   │   ├── AppsTradeToolkitQueryTextV2Request.cs
│   │   │   │   ├── AppsTradeToolkitQueryTextV2Response.cs
│   │   │   │   ├── AppsTradeToolkitUpdateMerchantConfigV2Request.cs
│   │   │   │   ├── AppsTradeToolkitUpdateMerchantConfigV2Response.cs
│   │   │   │   ├── AppsTradeToolkitUpdateMerchantPathV2Request.cs
│   │   │   │   └── AppsTradeToolkitUpdateMerchantPathV2Response.cs
│   │   │   ├── AppsTrafficPermission/
│   │   │   │   ├── AppsTrafficPermissionOpenV1Request.cs
│   │   │   │   ├── AppsTrafficPermissionOpenV1Response.cs
│   │   │   │   ├── AppsTrafficPermissionQueryV1Request.cs
│   │   │   │   └── AppsTrafficPermissionQueryV1Response.cs
│   │   │   ├── AppsUrlLink/
│   │   │   │   ├── AppsUrlLinkGenerateV1Request.cs
│   │   │   │   ├── AppsUrlLinkGenerateV1Response.cs
│   │   │   │   ├── AppsUrlLinkQueryInfoV1Request.cs
│   │   │   │   ├── AppsUrlLinkQueryInfoV1Response.cs
│   │   │   │   ├── AppsUrlLinkQueryQuotaV1Request.cs
│   │   │   │   └── AppsUrlLinkQueryQuotaV1Response.cs
│   │   │   ├── AppsUrlSchema/
│   │   │   │   ├── AppsUrlGenerateSchemaV1Request.cs
│   │   │   │   ├── AppsUrlGenerateSchemaV1Response.cs
│   │   │   │   ├── AppsUrlQuerySchemaQuotaV1Request.cs
│   │   │   │   ├── AppsUrlQuerySchemaQuotaV1Response.cs
│   │   │   │   ├── AppsUrlQuerySchemaV1Request.cs
│   │   │   │   └── AppsUrlQuerySchemaV1Response.cs
│   │   │   ├── AppsUser/
│   │   │   │   ├── AppsUserBCGetCommentV1Request.cs
│   │   │   │   ├── AppsUserBCGetCommentV1Response.cs
│   │   │   │   ├── AppsUserBCGetFansV1Request.cs
│   │   │   │   ├── AppsUserBCGetFansV1Response.cs
│   │   │   │   ├── AppsUserBCGetItemV1Request.cs
│   │   │   │   ├── AppsUserBCGetItemV1Response.cs
│   │   │   │   ├── AppsUserBCGetLikeV1Request.cs
│   │   │   │   ├── AppsUserBCGetLikeV1Response.cs
│   │   │   │   ├── AppsUserBCGetProfileV1Request.cs
│   │   │   │   ├── AppsUserBCGetProfileV1Response.cs
│   │   │   │   ├── AppsUserBCGetShareV1Request.cs
│   │   │   │   ├── AppsUserBCGetShareV1Response.cs
│   │   │   │   ├── AppsUserGetCommentV1Request.cs
│   │   │   │   ├── AppsUserGetCommentV1Response.cs
│   │   │   │   ├── AppsUserGetFansV1Request.cs
│   │   │   │   ├── AppsUserGetFansV1Response.cs
│   │   │   │   ├── AppsUserGetItemV1Request.cs
│   │   │   │   ├── AppsUserGetItemV1Response.cs
│   │   │   │   ├── AppsUserGetLikeV1Request.cs
│   │   │   │   ├── AppsUserGetLikeV1Response.cs
│   │   │   │   ├── AppsUserGetProfileV1Request.cs
│   │   │   │   ├── AppsUserGetProfileV1Response.cs
│   │   │   │   ├── AppsUserGetShareV1Request.cs
│   │   │   │   └── AppsUserGetShareV1Response.cs
│   │   │   ├── AppsVideo/
│   │   │   │   ├── AppsConvertOpenItemIdToEncryptIdV1Request.cs
│   │   │   │   ├── AppsConvertOpenItemIdToEncryptIdV1Response.cs
│   │   │   │   ├── AppsConvertVideoIdToOpenItemIdV1Request.cs
│   │   │   │   ├── AppsConvertVideoIdToOpenItemIdV1Response.cs
│   │   │   │   ├── AppsVideoBCQueryV1Request.cs
│   │   │   │   ├── AppsVideoBCQueryV1Response.cs
│   │   │   │   ├── AppsVideoQueryV1Request.cs
│   │   │   │   └── AppsVideoQueryV1Response.cs
│   │   │   ├── ECommerce/
│   │   │   │   ├── ECommerceConfigLimitOperatePointV1Request.cs
│   │   │   │   ├── ECommerceConfigLimitOperatePointV1Response.cs
│   │   │   │   ├── ECommerceConfigRegisterMicroAppV1Request.cs
│   │   │   │   ├── ECommerceConfigRegisterMicroAppV1Response.cs
│   │   │   │   ├── ECommerceCustomizationQueryStatusV1Request.cs
│   │   │   │   ├── ECommerceCustomizationQueryStatusV1Response.cs
│   │   │   │   ├── ECommerceShopMemberLeaveV1Request.cs
│   │   │   │   └── ECommerceShopMemberLeaveV1Response.cs
│   │   │   ├── Gift/
│   │   │   │   ├── GiftReceiveRewardRequest.cs
│   │   │   │   └── GiftReceiveRewardResponse.cs
│   │   │   ├── LiveBooking/
│   │   │   │   ├── LiveBookingTextCloseRequest.cs
│   │   │   │   ├── LiveBookingTextCloseResponse.cs
│   │   │   │   ├── LiveBookingTextCreateRequest.cs
│   │   │   │   ├── LiveBookingTextCreateResponse.cs
│   │   │   │   ├── LiveBookingTextDetailRequest.cs
│   │   │   │   ├── LiveBookingTextDetailResponse.cs
│   │   │   │   ├── LiveBookingVideoListRequest.cs
│   │   │   │   └── LiveBookingVideoListResponse.cs
│   │   │   ├── MatchTaskBox/
│   │   │   │   ├── MatchTaskBoxAddRoomTaskV2Request.cs
│   │   │   │   ├── MatchTaskBoxAddRoomTaskV2Response.cs
│   │   │   │   ├── MatchTaskBoxAddTaskV2Request.cs
│   │   │   │   ├── MatchTaskBoxAddTaskV2Response.cs
│   │   │   │   ├── MatchTaskBoxQueryAppTaskIdV2Request.cs
│   │   │   │   ├── MatchTaskBoxQueryAppTaskIdV2Response.cs
│   │   │   │   ├── MatchTaskBoxQueryBillLinkV2Request.cs
│   │   │   │   ├── MatchTaskBoxQueryBillLinkV2Response.cs
│   │   │   │   ├── MatchTaskBoxQueryTaskInfoV2Request.cs
│   │   │   │   ├── MatchTaskBoxQueryTaskInfoV2Response.cs
│   │   │   │   ├── MatchTaskBoxQueryVideoSummaryDataV2Request.cs
│   │   │   │   ├── MatchTaskBoxQueryVideoSummaryDataV2Response.cs
│   │   │   │   ├── MatchTaskBoxUpdateStatusV2Request.cs
│   │   │   │   ├── MatchTaskBoxUpdateStatusV2Response.cs
│   │   │   │   ├── MatchTaskBoxUpdateTaskV2Request.cs
│   │   │   │   └── MatchTaskBoxUpdateTaskV2Response.cs
│   │   │   ├── NotificationSubscription/
│   │   │   │   ├── NotificationSubscriptionAddAppTemplateV2Request.cs
│   │   │   │   ├── NotificationSubscriptionAddAppTemplateV2Response.cs
│   │   │   │   ├── NotificationSubscriptionCreateTemplateV2Request.cs
│   │   │   │   ├── NotificationSubscriptionCreateTemplateV2Response.cs
│   │   │   │   ├── NotificationSubscriptionDeleteAppTemplateV2Request.cs
│   │   │   │   ├── NotificationSubscriptionDeleteAppTemplateV2Response.cs
│   │   │   │   ├── NotificationSubscriptionNotifyUserV2Request.cs
│   │   │   │   ├── NotificationSubscriptionNotifyUserV2Response.cs
│   │   │   │   ├── NotificationSubscriptionQueryAppTemplateV2Request.cs
│   │   │   │   ├── NotificationSubscriptionQueryAppTemplateV2Response.cs
│   │   │   │   ├── NotificationSubscriptionQueryCreatedTemplateListV2Request.cs
│   │   │   │   ├── NotificationSubscriptionQueryCreatedTemplateListV2Response.cs
│   │   │   │   ├── NotificationSubscriptionQueryTemplateListV2Request.cs
│   │   │   │   └── NotificationSubscriptionQueryTemplateListV2Response.cs
│   │   │   ├── PlatformDataAnalysis/
│   │   │   │   ├── Component/
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithDetailV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithDetailV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithOverviewV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithOverviewV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithSourceV2Request.cs
│   │   │   │   │   └── PlatformDataAnalysisQueryComponentWithSourceV2Response.cs
│   │   │   │   ├── Live/
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveWithShortIdV2Request.cs
│   │   │   │   │   └── PlatformDataAnalysisQueryLiveWithShortIdV2Response.cs
│   │   │   │   ├── SmallRoom/
│   │   │   │   │   ├── PlatformDataAnalysisQuerySmallHomeOrderDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySmallHomeOrderDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySmallHomeOverviewDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySmallHomeOverviewDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySmallHomeRoomDataV2Request.cs
│   │   │   │   │   └── PlatformDataAnalysisQuerySmallHomeRoomDataV2Response.cs
│   │   │   │   ├── Transaction/
│   │   │   │   │   ├── PlatformDataAnalysisQueryDealDataWithConversionV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryDealDataWithConversionV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryDealOverviewDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryDealOverviewDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveDealDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveDealDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveRoomDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveRoomDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveRoomV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveRoomV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryProductDealDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryProductDealDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryVideoDealDataV2Request.cs
│   │   │   │   │   └── PlatformDataAnalysisQueryVideoDealDataV2Response.cs
│   │   │   │   ├── User/
│   │   │   │   │   ├── PlatformDataAnalysisQueryBehaviorDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryBehaviorDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryClientDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryClientDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryPageDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryPageDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryRealTimeUserDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryRealTimeUserDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryRetentionDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryRetentionDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySceneDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySceneDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryUserPortraitDataV2Request.cs
│   │   │   │   │   └── PlatformDataAnalysisQueryUserPortraitDataV2Response.cs
│   │   │   │   └── Video/
│   │   │   │       ├── PlatformDataAnalysisQueryShortLiveDataWithIdV2Request.cs
│   │   │   │       ├── PlatformDataAnalysisQueryShortLiveDataWithIdV2Response.cs
│   │   │   │       ├── PlatformDataAnalysisQueryShortLiveIdWithAwemeIdV2Request.cs
│   │   │   │       ├── PlatformDataAnalysisQueryShortLiveIdWithAwemeIdV2Response.cs
│   │   │   │       ├── PlatformDataAnalysisQueryVideoDataV2Request.cs
│   │   │   │       ├── PlatformDataAnalysisQueryVideoDataV2Response.cs
│   │   │   │       ├── PlatformDataAnalysisQueryVideoWithSourceV2Request.cs
│   │   │   │       └── PlatformDataAnalysisQueryVideoWithSourceV2Response.cs
│   │   │   ├── Product/
│   │   │   │   └── Region/
│   │   │   │       ├── ProductAppRegionAddV1Request.cs
│   │   │   │       ├── ProductAppRegionAddV1Response.cs
│   │   │   │       ├── ProductAppRegionDeleteV1Request.cs
│   │   │   │       ├── ProductAppRegionDeleteV1Response.cs
│   │   │   │       ├── ProductAppRegionModifyV1Request.cs
│   │   │   │       └── ProductAppRegionModifyV1Response.cs
│   │   │   ├── Promotion/
│   │   │   │   ├── Activity/
│   │   │   │   │   ├── PromotionActivityAddSelfTestAccountsV2Request.cs
│   │   │   │   │   ├── PromotionActivityAddSelfTestAccountsV2Response.cs
│   │   │   │   │   ├── PromotionActivityBindUserToSidebarActivityV2Request.cs
│   │   │   │   │   ├── PromotionActivityBindUserToSidebarActivityV2Response.cs
│   │   │   │   │   ├── PromotionActivityCreatePromotionActivityV2Request.cs
│   │   │   │   │   ├── PromotionActivityCreatePromotionActivityV2Response.cs
│   │   │   │   │   ├── PromotionActivityModifyPromotionActivityV2Request.cs
│   │   │   │   │   ├── PromotionActivityModifyPromotionActivityV2Response.cs
│   │   │   │   │   ├── PromotionActivityQueryBindedUserV2Request.cs
│   │   │   │   │   ├── PromotionActivityQueryBindedUserV2Response.cs
│   │   │   │   │   ├── PromotionActivityQueryPromotionActivityV2Request.cs
│   │   │   │   │   ├── PromotionActivityQueryPromotionActivityV2Response.cs
│   │   │   │   │   ├── PromotionActivityUpdatePromotionActivityStatusV2Request.cs
│   │   │   │   │   ├── PromotionActivityUpdatePromotionActivityStatusV2Response.cs
│   │   │   │   │   ├── PromotionActivityUploadPopupScreenshotV2Request.cs
│   │   │   │   │   └── PromotionActivityUploadPopupScreenshotV2Response.cs
│   │   │   │   ├── Coupon/
│   │   │   │   │   ├── DeveloperActivity/
│   │   │   │   │   │   ├── PromotionCouponCreateDeveloperActivityV1Request.cs
│   │   │   │   │   │   ├── PromotionCouponCreateDeveloperActivityV1Response.cs
│   │   │   │   │   │   ├── PromotionCouponDeleteDeveloperActivityV1Request.cs
│   │   │   │   │   │   └── PromotionCouponDeleteDeveloperActivityV1Response.cs
│   │   │   │   │   ├── PromotionCouponBatchConsumeCouponV1Request.cs
│   │   │   │   │   ├── PromotionCouponBatchConsumeCouponV1Response.cs
│   │   │   │   │   ├── PromotionCouponBatchRollbackConsumeCouponV1Request.cs
│   │   │   │   │   ├── PromotionCouponBatchRollbackConsumeCouponV1Response.cs
│   │   │   │   │   ├── PromotionCouponGetBillDownloadUrlV1Request.cs
│   │   │   │   │   ├── PromotionCouponGetBillDownloadUrlV1Response.cs
│   │   │   │   │   ├── PromotionCouponGetCouponReceiveInfoV1Request.cs
│   │   │   │   │   ├── PromotionCouponGetCouponReceiveInfoV1Response.cs
│   │   │   │   │   ├── PromotionCouponGetTalentCouponV1Request.cs
│   │   │   │   │   ├── PromotionCouponGetTalentCouponV1Response.cs
│   │   │   │   │   ├── PromotionCouponSendCouponToDesignatedUserV1Request.cs
│   │   │   │   │   ├── PromotionCouponSendCouponToDesignatedUserV1Response.cs
│   │   │   │   │   ├── PromotionCouponSetTalentCouponV1Request.cs
│   │   │   │   │   ├── PromotionCouponSetTalentCouponV1Response.cs
│   │   │   │   │   ├── PromotionCouponUpdateTalentCouponStatusV1Request.cs
│   │   │   │   │   ├── PromotionCouponUpdateTalentCouponStatusV1Response.cs
│   │   │   │   │   ├── PromotionCouponUpdateTalentCouponStockV1Request.cs
│   │   │   │   │   └── PromotionCouponUpdateTalentCouponStockV1Response.cs
│   │   │   │   └── CouponMeta/
│   │   │   │       ├── PromotionCouponCreateCouponMetaV2Request.cs
│   │   │   │       ├── PromotionCouponCreateCouponMetaV2Response.cs
│   │   │   │       ├── PromotionCouponDeleteCouponMetaV1Request.cs
│   │   │   │       ├── PromotionCouponDeleteCouponMetaV1Response.cs
│   │   │   │       ├── PromotionCouponGetCouponMetaStatisticsV1Request.cs
│   │   │   │       ├── PromotionCouponGetCouponMetaStatisticsV1Response.cs
│   │   │   │       ├── PromotionCouponModifyCouponMetaV2Request.cs
│   │   │   │       ├── PromotionCouponModifyCouponMetaV2Response.cs
│   │   │   │       ├── PromotionCouponQueryActivityMetaDataV1Request.cs
│   │   │   │       ├── PromotionCouponQueryActivityMetaDataV1Response.cs
│   │   │   │       ├── PromotionCouponQueryCouponMetaV2Request.cs
│   │   │   │       ├── PromotionCouponQueryCouponMetaV2Response.cs
│   │   │   │       ├── PromotionCouponUpdateCouponMetaStatusV1Request.cs
│   │   │   │       ├── PromotionCouponUpdateCouponMetaStatusV1Response.cs
│   │   │   │       ├── PromotionCouponUpdateCouponMetaStockV1Request.cs
│   │   │   │       └── PromotionCouponUpdateCouponMetaStockV1Response.cs
│   │   │   ├── TradeAuthDeveloper/
│   │   │   │   ├── AuthDeposit/
│   │   │   │   │   ├── Auth/
│   │   │   │   │   │   ├── TradeAuthDeveloperCancelAuthOrderV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperCancelAuthOrderV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperCreateAuthOrderV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperCreateAuthOrderV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperFinishAuthOrderV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperFinishAuthOrderV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperQueryAdmissibleAuthV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperQueryAdmissibleAuthV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperQueryAuthOrderV1Request.cs
│   │   │   │   │   │   └── TradeAuthDeveloperQueryAuthOrderV1Response.cs
│   │   │   │   │   ├── Pay/
│   │   │   │   │   │   ├── TradeAuthDeveloperClosePayOrderV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperClosePayOrderV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperCreatePayOrderV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperCreatePayOrderV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperQueryPayOrderV1Request.cs
│   │   │   │   │   │   └── TradeAuthDeveloperQueryPayOrderV1Response.cs
│   │   │   │   │   └── Refund/
│   │   │   │   │       ├── TradeAuthDeveloperCreateRefundV1Request.cs
│   │   │   │   │       ├── TradeAuthDeveloperCreateRefundV1Response.cs
│   │   │   │   │       ├── TradeAuthDeveloperQueryRefundV1Request.cs
│   │   │   │   │       └── TradeAuthDeveloperQueryRefundV1Response.cs
│   │   │   │   └── PeriodicDeduction/
│   │   │   │       ├── Pay/
│   │   │   │       │   ├── TradeAuthDeveloperCreateSignPayV1Request.cs
│   │   │   │       │   ├── TradeAuthDeveloperCreateSignPayV1Response.cs
│   │   │   │       │   ├── TradeAuthDeveloperQuerySignPayV1Request.cs
│   │   │   │       │   └── TradeAuthDeveloperQuerySignPayV1Response.cs
│   │   │   │       ├── Refund/
│   │   │   │       │   ├── TradeAuthDeveloperCreateSignRefundV1Request.cs
│   │   │   │       │   ├── TradeAuthDeveloperCreateSignRefundV1Response.cs
│   │   │   │       │   ├── TradeAuthDeveloperQuerySignRefundV1Request.cs
│   │   │   │       │   └── TradeAuthDeveloperQuerySignRefundV1Response.cs
│   │   │   │       └── Sign/
│   │   │   │           ├── TradeAuthDeveloperQuerySignOrderV1Request.cs
│   │   │   │           ├── TradeAuthDeveloperQuerySignOrderV1Response.cs
│   │   │   │           ├── TradeAuthDeveloperTerminateSignV1Request.cs
│   │   │   │           └── TradeAuthDeveloperTerminateSignV1Response.cs
│   │   │   ├── TradeBasicDeveloper/
│   │   │   │   ├── TradeBasicDeveloperFulfillPushStatusV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperFulfillPushStatusV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperOrderQueryV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperOrderQueryV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperQueryCPSV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperQueryCPSV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperRefundAuditCallbackV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperRefundAuditCallbackV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperRefundCreateV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperRefundCreateV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperRefundQueryV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperRefundQueryV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperSettleCreateV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperSettleCreateV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperSettleQueryV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperSettleQueryV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperTagQueryV1Request.cs
│   │   │   │   └── TradeBasicDeveloperTagQueryV1Response.cs
│   │   │   └── _Legacy/
│   │   │       ├── Apps/
│   │   │       │   ├── AppsJsCode2SessionV2Request.cs
│   │   │       │   ├── AppsJsCode2SessionV2Response.cs
│   │   │       │   ├── AppsTokenV2Request.cs
│   │   │       │   ├── AppsTokenV2Response.cs
│   │   │       │   ├── Capacity/
│   │   │       │   │   ├── AppsCapacityUploadMaterialV1Request.cs
│   │   │       │   │   ├── AppsCapacityUploadMaterialV1Response.cs
│   │   │       │   │   ├── ClueComponent/
│   │   │       │   │   │   ├── AppsCapacityCreateClueComponentInfoV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityCreateClueComponentInfoV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityDeleteClueComponentInfoV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityDeleteClueComponentInfoV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityQueryClueComponentInfoV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityQueryClueComponentInfoV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityUpdateClueComponentInfoV1Request.cs
│   │   │       │   │   │   └── AppsCapacityUpdateClueComponentInfoV1Response.cs
│   │   │       │   │   ├── Doudian/
│   │   │       │   │   │   ├── AppsCapacityBindDoudianAccountV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityBindDoudianAccountV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityCreateDoudianAppV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityCreateDoudianAppV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityQueryBindDoudianAccountV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityQueryBindDoudianAccountV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityQueryDoudianAppV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityQueryDoudianAppV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityQueryDoudianShopInfoV1Request.cs
│   │   │       │   │   │   └── AppsCapacityQueryDoudianShopInfoV1Response.cs
│   │   │       │   │   └── Mount/
│   │   │       │   │       ├── AppsCapacityApplyCapacityV1Request.cs
│   │   │       │   │       ├── AppsCapacityApplyCapacityV1Response.cs
│   │   │       │   │       ├── AppsCapacityQueryApplyStatusV1Request.cs
│   │   │       │   │       └── AppsCapacityQueryApplyStatusV1Response.cs
│   │   │       │   ├── Censor/
│   │   │       │   │   ├── AppsCensorImageRequest.cs
│   │   │       │   │   └── AppsCensorImageResponse.cs
│   │   │       │   ├── Chat/
│   │   │       │   │   ├── AppsChatCustomerServiceUrlRequest.cs
│   │   │       │   │   └── AppsChatCustomerServiceUrlResponse.cs
│   │   │       │   ├── CustomerService/
│   │   │       │   │   ├── AppsCustomerServiceUrlRequest.cs
│   │   │       │   │   └── AppsCustomerServiceUrlResponse.cs
│   │   │       │   ├── Live/
│   │   │       │   │   ├── AppsLiveSetBlackWhiteListV1Request.cs
│   │   │       │   │   ├── AppsLiveSetBlackWhiteListV1Response.cs
│   │   │       │   │   ├── AppsUploadLiveImageRequest.cs
│   │   │       │   │   └── AppsUploadLiveImageResponse.cs
│   │   │       │   ├── Message/
│   │   │       │   │   ├── AppsMessageCustomSendRequest.cs
│   │   │       │   │   └── AppsMessageCustomSendResponse.cs
│   │   │       │   ├── Order/
│   │   │       │   │   ├── AppsOrderDeleteRequest.cs
│   │   │       │   │   ├── AppsOrderDeleteResponse.cs
│   │   │       │   │   ├── AppsOrderPushV2Request.cs
│   │   │       │   │   └── AppsOrderPushV2Response.cs
│   │   │       │   ├── Qrcode/
│   │   │       │   │   ├── AppsQrcodeRequest.cs
│   │   │       │   │   └── AppsQrcodeResponse.cs
│   │   │       │   ├── ShareConfig/
│   │   │       │   │   ├── AppsShareConfigRequest.cs
│   │   │       │   │   └── AppsShareConfigResponse.cs
│   │   │       │   ├── SubscribeNotification/
│   │   │       │   │   ├── AppsSubscribeNotificationDeveloperNotifyV1Request.cs
│   │   │       │   │   └── AppsSubscribeNotificationDeveloperNotifyV1Response.cs
│   │   │       │   ├── TaskBox/
│   │   │       │   │   ├── AppsTaskBoxAddTaskRequest.cs
│   │   │       │   │   ├── AppsTaskBoxAddTaskResponse.cs
│   │   │       │   │   ├── AppsTaskBoxQueryAppTaskIdRequest.cs
│   │   │       │   │   ├── AppsTaskBoxQueryAppTaskIdResponse.cs
│   │   │       │   │   ├── AppsTaskBoxQueryTaskVideoDataRequest.cs
│   │   │       │   │   ├── AppsTaskBoxQueryTaskVideoDataResponse.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateOrientTalentsRequest.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateOrientTalentsResponse.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateStatusRequest.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateStatusResponse.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateTaskRequest.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateTaskResponse.cs
│   │   │       │   │   └── __Abstractions/
│   │   │       │   │       ├── AppsTaskBoxRequestBase.cs
│   │   │       │   │       └── AppsTaskBoxResponseBase.cs
│   │   │       │   └── Video/
│   │   │       │       ├── AppsConvertOpenItemIdToEncryptIdRequest.cs
│   │   │       │       ├── AppsConvertOpenItemIdToEncryptIdResponse.cs
│   │   │       │       ├── AppsConvertVideoIdToOpenItemIdRequest.cs
│   │   │       │       └── AppsConvertVideoIdToOpenItemIdResponse.cs
│   │   │       ├── AppsECPay/
│   │   │       │   ├── Bills/
│   │   │       │   │   ├── AppsBillsRequest.cs
│   │   │       │   │   ├── AppsBillsResponse.cs
│   │   │       │   │   ├── AppsFundBillsRequest.cs
│   │   │       │   │   └── AppsFundBillsResponse.cs
│   │   │       │   ├── Order/
│   │   │       │   │   ├── AppsECPayCreateOrderV1Request.cs
│   │   │       │   │   ├── AppsECPayCreateOrderV1Response.cs
│   │   │       │   │   ├── AppsECPayCreateRefundV1Request.cs
│   │   │       │   │   ├── AppsECPayCreateRefundV1Response.cs
│   │   │       │   │   ├── AppsECPayCreateReturnV1Request.cs
│   │   │       │   │   ├── AppsECPayCreateReturnV1Response.cs
│   │   │       │   │   ├── AppsECPayQueryOrderV1Request.cs
│   │   │       │   │   ├── AppsECPayQueryOrderV1Response.cs
│   │   │       │   │   ├── AppsECPayQueryPlatformOrderV1Request.cs
│   │   │       │   │   ├── AppsECPayQueryPlatformOrderV1Response.cs
│   │   │       │   │   ├── AppsECPayQueryRefundV1Request.cs
│   │   │       │   │   ├── AppsECPayQueryRefundV1Response.cs
│   │   │       │   │   ├── AppsECPayQueryReturnV1Request.cs
│   │   │       │   │   ├── AppsECPayQueryReturnV1Response.cs
│   │   │       │   │   ├── AppsECPayQuerySettleV1Request.cs
│   │   │       │   │   ├── AppsECPayQuerySettleV1Response.cs
│   │   │       │   │   ├── AppsECPaySettleV1Request.cs
│   │   │       │   │   └── AppsECPaySettleV1Response.cs
│   │   │       │   └── SaaS/
│   │   │       │       ├── Apply/
│   │   │       │       │   ├── AppsECPaySaaSCreateMerchantRequest.cs
│   │   │       │       │   ├── AppsECPaySaaSCreateMerchantResponse.cs
│   │   │       │       │   ├── AppsECPaySaaSImageUploadRequest.cs
│   │   │       │       │   ├── AppsECPaySaaSImageUploadResponse.cs
│   │   │       │       │   ├── AppsECPaySaaSQueryMerchantStatusRequest.cs
│   │   │       │       │   └── AppsECPaySaaSQueryMerchantStatusResponse.cs
│   │   │       │       ├── PageLinks/
│   │   │       │       │   ├── AppsECPaySaaSAddMerchantRequest.cs
│   │   │       │       │   ├── AppsECPaySaaSAddMerchantResponse.cs
│   │   │       │       │   ├── AppsECPaySaaSAddSubMerchantRequest.cs
│   │   │       │       │   ├── AppsECPaySaaSAddSubMerchantResponse.cs
│   │   │       │       │   ├── AppsECPaySaaSAppAddSubMerchantRequest.cs
│   │   │       │       │   ├── AppsECPaySaaSAppAddSubMerchantResponse.cs
│   │   │       │       │   ├── AppsECPaySaaSGetAppMerchantRequest.cs
│   │   │       │       │   └── AppsECPaySaaSGetAppMerchantResponse.cs
│   │   │       │       └── Withdraw/
│   │   │       │           ├── AppsECPaySaaSMerchantWithdrawRequest.cs
│   │   │       │           ├── AppsECPaySaaSMerchantWithdrawResponse.cs
│   │   │       │           ├── AppsECPaySaaSQueryMerchantBalanceRequest.cs
│   │   │       │           ├── AppsECPaySaaSQueryMerchantBalanceResponse.cs
│   │   │       │           ├── AppsECPaySaaSQueryWithdrawOrderRequest.cs
│   │   │       │           └── AppsECPaySaaSQueryWithdrawOrderResponse.cs
│   │   │       ├── AppsGame/
│   │   │       │   ├── AppsGameWalletAddCoinRequest.cs
│   │   │       │   ├── AppsGameWalletAddCoinResponse.cs
│   │   │       │   ├── AppsGameWalletGamePayRequest.cs
│   │   │       │   ├── AppsGameWalletGamePayResponse.cs
│   │   │       │   ├── AppsGameWalletGetBalanceRequest.cs
│   │   │       │   ├── AppsGameWalletGetBalanceResponse.cs
│   │   │       │   └── __Abstractions/
│   │   │       │       ├── AppsGameWalletRequestBase.cs
│   │   │       │       └── AppsGameWalletResponseBase.cs
│   │   │       ├── AppsStorage/
│   │   │       │   ├── AppsRemoveUserStorageRequest.cs
│   │   │       │   ├── AppsRemoveUserStorageResponse.cs
│   │   │       │   ├── AppsSetUserStorageRequest.cs
│   │   │       │   └── AppsSetUserStorageResponse.cs
│   │   │       ├── AppsTrade/
│   │   │       │   ├── PreOrder/
│   │   │       │   │   ├── AppsTradeCreateOrderV2Request.cs
│   │   │       │   │   ├── AppsTradeCreateOrderV2Response.cs
│   │   │       │   │   ├── AppsTradeQueryCPSV2Request.cs
│   │   │       │   │   ├── AppsTradeQueryCPSV2Response.cs
│   │   │       │   │   ├── AppsTradeQueryOrderV2Request.cs
│   │   │       │   │   └── AppsTradeQueryOrderV2Response.cs
│   │   │       │   ├── Refund/
│   │   │       │   │   ├── AppsTradeCreateRefundV2Request.cs
│   │   │       │   │   ├── AppsTradeCreateRefundV2Response.cs
│   │   │       │   │   ├── AppsTradeMerchantAuditCallbackV2Request.cs
│   │   │       │   │   ├── AppsTradeMerchantAuditCallbackV2Response.cs
│   │   │       │   │   ├── AppsTradeQueryRefundV2Request.cs
│   │   │       │   │   └── AppsTradeQueryRefundV2Response.cs
│   │   │       │   ├── Settlement/
│   │   │       │   │   ├── AppsTradeCreateSettleV2Request.cs
│   │   │       │   │   ├── AppsTradeCreateSettleV2Response.cs
│   │   │       │   │   ├── AppsTradeQuerySettleV2Request.cs
│   │   │       │   │   └── AppsTradeQuerySettleV2Response.cs
│   │   │       │   └── WriteOff/
│   │   │       │       ├── AppsTradeDeliveryPrepareV2Request.cs
│   │   │       │       ├── AppsTradeDeliveryPrepareV2Response.cs
│   │   │       │       ├── AppsTradeDeliveryVerifyV2Request.cs
│   │   │       │       ├── AppsTradeDeliveryVerifyV2Response.cs
│   │   │       │       ├── AppsTradePushDeliveryV2Request.cs
│   │   │       │       ├── AppsTradePushDeliveryV2Response.cs
│   │   │       │       ├── AppsTradeQueryItemOrderInfoV2Request.cs
│   │   │       │       └── AppsTradeQueryItemOrderInfoV2Response.cs
│   │   │       ├── Comment/
│   │   │       │   ├── CommentDeveloperDeleteRequest.cs
│   │   │       │   ├── CommentDeveloperDeleteResponse.cs
│   │   │       │   ├── CommentDeveloperReplyRequest.cs
│   │   │       │   ├── CommentDeveloperReplyResponse.cs
│   │   │       │   ├── CommentOpenGetRequest.cs
│   │   │       │   └── CommentOpenGetResponse.cs
│   │   │       └── Tags/
│   │   │           ├── TagsImageV2Request.cs
│   │   │           ├── TagsImageV2Response.cs
│   │   │           ├── TagsTextAntiDirtV2Request.cs
│   │   │           └── TagsTextAntiDirtV2Response.cs
│   │   ├── README.md
│   │   ├── SKIT.FlurlHttpClient.ByteDance.MicroApp.csproj
│   │   ├── Settings/
│   │   │   └── Credentials.cs
│   │   └── Utilities/
│   │       ├── AESUtility.cs
│   │       ├── HMACUtility.cs
│   │       ├── MD5Utility.cs
│   │       ├── RSAUtility.cs
│   │       ├── SHA1Utility.cs
│   │       └── [Internal]/
│   │           ├── DyMsgCryptor.cs
│   │           ├── HttpContentBuilder.cs
│   │           └── XmlHelper.cs
│   ├── SKIT.FlurlHttpClient.ByteDance.OceanEngine/
│   │   ├── Extensions/
│   │   │   ├── OceanEngineClientExecuteAdvertiserExtensions.cs
│   │   │   ├── OceanEngineClientExecuteAdvertisingExtensions.cs
│   │   │   ├── OceanEngineClientExecuteAgentExtensions.cs
│   │   │   ├── OceanEngineClientExecuteBusinessPlatformExtensions.cs
│   │   │   ├── OceanEngineClientExecuteCampaignExtensions.cs
│   │   │   ├── OceanEngineClientExecuteCreativeExtensions.cs
│   │   │   ├── OceanEngineClientExecuteCustomerCenterExtensions.cs
│   │   │   ├── OceanEngineClientExecuteEnterpriseExtensions.cs
│   │   │   ├── OceanEngineClientExecuteFileExtensions.cs
│   │   │   ├── OceanEngineClientExecuteFundExtensions.cs
│   │   │   ├── OceanEngineClientExecuteMajordomoExtensions.cs
│   │   │   ├── OceanEngineClientExecuteOAuth2Extensions.cs
│   │   │   ├── OceanEngineClientExecuteToolsExtensions.cs
│   │   │   └── OceanEngineClientExecuteUserExtensions.cs
│   │   ├── Models/
│   │   │   ├── Advertiser/
│   │   │   │   ├── AdvertiserInfoRequest.cs
│   │   │   │   ├── AdvertiserInfoResponse.cs
│   │   │   │   ├── AdvertiserPublicInfoRequest.cs
│   │   │   │   ├── AdvertiserPublicInfoResponse.cs
│   │   │   │   ├── Avatar/
│   │   │   │   │   ├── AdvertiserAvatarGetRequest.cs
│   │   │   │   │   ├── AdvertiserAvatarGetResponse.cs
│   │   │   │   │   ├── AdvertiserAvatarSubmitRequest.cs
│   │   │   │   │   └── AdvertiserAvatarSubmitResponse.cs
│   │   │   │   ├── Budget/
│   │   │   │   │   ├── AdvertiserBudgetGetRequest.cs
│   │   │   │   │   ├── AdvertiserBudgetGetResponse.cs
│   │   │   │   │   ├── AdvertiserUpdateBudgetRequest.cs
│   │   │   │   │   └── AdvertiserUpdateBudgetResponse.cs
│   │   │   │   ├── Fund/
│   │   │   │   │   ├── AdvertiserFundDailyStatisticsRequest.cs
│   │   │   │   │   ├── AdvertiserFundDailyStatisticsResponse.cs
│   │   │   │   │   ├── AdvertiserFundGetRequest.cs
│   │   │   │   │   ├── AdvertiserFundGetResponse.cs
│   │   │   │   │   ├── AdvertiserFundTransactionGetRequest.cs
│   │   │   │   │   └── AdvertiserFundTransactionGetResponse.cs
│   │   │   │   └── Qualification/
│   │   │   │       ├── AdvertiserQualificationCreateV2Request.cs
│   │   │   │       ├── AdvertiserQualificationCreateV2Response.cs
│   │   │   │       ├── AdvertiserQualificationGetRequest.cs
│   │   │   │       ├── AdvertiserQualificationGetResponse.cs
│   │   │   │       ├── AdvertiserQualificationSelectV2Request.cs
│   │   │   │       ├── AdvertiserQualificationSelectV2Response.cs
│   │   │   │       ├── AdvertiserQualificationSubmitRequest.cs
│   │   │   │       └── AdvertiserQualificationSubmitResponse.cs
│   │   │   ├── Advertising/
│   │   │   │   ├── AdvertisingCostProtectStatusGetRequest.cs
│   │   │   │   ├── AdvertisingCostProtectStatusGetResponse.cs
│   │   │   │   ├── AdvertisingCreateRequest.cs
│   │   │   │   ├── AdvertisingCreateResponse.cs
│   │   │   │   ├── AdvertisingGetRequest.cs
│   │   │   │   ├── AdvertisingGetResponse.cs
│   │   │   │   ├── AdvertisingRejectReasonRequest.cs
│   │   │   │   ├── AdvertisingRejectReasonResponse.cs
│   │   │   │   ├── AdvertisingUpdateBidRequest.cs
│   │   │   │   ├── AdvertisingUpdateBidResponse.cs
│   │   │   │   ├── AdvertisingUpdateBudgetRequest.cs
│   │   │   │   ├── AdvertisingUpdateBudgetResponse.cs
│   │   │   │   ├── AdvertisingUpdateRequest.cs
│   │   │   │   ├── AdvertisingUpdateResponse.cs
│   │   │   │   ├── AdvertisingUpdateStatusRequest.cs
│   │   │   │   └── AdvertisingUpdateStatusResponse.cs
│   │   │   ├── Agent/
│   │   │   │   ├── Advertiser/
│   │   │   │   │   ├── AgentAdvertiserCreateV2Request.cs
│   │   │   │   │   ├── AgentAdvertiserCreateV2Response.cs
│   │   │   │   │   ├── AgentAdvertiserRechargeRequest.cs
│   │   │   │   │   ├── AgentAdvertiserRechargeResponse.cs
│   │   │   │   │   ├── AgentAdvertiserRefundRequest.cs
│   │   │   │   │   ├── AgentAdvertiserRefundResponse.cs
│   │   │   │   │   ├── AgentAdvertiserSelectRequest.cs
│   │   │   │   │   ├── AgentAdvertiserSelectResponse.cs
│   │   │   │   │   ├── AgentAdvertiserUpdateRequest.cs
│   │   │   │   │   └── AgentAdvertiserUpdateResponse.cs
│   │   │   │   ├── AgentChildAgentSelectRequest.cs
│   │   │   │   ├── AgentChildAgentSelectResponse.cs
│   │   │   │   ├── AgentInfoRequest.cs
│   │   │   │   └── AgentInfoResponse.cs
│   │   │   ├── BusinessPlatform/
│   │   │   │   ├── BusinessPlatformPartnerOrganizationListRequest.cs
│   │   │   │   └── BusinessPlatformPartnerOrganizationListResponse.cs
│   │   │   ├── Campaign/
│   │   │   │   ├── CampaignCreateRequest.cs
│   │   │   │   ├── CampaignCreateResponse.cs
│   │   │   │   ├── CampaignGetRequest.cs
│   │   │   │   ├── CampaignGetResponse.cs
│   │   │   │   ├── CampaignUpdateRequest.cs
│   │   │   │   ├── CampaignUpdateResponse.cs
│   │   │   │   ├── CampaignUpdateStatusRequest.cs
│   │   │   │   └── CampaignUpdateStatusResponse.cs
│   │   │   ├── Creative/
│   │   │   │   ├── CreativeCreateV2Request.cs
│   │   │   │   ├── CreativeCreateV2Response.cs
│   │   │   │   ├── CreativeGetRequest.cs
│   │   │   │   └── CreativeGetResponse.cs
│   │   │   ├── CustomerCenter/
│   │   │   │   └── Advertiser/
│   │   │   │       ├── CustomerCenterAdvertiserListRequest.cs
│   │   │   │       └── CustomerCenterAdvertiserListResponse.cs
│   │   │   ├── Enterprise/
│   │   │   │   ├── EnterpriseInfoRequest.cs
│   │   │   │   └── EnterpriseInfoResponse.cs
│   │   │   ├── File/
│   │   │   │   ├── FileImageAdvertiserGetRequest.cs
│   │   │   │   ├── FileImageAdvertiserGetResponse.cs
│   │   │   │   ├── FileImageAdvertiserRequest.cs
│   │   │   │   ├── FileImageAdvertiserResponse.cs
│   │   │   │   ├── FileImageAdvertisingRequest.cs
│   │   │   │   ├── FileImageAdvertisingResponse.cs
│   │   │   │   ├── FileImageGetRequest.cs
│   │   │   │   ├── FileImageGetResponse.cs
│   │   │   │   ├── FileMaterialBindRequest.cs
│   │   │   │   ├── FileMaterialBindResponse.cs
│   │   │   │   ├── FileVideoAdvertiserGetRequest.cs
│   │   │   │   ├── FileVideoAdvertiserGetResponse.cs
│   │   │   │   ├── FileVideoAdvertisingRequest.cs
│   │   │   │   ├── FileVideoAdvertisingResponse.cs
│   │   │   │   ├── FileVideoDeleteRequest.cs
│   │   │   │   ├── FileVideoDeleteResponse.cs
│   │   │   │   ├── FileVideoGetRequest.cs
│   │   │   │   ├── FileVideoGetResponse.cs
│   │   │   │   ├── FileVideoUpdateRequest.cs
│   │   │   │   └── FileVideoUpdateResponse.cs
│   │   │   ├── Fund/
│   │   │   │   ├── FundSharedWalletBalanceGetRequest.cs
│   │   │   │   └── FundSharedWalletBalanceGetResponse.cs
│   │   │   ├── Majordomo/
│   │   │   │   └── Advertiser/
│   │   │   │       ├── MajordomoAdvertiserSelectRequest.cs
│   │   │   │       └── MajordomoAdvertiserSelectResponse.cs
│   │   │   ├── OAuth2/
│   │   │   │   ├── OAuth2AccessTokenRequest.cs
│   │   │   │   ├── OAuth2AccessTokenResponse.cs
│   │   │   │   ├── OAuth2AdvertiserGetRequest.cs
│   │   │   │   ├── OAuth2AdvertiserGetResponse.cs
│   │   │   │   ├── OAuth2AppAccessTokenRequest.cs
│   │   │   │   ├── OAuth2AppAccessTokenResponse.cs
│   │   │   │   ├── OAuth2RefreshTokenRequest.cs
│   │   │   │   └── OAuth2RefreshTokenResponse.cs
│   │   │   ├── Tools/
│   │   │   │   └── VideoCover/
│   │   │   │       ├── ToolsVideoCoverSuggestRequest.cs
│   │   │   │       └── ToolsVideoCoverSuggestResponse.cs
│   │   │   └── User/
│   │   │       ├── UserInfoRequest.cs
│   │   │       └── UserInfoResponse.cs
│   │   ├── OceanEngineClient.cs
│   │   ├── OceanEngineClientOptions.cs
│   │   ├── OceanEngineEndpoints.cs
│   │   ├── OceanEngineException.cs
│   │   ├── OceanEngineRequest.cs
│   │   ├── OceanEngineResponse.cs
│   │   ├── README.md
│   │   ├── SKIT.FlurlHttpClient.ByteDance.OceanEngine.csproj
│   │   ├── Settings/
│   │   │   └── Credentials.cs
│   │   └── Utilities/
│   │       └── MD5Utility.cs
│   ├── SKIT.FlurlHttpClient.ByteDance.TikTokGlobal/
│   │   ├── Extensions/
│   │   │   ├── TikTokV2ClientExecuteOAuthExtensions.cs
│   │   │   ├── TikTokV2ClientExecutePostExtensions.cs
│   │   │   ├── TikTokV2ClientExecuteResearchExtensions.cs
│   │   │   ├── TikTokV2ClientExecuteUserExtensions.cs
│   │   │   └── TikTokV2ClientExecuteVideoExtensions.cs
│   │   ├── Models/
│   │   │   ├── OAuth/
│   │   │   │   ├── OAuthAccessTokenRequest.cs
│   │   │   │   ├── OAuthAccessTokenResponse.cs
│   │   │   │   ├── OAuthRefreshTokenRequest.cs
│   │   │   │   ├── OAuthRefreshTokenResponse.cs
│   │   │   │   ├── OAuthRevokeTokenRequest.cs
│   │   │   │   ├── OAuthRevokeTokenResponse.cs
│   │   │   │   └── Qrcode/
│   │   │   │       ├── OAuthCheckQrcodeRequest.cs
│   │   │   │       ├── OAuthCheckQrcodeResponse.cs
│   │   │   │       ├── OAuthGetQrcodeRequest.cs
│   │   │   │       └── OAuthGetQrcodeResponse.cs
│   │   │   ├── Post/
│   │   │   │   ├── PostPublishContentInitRequest.cs
│   │   │   │   ├── PostPublishContentInitResponse.cs
│   │   │   │   ├── PostPublishCreatorInfoQueryRequest.cs
│   │   │   │   ├── PostPublishCreatorInfoQueryResponse.cs
│   │   │   │   ├── PostPublishInboxVideoInitRequest.cs
│   │   │   │   ├── PostPublishInboxVideoInitResponse.cs
│   │   │   │   ├── PostPublishStatusFetchRequest.cs
│   │   │   │   ├── PostPublishStatusFetchResponse.cs
│   │   │   │   ├── PostPublishVideoInitRequest.cs
│   │   │   │   ├── PostPublishVideoInitResponse.cs
│   │   │   │   ├── PostUploadVideoRequest.cs
│   │   │   │   └── PostUploadVideoResponse.cs
│   │   │   ├── Research/
│   │   │   │   ├── Adlib/
│   │   │   │   │   ├── ResearchAdlibAdDetailRequest.cs
│   │   │   │   │   ├── ResearchAdlibAdDetailResponse.cs
│   │   │   │   │   ├── ResearchAdlibAdQueryRequest.cs
│   │   │   │   │   ├── ResearchAdlibAdQueryResponse.cs
│   │   │   │   │   ├── ResearchAdlibAdReportRequest.cs
│   │   │   │   │   ├── ResearchAdlibAdReportResponse.cs
│   │   │   │   │   ├── ResearchAdlibAdvertiserQueryRequest.cs
│   │   │   │   │   ├── ResearchAdlibAdvertiserQueryResponse.cs
│   │   │   │   │   ├── ResearchAdlibCommercialContentQueryRequest.cs
│   │   │   │   │   └── ResearchAdlibCommercialContentQueryResponse.cs
│   │   │   │   ├── Playlist/
│   │   │   │   │   ├── ResearchPlaylistInfoRequest.cs
│   │   │   │   │   └── ResearchPlaylistInfoResponse.cs
│   │   │   │   ├── User/
│   │   │   │   │   ├── ResearchUserFollowersRequest.cs
│   │   │   │   │   ├── ResearchUserFollowersResponse.cs
│   │   │   │   │   ├── ResearchUserFollowingRequest.cs
│   │   │   │   │   ├── ResearchUserFollowingResponse.cs
│   │   │   │   │   ├── ResearchUserInfoRequest.cs
│   │   │   │   │   ├── ResearchUserInfoResponse.cs
│   │   │   │   │   ├── ResearchUserLikedVideosRequest.cs
│   │   │   │   │   ├── ResearchUserLikedVideosResponse.cs
│   │   │   │   │   ├── ResearchUserPinnedVideosRequest.cs
│   │   │   │   │   ├── ResearchUserPinnedVideosResponse.cs
│   │   │   │   │   ├── ResearchUserRepostedVideosRequest.cs
│   │   │   │   │   └── ResearchUserRepostedVideosResponse.cs
│   │   │   │   └── Video/
│   │   │   │       ├── ResearchVideoCommentListRequest.cs
│   │   │   │       ├── ResearchVideoCommentListResponse.cs
│   │   │   │       ├── ResearchVideoQueryRequest.cs
│   │   │   │       └── ResearchVideoQueryResponse.cs
│   │   │   ├── User/
│   │   │   │   ├── Data/
│   │   │   │   │   ├── UserDataAddRequest.cs
│   │   │   │   │   ├── UserDataAddResponse.cs
│   │   │   │   │   ├── UserDataCancelRequest.cs
│   │   │   │   │   ├── UserDataCancelResponse.cs
│   │   │   │   │   ├── UserDataCheckRequest.cs
│   │   │   │   │   ├── UserDataCheckResponse.cs
│   │   │   │   │   ├── UserDataDownloadRequest.cs
│   │   │   │   │   └── UserDataDownloadResponse.cs
│   │   │   │   ├── UserInfoRequest.cs
│   │   │   │   └── UserInfoResponse.cs
│   │   │   └── Video/
│   │   │       ├── VideoListRequest.cs
│   │   │       ├── VideoListResponse.cs
│   │   │       ├── VideoQueryRequest.cs
│   │   │       └── VideoQueryResponse.cs
│   │   ├── README.md
│   │   ├── SKIT.FlurlHttpClient.ByteDance.TikTokGlobal.csproj
│   │   ├── Settings/
│   │   │   └── Credentials.cs
│   │   ├── TikTokV2Client.cs
│   │   ├── TikTokV2ClientBuilder.cs
│   │   ├── TikTokV2ClientOptions.cs
│   │   ├── TikTokV2Endpoints.cs
│   │   ├── TikTokV2Exception.cs
│   │   ├── TikTokV2Request.cs
│   │   ├── TikTokV2Response.cs
│   │   └── Utilities/
│   │       └── [Internal]/
│   │           └── HttpContentBuilder.cs
│   └── SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/
│       ├── Events/
│       │   ├── CancellationStatusChangeEvent.cs
│       │   ├── OrderStatusChangeEvent.cs
│       │   ├── PackageUpdateEvent.cs
│       │   ├── ProductCreationEvent.cs
│       │   ├── ProductInformationChangeEvent.cs
│       │   ├── ProductStatusChangeEvent.cs
│       │   ├── RecipientAddressUpdateEvent.cs
│       │   ├── ReturnStatusChangeEvent.cs
│       │   ├── SellerDeauthorizationEvent.cs
│       │   └── UpcomingAuthorizationExpirationEvent.cs
│       ├── Extensions/
│       │   ├── TikTokShopClientEventExtensions.cs
│       │   ├── TikTokShopClientExecuteAuthExtensions.cs
│       │   ├── TikTokShopClientExecuteAuthorizationExtensions.cs
│       │   ├── TikTokShopClientExecuteCustomerServiceExtensions.cs
│       │   ├── TikTokShopClientExecuteEventExtensions.cs
│       │   ├── TikTokShopClientExecuteFBTExtensions.cs
│       │   ├── TikTokShopClientExecuteFinanceExtensions.cs
│       │   ├── TikTokShopClientExecuteFulfillmentExtensions.cs
│       │   ├── TikTokShopClientExecuteLogisticsExtensions.cs
│       │   ├── TikTokShopClientExecuteOrderExtensions.cs
│       │   ├── TikTokShopClientExecuteProductExtensions.cs
│       │   ├── TikTokShopClientExecutePromotionExtensions.cs
│       │   ├── TikTokShopClientExecuteReturnRefundExtensions.cs
│       │   ├── TikTokShopClientExecuteSellerExtensions.cs
│       │   └── TikTokShopClientExecuteSupplyChainExtensions.cs
│       ├── Interceptors/
│       │   └── TikTokShopRequestSigningInterceptor.cs
│       ├── Models/
│       │   ├── Auth/
│       │   │   ├── AuthGetTokenRequest.cs
│       │   │   ├── AuthGetTokenResponse.cs
│       │   │   ├── AuthRefreshTokenRequest.cs
│       │   │   └── AuthRefreshTokenResponse.cs
│       │   ├── Authorization/
│       │   │   ├── AuthorizationGetCategoryAssetsRequest.cs
│       │   │   ├── AuthorizationGetCategoryAssetsResponse.cs
│       │   │   ├── AuthorizationGetShopsRequest.cs
│       │   │   └── AuthorizationGetShopsResponse.cs
│       │   ├── CustomerService/
│       │   │   ├── Agents/
│       │   │   │   ├── CustomerServiceGetAgentSettingsRequest.cs
│       │   │   │   ├── CustomerServiceGetAgentSettingsResponse.cs
│       │   │   │   ├── CustomerServiceUpdateAgentSettingsRequest.cs
│       │   │   │   └── CustomerServiceUpdateAgentSettingsResponse.cs
│       │   │   ├── CustomerServiceCreateConversationMessageRequest.cs
│       │   │   ├── CustomerServiceCreateConversationMessageResponse.cs
│       │   │   ├── CustomerServiceCreateConversationRequest.cs
│       │   │   ├── CustomerServiceCreateConversationResponse.cs
│       │   │   ├── CustomerServiceGetConversationMessagesRequest.cs
│       │   │   ├── CustomerServiceGetConversationMessagesResponse.cs
│       │   │   ├── CustomerServiceGetConversationsRequest.cs
│       │   │   ├── CustomerServiceGetConversationsResponse.cs
│       │   │   ├── CustomerServiceReadConversationMessageRequest.cs
│       │   │   ├── CustomerServiceReadConversationMessageResponse.cs
│       │   │   ├── CustomerServiceUploadImageRequest.cs
│       │   │   ├── CustomerServiceUploadImageResponse.cs
│       │   │   └── Performance/
│       │   │       ├── CustomerServiceGetPerformanceRequest.cs
│       │   │       └── CustomerServiceGetPerformanceResponse.cs
│       │   ├── Event/
│       │   │   ├── EventDeleteWebhookRequest.cs
│       │   │   ├── EventDeleteWebhookResponse.cs
│       │   │   ├── EventGetWebhooksRequest.cs
│       │   │   ├── EventGetWebhooksResponse.cs
│       │   │   ├── EventUpdateWebhookRequest.cs
│       │   │   └── EventUpdateWebhookResponse.cs
│       │   ├── FBT/
│       │   │   ├── FBTGetGoodsRequest.cs
│       │   │   ├── FBTGetGoodsResponse.cs
│       │   │   ├── FBTGetInboundOrdersRequest.cs
│       │   │   ├── FBTGetInboundOrdersResponse.cs
│       │   │   ├── FBTGetInventoriesRequest.cs
│       │   │   ├── FBTGetInventoriesResponse.cs
│       │   │   ├── FBTGetInventoryRecordsRequest.cs
│       │   │   ├── FBTGetInventoryRecordsResponse.cs
│       │   │   ├── FBTGetMerchantOnboardedRegionsRequest.cs
│       │   │   ├── FBTGetMerchantOnboardedRegionsResponse.cs
│       │   │   ├── FBTGetWarehousesRequest.cs
│       │   │   └── FBTGetWarehousesResponse.cs
│       │   ├── Finance/
│       │   │   ├── FinanceGetOrderStatementTransactionsRequest.cs
│       │   │   ├── FinanceGetOrderStatementTransactionsResponse.cs
│       │   │   ├── FinanceGetPaymentsRequest.cs
│       │   │   ├── FinanceGetPaymentsResponse.cs
│       │   │   ├── FinanceGetStatementTransactionsRequest.cs
│       │   │   ├── FinanceGetStatementTransactionsResponse.cs
│       │   │   ├── FinanceGetStatementsRequest.cs
│       │   │   ├── FinanceGetStatementsResponse.cs
│       │   │   ├── FinanceGetWithdrawalsRequest.cs
│       │   │   └── FinanceGetWithdrawalsResponse.cs
│       │   ├── Fulfillment/
│       │   │   ├── Bundle/
│       │   │   │   ├── FulfillmentCreateBundleRequest.cs
│       │   │   │   └── FulfillmentCreateBundleResponse.cs
│       │   │   ├── Orders/
│       │   │   │   ├── FulfillmentGetOrderSplitAttributesRequest.cs
│       │   │   │   ├── FulfillmentGetOrderSplitAttributesResponse.cs
│       │   │   │   ├── FulfillmentGetOrderTrackingRequest.cs
│       │   │   │   ├── FulfillmentGetOrderTrackingResponse.cs
│       │   │   │   ├── FulfillmentSearchOrderShippingServicesRequest.cs
│       │   │   │   ├── FulfillmentSearchOrderShippingServicesResponse.cs
│       │   │   │   ├── FulfillmentSplitOrderRequest.cs
│       │   │   │   ├── FulfillmentSplitOrderResponse.cs
│       │   │   │   ├── FulfillmentUpdateOrderPackagesRequest.cs
│       │   │   │   ├── FulfillmentUpdateOrderPackagesResponse.cs
│       │   │   │   ├── FulfillmentUpdateOrderShippingInfoRequest.cs
│       │   │   │   └── FulfillmentUpdateOrderShippingInfoResponse.cs
│       │   │   ├── Packages/
│       │   │   │   ├── Combine/
│       │   │   │   │   ├── FulfillmentCombinePackageRequest.cs
│       │   │   │   │   ├── FulfillmentCombinePackageResponse.cs
│       │   │   │   │   ├── FulfillmentSearchCombinablePackagesRequest.cs
│       │   │   │   │   ├── FulfillmentSearchCombinablePackagesResponse.cs
│       │   │   │   │   ├── FulfillmentUncombinePackageRequest.cs
│       │   │   │   │   └── FulfillmentUncombinePackageResponse.cs
│       │   │   │   ├── FulfillmentBatchShipPackagesRequest.cs
│       │   │   │   ├── FulfillmentBatchShipPackagesResponse.cs
│       │   │   │   ├── FulfillmentBatchUpdatePackagesDeliveryStatusRequest.cs
│       │   │   │   ├── FulfillmentBatchUpdatePackagesDeliveryStatusResponse.cs
│       │   │   │   ├── FulfillmentCreatePackageRequest.cs
│       │   │   │   ├── FulfillmentCreatePackageResponse.cs
│       │   │   │   ├── FulfillmentGetPackageDetailRequest.cs
│       │   │   │   ├── FulfillmentGetPackageDetailResponse.cs
│       │   │   │   ├── FulfillmentGetPackageHandoverTimeSlotsRequest.cs
│       │   │   │   ├── FulfillmentGetPackageHandoverTimeSlotsResponse.cs
│       │   │   │   ├── FulfillmentGetPackageShippingDocumentsRequest.cs
│       │   │   │   ├── FulfillmentGetPackageShippingDocumentsResponse.cs
│       │   │   │   ├── FulfillmentSearchPackagesRequest.cs
│       │   │   │   ├── FulfillmentSearchPackagesResponse.cs
│       │   │   │   ├── FulfillmentShipPackageRequest.cs
│       │   │   │   ├── FulfillmentShipPackageResponse.cs
│       │   │   │   ├── FulfillmentUpdatePackageShippingInfoRequest.cs
│       │   │   │   └── FulfillmentUpdatePackageShippingInfoResponse.cs
│       │   │   └── Upload/
│       │   │       ├── FulfillmentUploadFileRequest.cs
│       │   │       ├── FulfillmentUploadFileResponse.cs
│       │   │       ├── FulfillmentUploadImageRequest.cs
│       │   │       └── FulfillmentUploadImageResponse.cs
│       │   ├── Logistics/
│       │   │   ├── LogisticsGetDeliveryOptionShippingProvidersRequest.cs
│       │   │   ├── LogisticsGetDeliveryOptionShippingProvidersResponse.cs
│       │   │   ├── LogisticsGetGlobalWarehousesRequest.cs
│       │   │   ├── LogisticsGetGlobalWarehousesResponse.cs
│       │   │   ├── LogisticsGetWarehouseDeliveryOptionsRequest.cs
│       │   │   ├── LogisticsGetWarehouseDeliveryOptionsResponse.cs
│       │   │   ├── LogisticsGetWarehousesRequest.cs
│       │   │   └── LogisticsGetWarehousesResponse.cs
│       │   ├── Order/
│       │   │   ├── ExternalOrder/
│       │   │   │   ├── OrderCreateExternalOrderRequest.cs
│       │   │   │   ├── OrderCreateExternalOrderResponse.cs
│       │   │   │   ├── OrderGetExternalOrdersRequest.cs
│       │   │   │   ├── OrderGetExternalOrdersResponse.cs
│       │   │   │   ├── OrderSearchExternalOrdersRequest.cs
│       │   │   │   └── OrderSearchExternalOrdersResponse.cs
│       │   │   ├── OrderBatchGetOrderDetailRequest.cs
│       │   │   ├── OrderBatchGetOrderDetailResponse.cs
│       │   │   ├── OrderGetOrderPriceDetailRequest.cs
│       │   │   ├── OrderGetOrderPriceDetailResponse.cs
│       │   │   ├── OrderSearchOrdersRequest.cs
│       │   │   └── OrderSearchOrdersResponse.cs
│       │   ├── Product/
│       │   │   ├── Brand/
│       │   │   │   ├── ProductCreateBrandRequest.cs
│       │   │   │   ├── ProductCreateBrandResponse.cs
│       │   │   │   ├── ProductGetBrandsRequest.cs
│       │   │   │   └── ProductGetBrandsResponse.cs
│       │   │   ├── Category/
│       │   │   │   ├── ProductGetCategoriesRequest.cs
│       │   │   │   ├── ProductGetCategoriesResponse.cs
│       │   │   │   ├── ProductGetCategoryAttributesRequest.cs
│       │   │   │   ├── ProductGetCategoryAttributesResponse.cs
│       │   │   │   ├── ProductGetCategoryRulesRequest.cs
│       │   │   │   ├── ProductGetCategoryRulesResponse.cs
│       │   │   │   ├── ProductRecommendCategoriesRequest.cs
│       │   │   │   └── ProductRecommendCategoriesResponse.cs
│       │   │   ├── Compliance/
│       │   │   │   ├── ProductCreateComplianceManufacturerRequest.cs
│       │   │   │   ├── ProductCreateComplianceManufacturerResponse.cs
│       │   │   │   ├── ProductCreateComplianceResponsiblePersonRequest.cs
│       │   │   │   ├── ProductCreateComplianceResponsiblePersonResponse.cs
│       │   │   │   ├── ProductSearchComplianceManufacturersRequest.cs
│       │   │   │   ├── ProductSearchComplianceManufacturersResponse.cs
│       │   │   │   ├── ProductSearchComplianceResponsiblePersonsRequest.cs
│       │   │   │   ├── ProductSearchComplianceResponsiblePersonsResponse.cs
│       │   │   │   ├── ProductUpdateComplianceManufacturerPartiallyRequest.cs
│       │   │   │   ├── ProductUpdateComplianceManufacturerPartiallyResponse.cs
│       │   │   │   ├── ProductUpdateComplianceResponsiblePersonPartiallyRequest.cs
│       │   │   │   └── ProductUpdateComplianceResponsiblePersonPartiallyResponse.cs
│       │   │   ├── Global/
│       │   │   │   ├── Category/
│       │   │   │   │   ├── ProductGetGlobalCategoriesRequest.cs
│       │   │   │   │   ├── ProductGetGlobalCategoriesResponse.cs
│       │   │   │   │   ├── ProductGetGlobalCategoryAttributesRequest.cs
│       │   │   │   │   ├── ProductGetGlobalCategoryAttributesResponse.cs
│       │   │   │   │   ├── ProductGetGlobalCategoryRulesRequest.cs
│       │   │   │   │   ├── ProductGetGlobalCategoryRulesResponse.cs
│       │   │   │   │   ├── ProductRecommendGlobalCategoriesRequest.cs
│       │   │   │   │   └── ProductRecommendGlobalCategoriesResponse.cs
│       │   │   │   ├── ProductCreateGlobalProductRequest.cs
│       │   │   │   ├── ProductCreateGlobalProductResponse.cs
│       │   │   │   ├── ProductDeleteGlobalProductsRequest.cs
│       │   │   │   ├── ProductDeleteGlobalProductsResponse.cs
│       │   │   │   ├── ProductGetGlobalProductDetailRequest.cs
│       │   │   │   ├── ProductGetGlobalProductDetailResponse.cs
│       │   │   │   ├── ProductPublishGlobalProductRequest.cs
│       │   │   │   ├── ProductPublishGlobalProductResponse.cs
│       │   │   │   ├── ProductSearchGlobalProductsRequest.cs
│       │   │   │   ├── ProductSearchGlobalProductsResponse.cs
│       │   │   │   ├── ProductUpdateGlobalProductInventoryRequest.cs
│       │   │   │   ├── ProductUpdateGlobalProductInventoryResponse.cs
│       │   │   │   ├── ProductUpdateGlobalProductRequest.cs
│       │   │   │   └── ProductUpdateGlobalProductResponse.cs
│       │   │   ├── ProductActivateProductsRequest.cs
│       │   │   ├── ProductActivateProductsResponse.cs
│       │   │   ├── ProductCreateProductCategoryUpgradeTaskRequest.cs
│       │   │   ├── ProductCreateProductCategoryUpgradeTaskResponse.cs
│       │   │   ├── ProductCreateProductListingCheckRequest.cs
│       │   │   ├── ProductCreateProductListingCheckResponse.cs
│       │   │   ├── ProductCreateProductRequest.cs
│       │   │   ├── ProductCreateProductResponse.cs
│       │   │   ├── ProductDeactivateProductsRequest.cs
│       │   │   ├── ProductDeactivateProductsResponse.cs
│       │   │   ├── ProductDeleteProductsRequest.cs
│       │   │   ├── ProductDeleteProductsResponse.cs
│       │   │   ├── ProductGetInventoriesRequest.cs
│       │   │   ├── ProductGetInventoriesResponse.cs
│       │   │   ├── ProductGetListingSchemasRequest.cs
│       │   │   ├── ProductGetListingSchemasResponse.cs
│       │   │   ├── ProductGetPrerequisitesRequest.cs
│       │   │   ├── ProductGetPrerequisitesResponse.cs
│       │   │   ├── ProductGetProductDetailRequest.cs
│       │   │   ├── ProductGetProductDetailResponse.cs
│       │   │   ├── ProductGetProductDiagnosesRequest.cs
│       │   │   ├── ProductGetProductDiagnosesResponse.cs
│       │   │   ├── ProductGetProductSEOWordsRequest.cs
│       │   │   ├── ProductGetProductSEOWordsResponse.cs
│       │   │   ├── ProductGetProductSuggestionsRequest.cs
│       │   │   ├── ProductGetProductSuggestionsResponse.cs
│       │   │   ├── ProductRecoverProductsRequest.cs
│       │   │   ├── ProductRecoverProductsResponse.cs
│       │   │   ├── ProductSearchProductsRequest.cs
│       │   │   ├── ProductSearchProductsResponse.cs
│       │   │   ├── ProductUpdateProductInventoryRequest.cs
│       │   │   ├── ProductUpdateProductInventoryResponse.cs
│       │   │   ├── ProductUpdateProductPartiallyRequest.cs
│       │   │   ├── ProductUpdateProductPartiallyResponse.cs
│       │   │   ├── ProductUpdateProductPriceRequest.cs
│       │   │   ├── ProductUpdateProductPriceResponse.cs
│       │   │   ├── ProductUpdateProductRequest.cs
│       │   │   ├── ProductUpdateProductResponse.cs
│       │   │   ├── SizeChart/
│       │   │   │   ├── ProductSearchSizeChartsRequest.cs
│       │   │   │   └── ProductSearchSizeChartsResponse.cs
│       │   │   └── Upload/
│       │   │       ├── ProductOptimizeImagesRequest.cs
│       │   │       ├── ProductOptimizeImagesResponse.cs
│       │   │       ├── ProductUploadFileRequest.cs
│       │   │       ├── ProductUploadFileResponse.cs
│       │   │       ├── ProductUploadImageRequest.cs
│       │   │       └── ProductUploadImageResponse.cs
│       │   ├── Promotion/
│       │   │   ├── Activity/
│       │   │   │   ├── PromotionCreateActivityRequest.cs
│       │   │   │   ├── PromotionCreateActivityResponse.cs
│       │   │   │   ├── PromotionDeactivateActivityRequest.cs
│       │   │   │   ├── PromotionDeactivateActivityResponse.cs
│       │   │   │   ├── PromotionDeleteActivityProductsRequest.cs
│       │   │   │   ├── PromotionDeleteActivityProductsResponse.cs
│       │   │   │   ├── PromotionGetActivityDetailRequest.cs
│       │   │   │   ├── PromotionGetActivityDetailResponse.cs
│       │   │   │   ├── PromotionSearchActivitiesRequest.cs
│       │   │   │   ├── PromotionSearchActivitiesResponse.cs
│       │   │   │   ├── PromotionUpdateActivityProductsRequest.cs
│       │   │   │   ├── PromotionUpdateActivityProductsResponse.cs
│       │   │   │   ├── PromotionUpdateActivityRequest.cs
│       │   │   │   └── PromotionUpdateActivityResponse.cs
│       │   │   └── Coupon/
│       │   │       ├── PromotionGetCouponDetailRequest.cs
│       │   │       ├── PromotionGetCouponDetailResponse.cs
│       │   │       ├── PromotionSearchCouponsRequest.cs
│       │   │       └── PromotionSearchCouponsResponse.cs
│       │   ├── ReturnRefund/
│       │   │   ├── Cancellations/
│       │   │   │   ├── ReturnRefundApproveCancellationRequest.cs
│       │   │   │   ├── ReturnRefundApproveCancellationResponse.cs
│       │   │   │   ├── ReturnRefundCreateCancellationRequest.cs
│       │   │   │   ├── ReturnRefundCreateCancellationResponse.cs
│       │   │   │   ├── ReturnRefundRejectCancellationRequest.cs
│       │   │   │   ├── ReturnRefundRejectCancellationResponse.cs
│       │   │   │   ├── ReturnRefundSearchCancellationsRequest.cs
│       │   │   │   └── ReturnRefundSearchCancellationsResponse.cs
│       │   │   ├── Orders/
│       │   │   │   ├── ReturnRefundGetOrderAftersaleEligibilityRequest.cs
│       │   │   │   └── ReturnRefundGetOrderAftersaleEligibilityResponse.cs
│       │   │   ├── Refunds/
│       │   │   │   ├── ReturnRefundCalculateRefundRequest.cs
│       │   │   │   └── ReturnRefundCalculateRefundResponse.cs
│       │   │   ├── ReturnRefundGetRejectReasonsRequest.cs
│       │   │   ├── ReturnRefundGetRejectReasonsResponse.cs
│       │   │   └── Returns/
│       │   │       ├── ReturnRefundApproveReturnRequest.cs
│       │   │       ├── ReturnRefundApproveReturnResponse.cs
│       │   │       ├── ReturnRefundCreateReturnRequest.cs
│       │   │       ├── ReturnRefundCreateReturnResponse.cs
│       │   │       ├── ReturnRefundGetReturnRecordsRequest.cs
│       │   │       ├── ReturnRefundGetReturnRecordsResponse.cs
│       │   │       ├── ReturnRefundRejectReturnRequest.cs
│       │   │       ├── ReturnRefundRejectReturnResponse.cs
│       │   │       ├── ReturnRefundSearchReturnsRequest.cs
│       │   │       └── ReturnRefundSearchReturnsResponse.cs
│       │   ├── Seller/
│       │   │   ├── SellerGetPermissionsRequest.cs
│       │   │   ├── SellerGetPermissionsResponse.cs
│       │   │   ├── SellerGetShopsRequest.cs
│       │   │   └── SellerGetShopsResponse.cs
│       │   └── SupplyChain/
│       │       ├── SupplyChainSyncPackagesRequest.cs
│       │       └── SupplyChainSyncPackagesResponse.cs
│       ├── README.md
│       ├── SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.csproj
│       ├── Settings/
│       │   └── Credentials.cs
│       ├── TikTokShopClient.cs
│       ├── TikTokShopClientBuilder.cs
│       ├── TikTokShopClientOptions.cs
│       ├── TikTokShopEndpoints.cs
│       ├── TikTokShopEvent.cs
│       ├── TikTokShopException.cs
│       ├── TikTokShopRequest.cs
│       ├── TikTokShopResponse.cs
│       └── Utilities/
│           ├── HMACUtility.cs
│           └── [Internal]/
│               └── HttpContentBuilder.cs
└── test/
    ├── NuGet.config
    ├── SKIT.FlurlHttpClient.ByteDance.DouyinOpen.UnitTests/
    │   ├── .gitignore
    │   ├── EventSamples/
    │   │   ├── GoodLife/
    │   │   │   ├── LifeMemberJoinEvent.json
    │   │   │   ├── LifeMemberLeaveEvent.json
    │   │   │   ├── LifeProductAuditEvent.json
    │   │   │   ├── LifeTradeCertificateNotifyEvent.json
    │   │   │   └── LifeTradeOrderNotifyEvent.json
    │   │   ├── IM/
    │   │   │   ├── EnterGroupAuditChangeEvent.json
    │   │   │   ├── GroupFansEventEvent.json
    │   │   │   ├── IMAuthorizeEvent.json
    │   │   │   ├── IMEnterDirectMessageEvent.json
    │   │   │   ├── IMGroupReceiveMessageEvent.json
    │   │   │   └── IMReceiveMessageEvent.json
    │   │   ├── Interaction/
    │   │   │   ├── NewFollowActionEvent.json
    │   │   │   └── NewVideoDiggEvent.json
    │   │   ├── UnionAuth/
    │   │   │   ├── UnionAuthInfoForBEvent.json
    │   │   │   └── UnionAuthInfoForCEvent.json
    │   │   └── Webhook/
    │   │       ├── AuthorizeEvent.json
    │   │       ├── CreateVideoEvent.json
    │   │       ├── DialogPhoneEvent.json
    │   │       ├── ItemCommentReplyEvent.json
    │   │       ├── PersonalTabContactEvent.json
    │   │       ├── ReceiveMessageEvent.json
    │   │       ├── UnauthorizeEvent.json
    │   │       ├── VerifyWebhookEvent.json
    │   │       └── WebsiteContactEvent.json
    │   ├── IMPORTANT_CodeAnalyzeTests.cs
    │   ├── ModelSamples/
    │   │   ├── ApiAppsAuth/
    │   │   │   ├── AppsAuthGetOpenIdByCV1Request.json
    │   │   │   └── AppsAuthGetOpenIdByCV1Response.json
    │   │   ├── ApiAppsTrade/
    │   │   │   ├── AppsTradeBookCreateBookV2Request.json
    │   │   │   ├── AppsTradeBookCreateBookV2Response.json
    │   │   │   ├── AppsTradeBookMerchantCancelBookV2Request.json
    │   │   │   ├── AppsTradeBookQueryBookV2Request.json
    │   │   │   ├── AppsTradeBookQueryBookV2Response.json
    │   │   │   ├── AppsTradeBookResultCallbackV2Request.json
    │   │   │   ├── AppsTradeBookUserCancelBookV2Request.json
    │   │   │   ├── AppsTradeFulfillmentDeliveryPrepareV2Request.json
    │   │   │   ├── AppsTradeFulfillmentDeliveryPrepareV2Response.json
    │   │   │   ├── AppsTradeFulfillmentDeliveryVerifyV2Request.json
    │   │   │   ├── AppsTradeFulfillmentDeliveryVerifyV2Response.json
    │   │   │   ├── AppsTradeFulfillmentOrderCanUseV2Request.json
    │   │   │   ├── AppsTradeFulfillmentOrderCanUseV2Response.json
    │   │   │   ├── AppsTradeFulfillmentPushDeliveryV2Request.json
    │   │   │   ├── AppsTradeFulfillmentPushDeliveryV2Response.json
    │   │   │   ├── AppsTradeFulfillmentQueryUserCertificatesV2Request.json
    │   │   │   ├── AppsTradeFulfillmentQueryUserCertificatesV2Response.json
    │   │   │   ├── AppsTradeFulfillmentVerifyCancelV2Request.json
    │   │   │   ├── AppsTradeOrderCloseOrderV2Request.json
    │   │   │   ├── AppsTradeOrderCreateOrderV2Request.json
    │   │   │   ├── AppsTradeOrderCreateOrderV2Response.json
    │   │   │   ├── AppsTradeOrderQueryCPSV2Request.json
    │   │   │   ├── AppsTradeOrderQueryCPSV2Response.json
    │   │   │   ├── AppsTradeOrderQueryItemOrderInfoV2Request.json
    │   │   │   ├── AppsTradeOrderQueryItemOrderInfoV2Response.json
    │   │   │   ├── AppsTradeOrderQueryOrderV2Request.json
    │   │   │   ├── AppsTradeOrderQueryOrderV2Response.json
    │   │   │   ├── AppsTradeRefundCreateRefundV2Request.json
    │   │   │   ├── AppsTradeRefundCreateRefundV2Response.json
    │   │   │   ├── AppsTradeRefundMerchantAuditCallbackV2Request.json
    │   │   │   ├── AppsTradeRefundQueryRefundV2Request.json
    │   │   │   ├── AppsTradeRefundQueryRefundV2Response.json
    │   │   │   ├── AppsTradeSettleCreateSettleV2Request.json
    │   │   │   ├── AppsTradeSettleCreateSettleV2Response.json
    │   │   │   ├── AppsTradeSettleQuerySettleV2Request.json
    │   │   │   └── AppsTradeSettleQuerySettleV2Response.json
    │   │   ├── ApiDouyinAuth/
    │   │   │   ├── DouyinAuthGetOpenIdByBV1Request.json
    │   │   │   ├── DouyinAuthGetOpenIdByBV1Response.json
    │   │   │   ├── DouyinAuthGetOpenIdByCV1Request.json
    │   │   │   ├── DouyinAuthGetOpenIdByCV1Response.json
    │   │   │   ├── DouyinAuthGetRelatedIdV1Request.json
    │   │   │   └── DouyinAuthGetRelatedIdV1Response.json
    │   │   ├── ApiDouyinIM/
    │   │   │   ├── DouyinIMGetAppletTemplateV1Request.json
    │   │   │   ├── DouyinIMGetAppletTemplateV1Response.json
    │   │   │   ├── DouyinIMSetAppletTemplateV1Request.json
    │   │   │   └── DouyinIMSetAppletTemplateV1Response.json
    │   │   ├── ApiDouyinInteractive/
    │   │   │   └── DouyinInteractiveIntentionLogListV1Response.json
    │   │   ├── ApiDouyinRole/
    │   │   │   ├── DouyinRoleCheckV1Request.json
    │   │   │   └── DouyinRoleCheckV1Response.json
    │   │   ├── ApiDouyinSchema/
    │   │   │   ├── DouyinSchemaGetChatV1Request.json
    │   │   │   ├── DouyinSchemaGetChatV1Response.json
    │   │   │   ├── DouyinSchemaGetItemInfoV1Request.json
    │   │   │   ├── DouyinSchemaGetItemInfoV1Response.json
    │   │   │   ├── DouyinSchemaGetLiveV1Request.json
    │   │   │   ├── DouyinSchemaGetLiveV1Response.json
    │   │   │   ├── DouyinSchemaGetShareV1Request.json
    │   │   │   ├── DouyinSchemaGetShareV1Response.json
    │   │   │   ├── DouyinSchemaGetUserProfileV1Request.json
    │   │   │   └── DouyinSchemaGetUserProfileV1Response.json
    │   │   ├── ApiDouyinUser/
    │   │   │   └── DouyinUserFansDataV1Response.json
    │   │   ├── ApiDouyinVideo/
    │   │   │   ├── DouyinVideoBasicInfoV1Request.json
    │   │   │   ├── DouyinVideoBasicInfoV1Response.json
    │   │   │   ├── DouyinVideoCreateVideoV1Response.json
    │   │   │   ├── DouyinVideoDataV1Response.json
    │   │   │   ├── DouyinVideoListV1Response.json
    │   │   │   ├── DouyinVideoUploadVideoV1Response.json
    │   │   │   ├── Iframe/
    │   │   │   │   ├── DouyinVideoGetIframeByItemV1Response.json
    │   │   │   │   └── DouyinVideoGetIframeByVideoV1Response.json
    │   │   │   ├── Image/
    │   │   │   │   ├── DouyinVideoCreateImageTextV1Request.json
    │   │   │   │   ├── DouyinVideoCreateImageTextV1Response.json
    │   │   │   │   └── DouyinVideoUploadImageV1Response.json
    │   │   │   └── Part/
    │   │   │       ├── DouyinVideoCompleteVideoPartUploadV1Response.json
    │   │   │       └── DouyinVideoInitVideoPartUploadV1Response.json
    │   │   ├── ApiIM/
    │   │   │   └── IMMessageResourcesResponse.json
    │   │   ├── ApiIndustry/
    │   │   │   ├── AppTestRelation/
    │   │   │   │   ├── IndustrySolutionAddAppTestRelationV1Request.json
    │   │   │   │   ├── IndustrySolutionAddAppTestRelationV1Response.json
    │   │   │   │   ├── IndustrySolutionDeleteAppTestRelationV1Request.json
    │   │   │   │   ├── IndustrySolutionDeleteAppTestRelationV1Response.json
    │   │   │   │   ├── IndustrySolutionQueryAppTestRelationV1Request.json
    │   │   │   │   └── IndustrySolutionQueryAppTestRelationV1Response.json
    │   │   │   └── Implementation/
    │   │   │       ├── IndustrySolutionQueryImplementationV1Request.json
    │   │   │       └── IndustrySolutionQueryImplementationV1Response.json
    │   │   ├── ApiMatch/
    │   │   │   ├── MatchTaskboxAgencyQueryBillLinkV2Request.json
    │   │   │   ├── MatchTaskboxAgencyQueryBillLinkV2Response.json
    │   │   │   ├── MatchTaskboxAgencyQueryVideoSummaryDataV2Request.json
    │   │   │   ├── MatchTaskboxAgencyQueryVideoSummaryDataV2Response.json
    │   │   │   ├── MatchTaskboxChangeUserBindAgentV1Request.json
    │   │   │   ├── MatchTaskboxGenerateAgentLinkV1Request.json
    │   │   │   ├── MatchTaskboxGenerateAgentLinkV1Response.json
    │   │   │   ├── MatchTaskboxGetAgencyUserBindRecordV1Request.json
    │   │   │   ├── MatchTaskboxGetAgencyUserBindRecordV1Response.json
    │   │   │   ├── MatchTaskboxQueryAppTaskIdV1Request.json
    │   │   │   ├── MatchTaskboxQueryAppTaskIdV1Response.json
    │   │   │   ├── MatchTaskboxQueryTaskInfoV1Request.json
    │   │   │   ├── MatchTaskboxQueryTaskInfoV1Response.json
    │   │   │   ├── MatchTaskboxQueryTaskVideoStatusV2Request.json
    │   │   │   ├── MatchTaskboxQueryTaskVideoStatusV2Response.json
    │   │   │   ├── MatchTaskboxQueryViolateTalentListV2Response.json
    │   │   │   ├── MatchTaskboxSaveAgentV1Request.json
    │   │   │   └── MatchTaskboxSaveAgentV1Response.json
    │   │   ├── DataExternal/
    │   │   │   ├── Anchor/
    │   │   │   │   └── DataExternalAnchorMpItemClickDistributionResponse.json
    │   │   │   ├── Billboard/
    │   │   │   │   ├── HotVideo/
    │   │   │   │   │   └── DataExternalBillboardHotVideoResponse.json
    │   │   │   │   ├── Live/
    │   │   │   │   │   └── DataExternalBillboardLiveResponse.json
    │   │   │   │   ├── Music/
    │   │   │   │   │   └── DataExternalBillboardMusicHotResponse.json
    │   │   │   │   ├── Prop/
    │   │   │   │   │   └── DataExternalBillboardPropResponse.json
    │   │   │   │   ├── Sport/
    │   │   │   │   │   ├── DataExternalBillboardSportBasketballResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportComprehensiveResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportCultureResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportFitnessResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportOutdoorsResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportOverallResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportSoccerResponse.json
    │   │   │   │   │   └── DataExternalBillboardSportTableTennisResponse.json
    │   │   │   │   ├── Stars/
    │   │   │   │   │   └── DataExternalBillboardStarsResponse.json
    │   │   │   │   └── Topic/
    │   │   │   │       └── DataExternalBillboardTopicResponse.json
    │   │   │   ├── Fans/
    │   │   │   │   ├── DataExternalFansFavouriteResponse.json
    │   │   │   │   └── DataExternalFansSourceResponse.json
    │   │   │   ├── Item/
    │   │   │   │   ├── DataExternalItemBaseResponse.json
    │   │   │   │   ├── DataExternalItemCommentResponse.json
    │   │   │   │   ├── DataExternalItemLikeResponse.json
    │   │   │   │   ├── DataExternalItemPlayResponse.json
    │   │   │   │   └── DataExternalItemShareResponse.json
    │   │   │   ├── POI/
    │   │   │   │   ├── DataExternalPOIBaseResponse.json
    │   │   │   │   ├── DataExternalPOIBillboardResponse.json
    │   │   │   │   ├── DataExternalPOIClaimListResponse.json
    │   │   │   │   ├── DataExternalPOIServiceBaseResponse.json
    │   │   │   │   ├── DataExternalPOIServiceUserResponse.json
    │   │   │   │   └── DataExternalPOIUserResponse.json
    │   │   │   └── User/
    │   │   │       ├── DataExternalUserCommentResponse.json
    │   │   │       ├── DataExternalUserFansResponse.json
    │   │   │       ├── DataExternalUserItemResponse.json
    │   │   │       ├── DataExternalUserLikeResponse.json
    │   │   │       ├── DataExternalUserProfileResponse.json
    │   │   │       └── DataExternalUserShareResponse.json
    │   │   ├── DevTool/
    │   │   │   └── DevToolMicroAppIsLegalResponse.json
    │   │   ├── Discovery/
    │   │   │   ├── DiscoveryEntertainmentRankItemResponse.json
    │   │   │   └── DiscoveryEntertainmentRankVersionResponse.json
    │   │   ├── Enterprise/
    │   │   │   └── Media/
    │   │   │       ├── EnterpriseMediaDeleteResponse.json
    │   │   │       ├── EnterpriseMediaListResponse.json
    │   │   │       ├── EnterpriseMediaTempUploadResponse.json
    │   │   │       └── EnterpriseMediaUploadResponse.json
    │   │   ├── Event/
    │   │   │   ├── EventStatusListResponse.json
    │   │   │   └── EventStatusUpdateResponse.json
    │   │   ├── Fans/
    │   │   │   └── FansCheckResponse.json
    │   │   ├── GoodLife/
    │   │   │   ├── Aftersale/
    │   │   │   │   ├── Audit/
    │   │   │   │   │   └── GoodLifeAftersaleAuditNotifyV1Request.json
    │   │   │   │   └── Order/
    │   │   │   │       ├── GoodLifeAftersaleOrderApplyRefundV1Request.json
    │   │   │   │       └── GoodLifeAftersaleOrderMerchantRejectV1Request.json
    │   │   │   ├── Fulfilment/
    │   │   │   │   ├── Certificate/
    │   │   │   │   │   ├── GoodLifeFulfilmentCertificateGetV1Response.json
    │   │   │   │   │   ├── GoodLifeFulfilmentCertificateQueryV1Response.json
    │   │   │   │   │   ├── GoodLifeFulfilmentCertificateVerifyRecordQueryV1Response.json
    │   │   │   │   │   ├── GoodLifeFulfilmentCertificateVerifyV1Request.json
    │   │   │   │   │   └── GoodLifeFulfilmentCertificateVerifyV1Response.json
    │   │   │   │   ├── Distribution/
    │   │   │   │   │   └── GoodLifeFulfilmentDistributionOrderSyncStatusV1Request.json
    │   │   │   │   └── ReserveCode/
    │   │   │   │       ├── GoodLifeFulfilmentReserveCodeBatchImportV1Request.json
    │   │   │   │       ├── GoodLifeFulfilmentReserveCodeBindOrderInfoV1Request.json
    │   │   │   │       └── GoodLifeFulfilmentReserveCodeBindOrderInfoV1Response.json
    │   │   │   ├── Goods/
    │   │   │   │   ├── Calendar/
    │   │   │   │   │   ├── GoodLifeGoodsCalendarAmountGroupSaveV1Request.json
    │   │   │   │   │   ├── GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Request.json
    │   │   │   │   │   └── GoodLifeGoodsCalendarStockGroupSaveV1Request.json
    │   │   │   │   ├── Product/
    │   │   │   │   │   ├── GoodLifeGoodsProductDraftGetV1Response.json
    │   │   │   │   │   ├── GoodLifeGoodsProductDraftQueryV1Response.json
    │   │   │   │   │   ├── GoodLifeGoodsProductFreeAuditV1Request.json
    │   │   │   │   │   ├── GoodLifeGoodsProductOnlineGetV1Response.json
    │   │   │   │   │   ├── GoodLifeGoodsProductOnlineQueryV1Response.json
    │   │   │   │   │   ├── GoodLifeGoodsProductOperateV1Request.json
    │   │   │   │   │   ├── GoodLifeGoodsProductSaveV1Request.json
    │   │   │   │   │   └── GoodLifeGoodsProductSaveV1Response.json
    │   │   │   │   ├── SKU/
    │   │   │   │   │   └── GoodLifeGoodsSKUBatchSaveV1Request.json
    │   │   │   │   ├── SPU/
    │   │   │   │   │   ├── GoodLifeGoodsSPUSaveV1Request.json
    │   │   │   │   │   └── GoodLifeGoodsSPUSaveV1Response.json
    │   │   │   │   ├── Stock/
    │   │   │   │   │   └── GoodLifeGoodsStockSyncV1Request.json
    │   │   │   │   └── Template/
    │   │   │   │       └── GoodLifeGoodsTemplateGetV1Response.json
    │   │   │   ├── Member/
    │   │   │   │   ├── GoodLifeMemberUnionIdGetV1Request.json
    │   │   │   │   ├── GoodLifeMemberUnionIdGetV1Response.json
    │   │   │   │   └── GoodLifeMemberUserUpdateV1Request.json
    │   │   │   ├── POI/
    │   │   │   │   ├── Crowd/
    │   │   │   │   │   └── GoodLifePOICrowdSaveV1Request.json
    │   │   │   │   ├── GoodLifePOIClaimV1Request.json
    │   │   │   │   ├── GoodLifePOIClaimV1Response.json
    │   │   │   │   ├── GoodLifePOIMatchRelationQueryV1Response.json
    │   │   │   │   ├── GoodLifePOIMatchTaskQueryV1Response.json
    │   │   │   │   ├── GoodLifePOIMatchTaskSubmitV1Request.json
    │   │   │   │   ├── GoodLifePOIMatchTaskSubmitV1Response.json
    │   │   │   │   ├── GoodLifePOISyncV1Request.json
    │   │   │   │   └── GoodLifePOISyncV1Response.json
    │   │   │   ├── Partner/
    │   │   │   │   ├── Commission/
    │   │   │   │   │   ├── GoodLifePartnerCommissionRecordGetV1Response.json
    │   │   │   │   │   ├── GoodLifePartnerCommissionRecordQueryV1Response.json
    │   │   │   │   │   ├── GoodLifePartnerProductCommissionQueryV1Response.json
    │   │   │   │   │   ├── GoodLifePartnerProductCommissionSaveV1Request.json
    │   │   │   │   │   └── GoodLifePartnerProductCommissionSaveV1Response.json
    │   │   │   │   └── Order/
    │   │   │   │       ├── GoodLifePartnerOrderCreateV1Request.json
    │   │   │   │       ├── GoodLifePartnerOrderCreateV1Response.json
    │   │   │   │       ├── GoodLifePartnerOrderGetV1Response.json
    │   │   │   │       └── GoodLifePartnerOrderQueryV1Response.json
    │   │   │   ├── Settle/
    │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryByOrderV1Response.json
    │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryV1Response.json
    │   │   │   │   ├── GoodLifeSettleLedgerQueryByOrderV1Response.json
    │   │   │   │   ├── GoodLifeSettleLedgerQueryRecordByCertificateV1Response.json
    │   │   │   │   └── GoodLifeSettleLedgerQueryV1Response.json
    │   │   │   ├── Shop/
    │   │   │   │   └── GoodLifeShopPOIQueryV1Response.json
    │   │   │   └── Trade/
    │   │   │       ├── GoodLifeTradeBookGetV1Response.json
    │   │   │       ├── GoodLifeTradeBuyMerchantConfirmOrderV1Request.json
    │   │   │       └── GoodLifeTradeOrderQueryV1Response.json
    │   │   ├── HotSearch/
    │   │   │   ├── HotSearchSentencesResponse.json
    │   │   │   ├── HotSearchTrendingSentencesResponse.json
    │   │   │   └── HotSearchVideosResponse.json
    │   │   ├── IM/
    │   │   │   ├── Authorize/
    │   │   │   │   ├── IMAuthorizeS

================================================
FILE CONTENTS
================================================

================================================
FILE: .editorconfig
================================================
root = true

[*]
charset = utf-8
end_of_line = crlf
indent_size = 4
indent_style = space
tab_width = 4
trim_trailing_whitespace = true
insert_final_newline = true

[*.cs]
dotnet_diagnostic.CS1570.severity = none
dotnet_diagnostic.CS1591.severity = suggestion


================================================
FILE: .gitee/ISSUE_TEMPLATE.zh-CN.md
================================================
> **⚠⚠ 请注意:不符合格式要求的 Issue 可能会被直接关闭。**

---

**问题类型**

请在此选择你的问题类型:

-   [ ] 报告缺陷:发现源代码中的漏洞、运行发生的异常、或文档里的错误。
-   [ ] 请求新功能:需要某些新功能,或对现有实现提出更好的建议。
-   [ ] 其他类型 Issue:遇到了问题,需要帮助。

---

**关于问题或建议的简单描述**

请在此填写你遇到的问题或你想要的功能。

---

**与问题或建议相关的源代码**

对于报告缺陷,请在此粘贴与问题相关的代码,或提供可复现问题的最小化项目(可提供仓库地址或 GitHub Gist)。

对于请求新功能,请在此粘贴已有实现思路或解决方案。

注意,请不要以截图形式提供代码。

```csharp
// Source Code
```

---

**异常堆栈或异常原因**

请在此填写你遇到的问题抛出错误时的异常消息和堆栈跟踪(如果有的话)。

---

**发生问题的运行环境**

请在此填写以下几项内容:

1. 操作系统:请填写发生问题的操作系统环境信息(如:Windows Server 2012 R2)
2. .NET 版本:请填写发生问题的 .NET 环境信息(如:.NET Framework 4.7.2 / .NET 5.0)
3. 使用的模块及版本:请填写发生问题的模块信息(如:SKIT.FlurlHttpClient.ByteDance.TikTok 1.0.0)
4. 其他环境信息。

---

**补充说明**

请在此填写任何其他可以定位问题或帮助说明的信息。


================================================
FILE: .gitee/PULL_REQUEST_TEMPLATE.zh-CN.md
================================================
> **⚠⚠ 请注意:不符合格式要求的 PR 可能会被直接关闭。**

---

感谢您对 SKIT.FlurlHttpClient.ByteDance 项目的贡献。

在提交此 PR 之前,请确保:

-   [ ] 检查新的代码是否遵循了本项目的现有代码格式和命名标准。
-   [ ] 编写新的单元测试、并运行已有的单元测试来验证你的更改,所有功能和修复的错误都必须进行以验证它们是否有效。
-   [ ] 规范 Commit Log。

以上内容规范请参阅 [CONTRIBUTING](https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/blob/main/CONTRIBUTING.md)。

---

**PR 类型**

请在此选择你的 PR 类型:

-   [ ] 修复缺陷:修复源代码中的漏洞、运行发生的异常、或文档里的错误。
-   [ ] 增强或优化:增加某些新功能,或对现有实现做出更好的优化。

---

**关于 PR 的简单描述**

请在此填写你所提交代码的简要描述。

---

**关联的 Issue**

请在此填写与此 PR 相关的 Issue。

---

**关于新功能的用法**

请在此给出一个你所新增功能的代码示例(如果有的话)。

```csharp
// Source Code
```

---

**是否有破坏性变化?(Breaking Change)**

如果你所提交的代码会造成一些破坏性的变化(即已使用了本库的项目,在更新代码后需要做出代码调整才可通过构建),请在此描述与变化有关的代码,并试图说明为何需要此变更。


================================================
FILE: .github/ISSUE_TEMPLATE/1_bug_report.md
================================================
---
name: 报告缺陷
about: 发现源代码中的漏洞、运行发生的异常、或文档里的错误。
title: '[BUG] 请一句话描述此缺陷'
labels: bug
assignees: ''
---

> **⚠⚠ 请注意:不符合格式要求的 Issue 可能会被直接关闭。**

---

**关于问题的简单描述**

请在此填写你遇到的问题。

---

**与问题相关的源代码**

请在此粘贴与问题相关的代码,或提供可复现问题的最小化项目(可提供仓库地址或 GitHub Gist)。

注意,请不要以截图形式提供代码。

```csharp
// Source Code
```

---

**异常堆栈或异常原因**

请在此填写你遇到的问题抛出错误时的异常消息和堆栈跟踪(如果有的话)。

---

**发生问题的运行环境**

请在此填写以下几项内容:

1. 操作系统:请填写发生问题的操作系统环境信息(如:Windows Server 2012 R2)
2. .NET 版本:请填写发生问题的 .NET 环境信息(如:.NET Framework 4.7.2 / .NET 5.0)
3. 使用的模块及版本:请填写发生问题的模块信息(如:SKIT.FlurlHttpClient.ByteDance.TikTok 1.0.0)
4. 其他环境信息。

---

**补充说明**

请在此填写任何其他可以定位问题的信息。


================================================
FILE: .github/ISSUE_TEMPLATE/2_feature_request.md
================================================
---
name: 请求新功能
about: 需要某些新功能,或对现有实现提出更好的建议。
title: '[FEATURE] 请一句话描述此建议'
labels: enhancement
assignees: ''
---

> **⚠⚠ 请注意:不符合格式要求的 Issue 可能会被直接关闭。**

---

**关于建议的简单描述**

请在此简要描述你想要的功能。

---

**实现思路或解决方案**

如果你已有实现思路或解决方案,请在此贴出。

---

**补充说明**

请在此填写任何其他可以帮助说明的信息。


================================================
FILE: .github/ISSUE_TEMPLATE/3_custom.md
================================================
---
name: 其他类型 Issue
about: 遇到了问题,需要帮助。
title: ''
labels: question
assignees: ''
---

请简要描述你所遇到的问题。


================================================
FILE: .github/PULL_REQUEST_TEMPLATE/1_bugfix.md
================================================
---
name: 修复缺陷
about: 修复源代码中的漏洞、运行发生的异常、或文档里的错误。
title: '[BUGFIX] 请一句话描述此 PR 修复的缺陷'
labels: bug
assignees: ''
---

> **⚠⚠ 请注意:不符合格式要求的 PR 可能会被直接关闭。**

---

感谢您对 SKIT.FlurlHttpClient.ByteDance 项目的贡献。

在提交此 PR 之前,请确保:

-   [ ] 检查新的代码是否遵循了本项目的现有代码格式和命名标准。
-   [ ] 编写新的单元测试、并运行已有的单元测试来验证你的更改,所有功能和修复的错误都必须进行以验证它们是否有效。
-   [ ] 规范 Commit Log。

以上内容规范请参阅 [CONTRIBUTING](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/blob/main/CONTRIBUTING.md)。

---

**关于 PR 的简单描述**

请在此填写你所提交代码的简要描述。

---

**关联的 Issue**

请在此填写与此 PR 相关的 Issue。

---

**是否有破坏性变化?(Breaking Change)**

如果你所提交的代码会造成一些破坏性的变化(即已使用了本库的项目,在更新代码后需要做出代码调整才可通过构建),请在此描述与变化有关的代码,并试图说明为何需要此变更。


================================================
FILE: .github/PULL_REQUEST_TEMPLATE/2_enhancement.md
================================================
---
name: 增强或优化
about: 增加某些新功能,或对现有实现做出更好的优化。
title: '[ENHANCEMENT] 请一句话描述此 PR 提供的内容'
labels: enhancement
assignees: ''
---

> **⚠⚠ 请注意:不符合格式要求的 PR 可能会被直接关闭。**

---

感谢您对 SKIT.FlurlHttpClient.ByteDance 项目的贡献。

在提交此 PR 之前,请确保:

-   [ ] 检查新的代码是否遵循了本项目的现有代码格式和命名标准。
-   [ ] 编写新的单元测试、并运行已有的单元测试来验证你的更改,所有功能和修复的错误都必须进行以验证它们是否有效。
-   [ ] 规范 Commit Log。

以上内容规范请参阅 [CONTRIBUTING](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/blob/main/CONTRIBUTING.md)。

---

**关于 PR 的简单描述**

请在此填写你所提交代码的简要描述。

---

**关于新功能的用法**

请在此给出一个你所新增功能的代码示例。

```csharp
// Source Code
```

---

**关联的 Issue**

请在此填写与此 PR 相关的 Issue。

---

**是否有破坏性变化?(Breaking Change)**

如果你所提交的代码会造成一些破坏性的变化(即已使用了本库的项目,在更新代码后需要做出代码调整才可通过构建),请在此描述与变化有关的代码,并试图说明为何需要此变更。


================================================
FILE: .github/workflows/codeql-analysis.yml
================================================
# For more information, see:
# https://github.com/github/codeql
name: CodeQL

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

jobs:
  analyze:
    name: Analyze
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        language: [csharp]
    steps:
    - name: Checkout Repository
      uses: actions/checkout@v2
      with:
        fetch-depth: 1
    - name: Setup .NET
      uses: actions/setup-dotnet@v1
      with:
        dotnet-version: 6.0.x
    - name: Initialize CodeQL
      uses: github/codeql-action/init@v1
      with:
        languages: ${{ matrix.language }}
        queries: security-and-quality
    - name: Autobuild
      uses: github/codeql-action/autobuild@v1
    - name: Perform CodeQL Analysis
      uses: github/codeql-action/analyze@v1


================================================
FILE: .github/workflows/super-linter.yml
================================================
# For more information, see:
# https://github.com/github/super-linter
name: CodeLint

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  run-lint:
    name: Lint
    runs-on: ubuntu-latest
    steps:
      - name: Checkout Repository
        uses: actions/checkout@v2
        with:
          fetch-depth: 1
      - name: Lint Code Base
        uses: github/super-linter@v4
        env:
          VALIDATE_ALL_CODEBASE: false
          DEFAULT_BRANCH: main
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}


================================================
FILE: .gitignore
================================================
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.

# User-specific files
*.suo
*.user
*.sln.docstates

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
x64/
build/
bld/
[Bb]in/
[Oo]bj/

# Roslyn cache directories
*.ide/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

#NUNIT
*.VisualState.xml
TestResult.xml

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c

*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc

# Chutzpah Test files
_Chutzpah*

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opensdf
*.sdf
*.cachefile

# Visual Studio profiler
*.psess
*.vsp
*.vspx

# TFS 2012 Local Workspace
$tf/

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user

# JustCode is a .NET coding addin-in
.JustCode

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# NCrunch
_NCrunch_*
.*crunch*.local.xml

# MightyMoose
*.mm.*
AutoTest.Net/

# Web workbench (sass)
.sass-cache/

# Installshield output folder
[Ee]xpress/

# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html

# Click-Once directory
publish/

# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
## TODO: Comment the next line if you want to checkin your
## web deploy settings but do note that will include unencrypted
## passwords
#*.pubxml

# NuGet Packages Directory
packages/*
## TODO: If the tool you use requires repositories.config
## uncomment the next line
#!packages/repositories.config

# Enable "build/" folder in the NuGet Packages folder since
# NuGet packages use it for MSBuild targets.
# This line needs to be after the ignore of the build folder
# (and the packages folder if the line above has been uncommented)
!packages/build/

# Windows Azure Build Output
csx/
*.build.csdef

# Windows Store app package directory
AppPackages/

# Others
sql/
*.Cache
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.pfx
*.publishsettings
node_modules/

# RIA/Silverlight projects
Generated_Code/

# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm

# SQL Server files
*.mdf
*.ldf

# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings

# Microsoft Fakes
FakesAssemblies/

# LightSwitch generated files
GeneratedArtifacts/
_Pvt_Extensions/
ModelManifest.xml

# Visual Studio temporary files
.vs
*.nupkg


================================================
FILE: CHANGELOG.md
================================================
# CHANGELOG

### 版本说明

各 SDK 的版本号将遵循语义化版本规则。

在更新日志中会包含以下几种名词:

1.  “**新增**”:
    -   追加了新功能;
    -   一般不会产生破坏性更新。
2.  “**变更**”:
    -   可能重新实现了已有的功能,通常会带来使用方式上的变化;
    -   可能升、降级了第三方依赖库的版本。
    -   一般会产生破坏性更新。
3.  “**修复**”:
    -   修复了已知的一些问题;
    -   一般不会产生破坏性更新。

注意,预发行版(版本号将以 `-alpha`、`-beta`、`-rc` 结尾)不会在更新日志中呈现。如非必要,请不要将预发行版应用于生产项目。

自 v2.0.0 版本起,各 SDK 将与[公共组件](https://www.nuget.org/packages/SKIT.FlurlHttpClient.Common)的主版本号保持对齐关系,即:

-   SDK v2.x.x 将依赖公共组件 v2.x.x;
-   SDK v3.x.x 将依赖公共组件 v3.x.x。
-   依此类推。

---

### 模块 `SKIT.FlurlHttpClient.ByteDance.MicroApp` 更新日志

<details>

<summary>[展开查看]</summary>

-   Release 3.7.0 (2024-11-08)

    -   **新增**:新增获取用户唯一标识接口。

    -   **新增**:新增小程序设置关联地区相关接口。

    -   **新增**:新增小游戏礼包福袋接口。

    -   **新增**:新增直播小玩法礼物进阶互动效果​、用户战绩与排行榜、用户快捷选队、观众一键同玩能力等相关接口。

    -   **新增**:新增服务商平台获取域名校验文件信息接口。

    -   **新增**:随官方更新担保支付退款结果查询接口模型。(_via_ [Gitee #IAWCCD](https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/issues/IAWCCD))

    -   **新增**:随官方更新短视频数据分析和直播数据分析相关接口模型。

-   Release 3.6.1 (2024-07-15)

    -   **修复**:修复小游戏担保支付签名逻辑错误。影响版本:v3.6.0。

-   Release 3.6.0 (2024-07-14)

    -   **新增**:新增开发者回复评价、删除评价等接口。

    -   **变更**:升级公共组件至 v3.1.0。

    -   **修复**:修复小游戏支付接口请求签名错误。(_via_ [GitHub #33](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/issues/33))

-   Release 3.5.0 (2024-06-17)

    -   **新增**:新增素材库相关接口。

    -   **新增**:新增直播小玩法获取直播信息接口。

    -   **新增**:新增服务商平台代商家管理小程序小程序登录 V2 版接口。

-   Release 3.4.0 (2024-05-31)

    -   **新增**:新增小程序券相关接口。

    -   **新增**:新增交易工具周期代扣、交易工具信用免押等相关接口。

    -   **新增**:新增通用交易系统、行业交易系统等相关接口。

    -   **新增**:新增短视频分析、直播分析、小房子直播分析、留资分析等相关接口。

    -   **新增**:随官方更新数据分析相关接口模型。

    -   **变更**:升级依赖 `BouncyCastle.Cryptography` 至 v2.4.0。

-   Release 3.3.0 (2024-05-26)

    -   **新增**:新增小程序文字直播预约公告、Web 化接入、抖店绑定、电商等相关接口。

    -   **新增**:随官方更新流量主相关接口模型。

    -   **变更**:变更入口点路径。

    -   **变更**:移除部分已废弃接口。

-   Release 3.2.0 (2024-05-17)

    -   **新增**:新增小程序隐私协议相关接口。

    -   **新增**:新增小程序直播预约相关接口。

    -   **变更**:升级依赖 `BouncyCastle.Cryptography` 至 v2.3.1。

-   Release 3.1.0 (2024-05-08)

    -   **新增**:新增上传短剧权益事件接口。

    -   **修复**:修复部分接口 Content-Type 请求标头设置错误。影响版本:v3.0.0 ~ v3.0.1。

    -   **修复**:修复服务商平台代开发小程序备案查询服务内容类型接口 URL 错误。影响版本:v3.0.0 ~ v3.0.1。

-   Release 3.0.1 (2024-03-10)

    -   **修复**:修复部分以反斜杠结尾的接口地址错误。影响版本:v3.0.0。

-   Release 3.0.0 (2024-03-09)

    -   **新增**:新增 URL Link v2、URL Schema v2、二维码 v2、订阅消息 v2、推广计划 v2、流量主 v2 等相关接口。

    -   **新增**:新增内容安全图片检测 v3、普通二维码绑定 v3 等相关接口。

    -   **新增**:新增线索组件、视频能力、搜索能力、任务能力、用户信息、分享等相关接口。

    -   **新增**:新增小程序能力申请、抖音号绑定等相关接口。

    -   **新增**:新增泛知识角色系统抖音号绑定相关接口。

    -   **新增**:新增服务商平台代开发小程序授权 v2、代开发小程序模板管理 v2、代开发小程序基础信息管理 v2、代开发小程序开发管理 v2 等相关接口。

    -   **新增**:新增服务商平台代开发小程序备案相关接口。

    -   **新增**:独立化直播小玩法 API 客户端,支持自动生成请求签名。

    -   **变更**:升级公共组件至 v3.0.0。完整变更说明请参阅迁移指南。

    -   **变更**:重命名客户端 `ByteDanceMicroAppClient` 为 `DouyinMicroAppClient`。

    -   **变更**:移除部分已废弃接口。

    -   **修复**:修复泛知识课程库添加课程接口模型定义错误。

    -   **修复**:修复担保支付相关接口 GET 请求签名错误。(_via_ [GitHub #20](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/pull/20))

-   Release 2.5.0 (2023-07-17)

    -   **新增**:新增担保支付自动结算结果查询接口。(_via_ [GitHub #12](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/pull/12))

    -   **新增**:新增泛知识角色系统相关接口。(_via_ [GitHub #16](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/pull/16))

    -   **新增**:随官方更新泛知识课程库添加和修改泛课程接口模型。(_via_ [GitHub #18](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/pull/18))

-   Release 2.4.1 (2023-06-23)

    -   **修复**:修复部分服务商授权相关接口模型定义错误。(_via_ [GitHub #11](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/pull/11))

    -   **修复**:修复回调通知事件验证签名错误。(_via_ [GitHub #11](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/pull/11))

-   Release 2.4.0 (2023-03-28)

    -   **新增**:新增担保支付账单相关接口。

    -   **新增**:新增直播小玩法相关接口。

-   Release 2.3.0 (2023-02-21)

    -   **新增**:新增若干服务商平台代商家管理小程序相关的回调通知事件模型。

    -   **变更**:独立化泛知识课程库相关接口。

    -   **变更**:独立化服务商平台相关接口。

    -   **修复**:修复泛知识课程库接入点错误。

-   Release 2.2.0 (2023-02-20)

    -   **新增**:新增小程序获取已设置的服务类目、上传资源、订阅消息模板库、剪映视频模板、抖音开放能力、普通二维码绑定、流量主等相关接口。

    -   **新增**:新增泛知识课程库查询退款规则、修改退款规则、查询课程审核、设置回调通知等接口。

    -   **新增**:新增第三方小程序应用上传资源接口。

    -   **新增**:新增服务商平台代商家入驻抖音开放平台相关接口。

    -   **变更**:移除部分已废弃接口。

-   Release 2.1.0 (2023-01-17)

    -   **新增**:新增小程序挂载、分发、引导关注抖音号、数据分析等相关接口。

    -   **新增**:新增服务商平台代开发小程序获取模板小程序列表、提审代码、删除订单、获取官方客服链接等接口。

    -   **变更**:标记获取粉丝列表、获取关注列表接口为已废弃。

-   Release 2.0.0 (2022-12-06)

    -   **变更**:升级公共组件至 v2.6.0。

-   Release 1.4.0 (2022-12-04)

    -   **新增**:新增 UrlLink 分享相关接口。

    -   **新增**:新增获取官方平台客服链接接口。

    -   **新增**:新增获取评价数据接口。

    -   **新增**:新增小程序推广计划短视频任务相关接口。

    -   **变更**:标记 v1 版授权登录接口为已废弃。

-   Release 1.3.0 (2022-08-24)

    -   **新增**:新增担保支付进件、退分账、提现相关接口。

    -   **新增**:随官方更新担保支付接口获取页面链接相关接口。

-   Release 1.2.0 (2022-05-02)

    -   **新增**:新增独立的小游戏接入点。

    -   **变更**:重命名部分接口模型,将路由中的版本号信息后置。

-   Release 1.1.0 (2022-05-02)

    -   **新增**:新增小程序任务后台任务上传接口。

    -   **新增**:新增课程库资质管理相关接口。

    -   **新增**:新增 v2 版授权登录接口。

    -   **新增**:随官方更新担保支付相关接口模型。

    -   **变更**:升级公共组件至 v2.5.0。

    -   **变更**:统一接口响应模型中关于错误代码的字段。

-   Release 1.0.0 (2022-03-01)

    -   首次发布。

</details>

---

### 模块 `SKIT.FlurlHttpClient.ByteDance.DouyinOpen` 更新日志

<details>

<summary>[展开查看]</summary>

-   Release 3.4.0 (2024-11-08)

    -   **新增**:新增获取用户唯一标识接口。

    -   **新增**:随官方更新视频评论相关接口。

-   Release 3.3.0 (2024-07-14)

    -   **新增**:新增获取消息中的多媒体资源接口。

    -   **新增**:随官方更新获取评论列表接口模型。

    -   **变更**:升级公共组件至 v3.1.0。

-   Release 3.2.0 (2024-05-31)

    -   **新增**:新增生活服务交易系统相关接口。

    -   **新增**:新增行业解决方案开放能力配置相关接口。

    -   **新增**:随官方更新创建视频、视频详情页跳转链接获取等接口模型。

-   Release 3.1.0 (2024-05-09)

    -   **新增**:新增小程序推广计划相关接口。

    -   **修复**:修复部分接口 Content-Type 请求标头设置错误。影响版本:v3.0.0。

-   Release 3.0.0 (2024-03-12)

    -   **新增**:新增联合授权、用户经营身份管理、嵌入式播放、投稿任务、直播数据、经营工具等相关接口。

    -   **新增**:新增评论管理、私信管理、群聊管理、意向用户管理等相关接口。

    -   **新增**:新增获取 OpenTicket 接口。

    -   **新增**:随官方更新获取用户公开信息接口模型。

    -   **新增**:随官方更新团购核算验券准备接口模型。(_via_ [GitHub #23](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/pull/23))

    -   **变更**:升级公共组件至 v3.0.0。完整变更说明请参阅迁移指南。

    -   **变更**:规范化部分接口模型命名,并移除部分已废弃接口。

    -   **修复**:修复部分以反斜杠结尾的接口地址错误。

    -   **修复**:修复部分接口 AccessToken 传参方式错误。

-   Release 2.4.0 (2023-05-25)

    -   **新增**:新增创建图文相关接口。

    -   **新增**:随官方上传视频、分片上传视频、创建视频等接口地址。

-   Release 2.3.0 (2023-04-15)

    -   **新增**:新增互动管理场景跳转相关接口。

    -   **新增**:随官方更新查询授权账号视频列表、查询特定视频的视频数据、获取用户粉丝数据等接口地址。

    -   **变更**:移除头条视频、西瓜视频相关接口。

-   Release 2.2.1 (2023-02-28)

    -   **修复**:修复生活服务开放能力门店信息查询接口响应模型定义错误。(_via_ [Gitee #I6IG50](https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/issues/I6IG50))

-   Release 2.2.0 (2023-02-27)

    -   **新增**:新增部分抖音生活服务相关 Webhook 事件模型。

    -   **新增**:新增抖音生活服务 SPI 验签及解密相关扩展方法。

    -   **变更**:重命名扩展方法 `DouyinOpenClient.DecryptMobileNumber` 为 `DouyinOpenClient.DecryptOAuthUserInfoMobileNumber`。

-   Release 2.1.0 (2023-02-21)

    -   **新增**:新增物料配置相关接口。

    -   **新增**:新增抖音生活服务创建适用人群、代运营、外卖等相关接口。

-   Release 2.0.1 (2023-02-06)

    -   **修复**:修复刷新接口调用凭证接口模型定义错误。

-   Release 2.0.0 (2022-12-06)

    -   **变更**:升级公共组件至 v2.6.0。

-   Release 1.4.0 (2022-12-05)

    -   **新增**:新增部分生活服务开放能力抖音生活服务相关接口。

    -   **新增**:新增抖音生活服务开放能力会员相关 Webhook 事件模型。

    -   **修复**:修复 `TikTokClientResponseExtra` 类型的拼写错误。

-   Release 1.3.0 (2022-12-04)

    -   **新增**:随官方更新抖音视频相关接口模型。

    -   **新增**:随官方更新评论回复 Webhook 事件模型。

    -   **变更**:移除部分已废弃接口。

-   Release 1.2.0 (2022-08-25)

    -   **新增**:新增服务市场开放能力相关接口。

    -   **新增**:新增生活服务开放能力 CPS 佣金相关接口。

    -   **新增**:新增生活服务开放能力抖音生活服务门店查询、团购核销、团购对账、会员接入、订单查询相关接口。

    -   **变更**:调整 `TikTokClientOptions.Endpoints` 的默认值。

-   Release 1.1.0 (2022-05-02)

    -   **新增**:新增生活服务开放能力商品库接入相关接口。

    -   **新增**:新增生活服务开放能力交易系统接入相关接口。

    -   **变更**:升级公共组件至 v2.5.0。

-   Release 1.0.0 (2022-03-07)

    -   首次发布。

</details>

---

### 模块 `SKIT.FlurlHttpClient.ByteDance.TikTokGlobal` 更新日志

<details>

<summary>[展开查看]</summary>

-   Release 3.2.0 (2024-11-07)

    -   **新增**:随官方更新调研(Research)相关接口。

-   Release 3.1.0 (2024-07-14)

    -   **变更**:升级公共组件至 v3.1.0。

-   Release 3.0.1 (2024-03-10)

    -   **修复**:修复部分以反斜杠结尾的接口地址错误。影响版本:v3.0.0。

-   Release 3.0.0 (2024-03-04)

    -   **新增**:新增内容发布(Content Posting)、个人数据可携带权(Data Portability)、调研(Research)、商业化内容(Commercial Content)等相关接口。

    -   **变更**:移除原 v1 版 API 客户端。

    -   **变更**:升级公共组件至 v3.0.0。完整变更说明请参阅迁移指南。

-   Release 2.1.0 (2023-03-11)

    -   **新增**:支持 OAuth、用户等相关的 v2 版 API。

-   Release 2.0.0 (2022-12-06)

    -   首次发布。

</details>

---

### 模块 `SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop` 更新日志

<details>

<summary>[展开查看]</summary>

-   Release 3.5.0 (2025-03-31)

    -   **变更**:移除已废弃的旧版本 API。

    -   **修复**:修复因大小写敏感导致的请求签名错误。(_via_ [GitHub #37](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/issues/37))

-   Release 3.4.0 (2024-11-14)

    -   **新增**:新增商品制造商与责任人相关接口。

    -   **新增**:新增外部订单相关接口。

    -   **新增**:新增优惠券相关接口。

    -   **新增**:新增 FBT 相关接口。

    -   **新增**:新增获取授权的类目资产列表、搜索产品尺码表模板、发起商品分类升级任务、获取客服统计数据、创建履约起步价套餐等接口。

    -   **新增**:随官方更新商品、订单、财务等相关接口模型。

-   Release 3.3.0 (2024-07-14)

    -   **新增**:随官方更新商品 SKU 相关接口模型。

    -   **变更**:升级公共组件至 v3.1.0。

-   Release 3.2.0 (2024-06-12)

    -   **新增**:新增商品信息质检相关接口。

    -   **新增**:随官方更新授权认证、商品分类等相关接口模型。

-   Release 3.1.0 (2024-05-15)

    -   **新增**:接入新版本 API(即 v202309 API)。

    -   **新增**:新增反序列化 Webhook 事件相关的工具方法。

    -   **变更**:独立化旧版本 API。

-   Release 3.0.0 (2024-03-04)

    -   **新增**:新增获取商品库存列表接口。

    -   **新增**:新增商品预检接口。

    -   **新增**:新增获取运输服务接口。

    -   **新增**:随官方更新商品、订单等相关接口模型。

    -   **变更**:升级公共组件至 v3.0.0。完整变更说明请参阅迁移指南。

-   Release 2.1.0 (2023-05-09)

    -   **新增**:新增创建品牌接口。

-   Release 2.0.0 (2023-03-28)

    -   首次发布。

</details>


================================================
FILE: CONTRIBUTING.md
================================================
# CONTRIBUTING

在你参与贡献本项目之前,请先阅读如下指南:

-   [如何提问?](#question)

-   [如何报告缺陷?](#bug-report)

-   [如何提出功能建议?](#feature-request)

-   [如何发起拉取请求(Pull Request)?](#pull-request)

---

## <a name="question"></a> 如何提问?

如果你对如何使用本库有疑问,请先阅读本项目提供的开发文档,并在 Issue 列表中尝试搜索。

如果你的疑问仍不能得到解决,请开启一个新的 Issue。

---

## <a name="bug-report"></a> 如何报告缺陷?

如果你发现源代码中的漏洞、运行发生的异常、或文档里的错误,你可以通过提交 Issue 来指出。当然,如果你可以提交修复后的 PR 就再好不过了。

提交 Issue 时,请包含以下内容:

1.  关于问题的简单描述。

2.  发生问题的运行环境(如:操作系统版本,.NET Runtime 版本,引用本库的版本,等等)。

3.  与问题相关的代码,或可复现问题的最小化项目(可上传至代码托管仓库或使用 GitHub Gist)。

4.  抛出错误时的异常消息和堆栈跟踪。

请谨记,你所提供的信息越丰富,对于我们的帮助就越大,修复的可能性也就越高。

---

## <a name="feature-request"></a> 如何提出功能建议?

如果你需要某些新功能,或对现有实现提出更好的建议,你可以通过提交 Issue 来说明。

提交 Issue 前,请注意以下几点:

1.  本库只专注于 API 的封装,更偏向于 SDK 而非一个完整的 Web 框架,请不要提出本应该在框架层实现的功能。

2.  本库提供了很多可扩展的接口,请评估是否可以在不修改本项目的前提下实现你想要的功能。

3.  稳定性至关重要,请谨慎提出需要大量破坏性变化的功能。

---

## <a name="pull-request"></a> 如何发起拉取请求?

在向本项目发起 PR 时,请确保已执行了以下操作:

1. 检查新的代码是否遵循了本项目的现有代码格式和命名标准:

    - **禁止**:源代码中不得包含连续的空白行,字段、属性、方法之间应保留一个空白行;

    - **必须**:应确保目录结构与现有目录结构一致;

    - **必须**:应使用大驼峰命名方式命名类(即 Class)、属性(即 Property)和方法(即 Method),具体可参考已有模型;

    - **必须**:应遵循开发文档中关于 API 模型命名的方式来提供新的 API,具体可参考已有模型;

    - **必须**:应为可公开访问的类、属性和方法提供 XML 文档注释,具体可参考已有注释;

    - **必须**:API 模型中的数组形式的字段,在请求模型中应声明为 `IList` 泛型类型,在响应模型中应声明为数组类型,具体可参考已有模型;

    - **必须**:API 模型中的子类型,应统一包含在一个名为 _Types_ 的公开的嵌套静态类中,具体可参考已有模型;

    - **必须**:API 模型中的 JsonConverter,应统一嵌套在一个名为 _Converters_ 的内部的嵌套静态类中,具体可参考已有模型;

    - **必须**:API 模型中的引用类型的非空属性,在请求模型中应赋值为该类型的默认构造实例(`string` 类型则为 `string.Empty`),在响应模型中应赋值为 `default!`,具体可参考已有模型;

    - **必须**:API 模型中的引用类型的可空属性,应在声明时标记为 `class?`(_class_ 为具体类名),具体可参考已有模型;

    - **必须**:API 模型中的属性,如果序列化后的命名为缩写,应恢复其完整形式(如 _img_ → _Image_、_thumb_ → _Thumbnail_、_avg_ → _Average_、_cid_ → _CategoryId_ 等等),但某些特定的专有名词则无需照此处理(如 _Id_、_Http_、_Url_、_Cgi_ 等等);

    - **建议**:API 模型中的属性,如果序列化后的取值只有 0 / 1、且日后也不可能会增加其他取值,可声明为 `bool` 类型;

    - **建议**:API 模型中的属性,如果序列化后是日期时间类型的字符串,可声明为 `DateTimeOffset` 类型;

    - **建议**:API 模型中的属性,如果序列化后是 JSON 格式的字符串,可声明为强类型并配合相应的 JsonConverter、而非直接声明为 `string` 类型;

    - **建议**:API 模型中的 `bool` 类型的属性,命名可以 _Is_、_Has_ 等开头;

    - **建议**:API 模型中的表示时间戳的属性,命名可以 _Timestamp_ 等结尾;

    - 其他注意事项请参阅微软官方提供的[《框架设计准则》](https://docs.microsoft.com/zh-CN/dotnet/standard/design-guidelines)。

2. 编写新的单元测试、并运行已有的单元测试来验证你的更改,所有功能和修复的错误都必须进行以验证它们是否有效:

    - **禁止**:请注意单元测试项目的 `csproj` 文件,如果在其下添加新文件时,可能导致它的内容发生变化,请不要将此类修改操作提交到 git 中;

    - **禁止**:请注意单元测试项目下的 `appsettings.json` 文件,请在克隆仓库后的第一时间执行 `git update-index --assume-unchanged` 命令,避免修改此文件后将敏感信息提交到 git 中;

    - **必须**:Code Style 测试应完全通过,且提供新的 API 模型示例;

    - **必须**:如果是非 API 接口的调整(如工具类等),则应提供测试用例;

    - **必须**:单元测试项目下的 API 模型示例的目录结构与文件命名,应与源项目保持一致,具体可参考已有示例;

    - **建议**:请尽可能地与字节跳动官方文档给出的示例保持一致。

3. 规范 Commit Log:

    - **必须**:提交记录的格式应固定为 `<type>(<scope>): <subject>`。

    - **必须**:提交记录中的 `<type>`,可取值为:

        - _feat_:新增或变更已有功能;
        - _fix_:修复缺陷或拼写错误;
        - _docs_:文档等内容的变更;
        - _style_:格式调整(即不涉及任何代码内容上的变化);
        - _refactor_:重构(即代码内容发生变化,但不影响现有功能,也未新增任何功能);
        - _test_:测试相关;
        - _chore_:其他杂项。

    - **必须**:提交记录中的 `<scope>`,可取值为:

        - _microapp_:关于 `SKIT.FlurlHttpClient.ByteDance.MicroApp` 项目的变化;
        - _douyinopen_:关于 `SKIT.FlurlHttpClient.ByteDance.DouyinOpen` 项目的变化;
        - _douyinshop_:关于 `SKIT.FlurlHttpClient.ByteDance.DouyinShop` 项目的变化;
        - _oceanengine_:关于 `SKIT.FlurlHttpClient.ByteDance.OceanEngine` 项目的变化;
        - _tiktok_:关于 `SKIT.FlurlHttpClient.ByteDance.TikTokGlobal` 项目的变化;
        - _tiktokshop_:关于 `SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop` 项目的变化;
        - 留空:不属于上述任何情形。

    - **建议**:提交记录应遵循最小化原则,避免修改或新增了几十处、却混杂在一起提交,以免为日后搜索查询造成困扰。

请注意,对软件来说,适当的规范和标准绝不是消灭代码内容的创造性、优雅性,而是限制过度个性化,以一种普遍认可的统一方式一起做事,提升协作效率,降低沟通成本。代码的字里行间流淌的是软件系统的血液,质量的提升是尽可能少踩坑,杜绝踩重复的坑,切实提升软件开发质量和团队协作效率。

因此,本项目会严格约束 PR 规范,并有权对 PR 的发起者提出需求意见和建议,只到发起者做出符合要求修改后才会被批准合并。(注:已产生的提交记录可通过 `git rebase` 命令修改)

另外需要说明的是,Gitee 同步仓库后可能会丢失 PR 中的提交记录,如果发起者介意这一点,请务必只在 GitHub 发起 PR。


================================================
FILE: LICENSE
================================================
MIT License

Copyright (c) 2021 RHQYZ

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


================================================
FILE: README.md
================================================
# SKIT.FlurlHttpClient.ByteDance

[![Gitee Stars](https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/badge/star.svg?title=Stars)](https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance)
[![Gitee Forks](https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/badge/fork.svg?title=Forks)](https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance)
[![GitHub Stars](https://img.shields.io/github/stars/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance?logo=github&label=Stars)](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance)
[![GitHub Forks](https://img.shields.io/github/forks/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance?logo=github&label=Forks)](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance)
[![Vistors](https://visitor-badge.laobi.icu/badge?page_id=fudiwei.DotNetCore.SKIT.FlurlHttpClient.ByteDance&title=Visitors)](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance)
[![License](https://img.shields.io/github/license/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance?label=License)](https://mit-license.org/)

基于 `Flurl.Http` 的字节跳动 HTTP API SDK,目前已包含抖音开放平台、抖音小程序开放平台、抖店开放平台、巨量引擎开放平台、TikTok Developer API、TikTok Shop Open Platform 等模块。

> 更多 SKIT.FlurlHttpClient 系列开发工具包请[点此查看](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient)。

---

## 特性

-   基于 `Flurl.Http`。
-   支持 .NET Framework 4.6.2+、.NET Core 3.1+、.NET 5.0+ 多目标框架。
-   支持 Windows / Linux / macOS 多平台部署。
-   支持 `System.Text.Json`(默认)和 `Newtonsoft.Json` 两种序列化方式。
-   强类型接口模型。
-   全异步式编程。
-   提供 SourceLink 调试符号文件。
-   完整、完善、完全的字节跳动 HTTP API 封装。

---

## 模块

|                 名称                 |                                                                                                                                                                                                             NuGet                                                                                                                                                                                                              |                        其他                        |
| :----------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------: |
|             抖音开放平台             |             [![NuGet Version](https://img.shields.io/nuget/v/SKIT.FlurlHttpClient.ByteDance.DouyinOpen.svg?label=NuGet)](https://www.nuget.org/packages/SKIT.FlurlHttpClient.ByteDance.DouyinOpen) <br> [![NuGet Download](https://img.shields.io/nuget/dt/SKIT.FlurlHttpClient.ByteDance.DouyinOpen.svg?sanitize=true&label=Downloads)](https://www.nuget.org/packages/SKIT.FlurlHttpClient.ByteDance.DouyinOpen)             |      [开发文档](./docs/DouyinOpen/README.md)       |
| 抖音小程序开放平台(小程序、小游戏) |                 [![NuGet Version](https://img.shields.io/nuget/v/SKIT.FlurlHttpClient.ByteDance.MicroApp.svg?label=NuGet)](https://www.nuget.org/packages/SKIT.FlurlHttpClient.ByteDance.MicroApp) <br> [![NuGet Download](https://img.shields.io/nuget/dt/SKIT.FlurlHttpClient.ByteDance.MicroApp.svg?sanitize=true&label=Downloads)](https://www.nuget.org/packages/SKIT.FlurlHttpClient.ByteDance.MicroApp)                 |       [开发文档](./docs/MicroApp/README.md)        |
|  抖店开放平台(抖音小店、今日特卖)  |                                                                                                                                                                                                          _已停止维护_                                                                                                                                                                                                          |      [开发文档](./docs/DouyinShop/README.md)       |
|     巨量引擎开放平台(头条广告)     |                                                                                                                                                                                                            _开发中_                                                                                                                                                                                                            |                                                    |
|         TikTok Developer API         |         [![NuGet Version](https://img.shields.io/nuget/v/SKIT.FlurlHttpClient.ByteDance.TikTokGlobal.svg?label=NuGet)](https://www.nuget.org/packages/SKIT.FlurlHttpClient.ByteDance.TikTokGlobal) <br> [![NuGet Download](https://img.shields.io/nuget/dt/SKIT.FlurlHttpClient.ByteDance.TikTokGlobal.svg?sanitize=true&label=Downloads)](https://www.nuget.org/packages/SKIT.FlurlHttpClient.ByteDance.TikTokGlobal)         |   [Documentation](./docs/TikTokGlobal/README.md)   |
|      TikTok Shop Open Platform       | [![NuGet Version](https://img.shields.io/nuget/v/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.svg?label=NuGet)](https://www.nuget.org/packages/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop) <br> [![NuGet Download](https://img.shields.io/nuget/dt/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.svg?sanitize=true&label=Downloads)](https://www.nuget.org/packages/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop) | [Documentation](./docs/TikTokGlobalShop/README.md) |

---

## 参与贡献

-   GitHub Repo:https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance.git
-   Gitee Repo:https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance.git

以上仓库地址同步更新,均可接受 Issue 或 Pull Request。

如何参与贡献请参阅 [CONTRIBUTING](./CONTRIBUTING.md)。

---

## 更新日志

详细更新说明请参阅 [CHANGELOG](./CHANGELOG.md)。


================================================
FILE: SKIT.FlurlHttpClient.ByteDance.slnx
================================================
<Solution>
  <Folder Name="/src/">
    <Project Path="src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/SKIT.FlurlHttpClient.ByteDance.DouyinOpen.csproj" />
    <Project Path="src/SKIT.FlurlHttpClient.ByteDance.MicroApp/SKIT.FlurlHttpClient.ByteDance.MicroApp.csproj" />
    <Project Path="src/SKIT.FlurlHttpClient.ByteDance.OceanEngine/SKIT.FlurlHttpClient.ByteDance.OceanEngine.csproj" />
    <Project Path="src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobal/SKIT.FlurlHttpClient.ByteDance.TikTokGlobal.csproj" />
    <Project Path="src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.csproj" />
  </Folder>
  <Folder Name="/test/">
    <Project Path="test/SKIT.FlurlHttpClient.ByteDance.DouyinOpen.UnitTests/SKIT.FlurlHttpClient.ByteDance.DouyinOpen.UnitTests.csproj" />
    <Project Path="test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests.csproj" />
    <Project Path="test/SKIT.FlurlHttpClient.ByteDance.OceanEngine.UnitTests/SKIT.FlurlHttpClient.ByteDance.OceanEngine.UnitTests.csproj" />
    <Project Path="test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobal.UnitTests/SKIT.FlurlHttpClient.ByteDance.TikTokGlobal.UnitTests.csproj" />
    <Project Path="test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests.csproj" />
  </Folder>
</Solution>


================================================
FILE: docs/DouyinOpen/Advanced_Dispose.md
================================================
## 避免内存泄漏

---

本功能来自于公共组件,请参阅公共组件下的相关文档:

> [《SKIT.FlurlHttpClient 高级用法:避免内存泄漏》](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient/blob/main/docs/README.md)

---

### 镜像站点

国内用户如访问 GitHub 网络状况不佳,可在打开上述链接后,手动将浏览器地址栏中的域名部分 **github.com** 替换为 **gitee.com**、剩余路径部分保持不变即可。


================================================
FILE: docs/DouyinOpen/Advanced_HttpClient.md
================================================
## 配置 HttpClient

---

本功能来自于公共组件,请参阅公共组件下的相关文档:

> [《SKIT.FlurlHttpClient 高级用法:配置 HttpClient》](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient/blob/main/docs/README.md)

---

### 镜像站点

国内用户如访问 GitHub 网络状况不佳,可在打开上述链接后,手动将浏览器地址栏中的域名部分 **github.com** 替换为 **gitee.com**、剩余路径部分保持不变即可。


================================================
FILE: docs/DouyinOpen/Advanced_HttpClientFactory.md
================================================
## 与 `IHttpClientFactory` 集成

---

本功能来自于公共组件,请参阅公共组件下的相关文档:

> [《SKIT.FlurlHttpClient 最佳实践:与 `IHttpClientFactory` 集成》](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient/blob/main/docs/README.md)

---

### 镜像站点

国内用户如访问 GitHub 网络状况不佳,可在打开上述链接后,手动将域名部分的 **github.com** 替换为 **gitee.com**、剩余路径部分保持不变,即可访问。


================================================
FILE: docs/DouyinOpen/Advanced_Interceptor.md
================================================
## 使用拦截器

---

本功能来自于公共组件,请参阅公共组件下的相关文档:

> [《SKIT.FlurlHttpClient 高级用法:使用拦截器》](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient/blob/main/docs/README.md)

---

### 内置拦截器

本库内置了一个用于在发出请求时自动生成请求签名的拦截器。

---

### 镜像站点

国内用户如访问 GitHub 网络状况不佳,可在打开上述链接后,手动将浏览器地址栏中的域名部分 **github.com** 替换为 **gitee.com**、剩余路径部分保持不变即可。


================================================
FILE: docs/DouyinOpen/Advanced_JsonSerializer.md
================================================
## 配置 JSON 序列化器

---

本功能来自于公共组件,请参阅公共组件下的相关文档:

> [《SKIT.FlurlHttpClient 高级用法:配置 JSON 序列化器》](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient/blob/main/docs/README.md)

---

### 镜像站点

国内用户如访问 GitHub 网络状况不佳,可在打开上述链接后,手动将浏览器地址栏中的域名部分 **github.com** 替换为 **gitee.com**、剩余路径部分保持不变即可。


================================================
FILE: docs/DouyinOpen/Basic_EventDeserialization.md
================================================
## 如何解析 Webhook 事件?

---

对于抖音开放平台推送过来的 Webhook 事件,本库封装了直接解析成事件模型的扩展方法,下面给出一个示例:

```csharp
/* 以 authorize 事件为例 */
string webhookJson = "{ ... }";
var webhookModel = client.DeserializeEvent<Events.AuthorizeEvent>(webhookJson);
```

完整的 Webhook 模型定义可以参考项目目录下的 _src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events_ 目录。

---

### 事件类型:

由于抖音开放平台会将全部事件推送到同一个 Webhook 地址上,开发者需要根据事件类型才能决定如何反序列化。

这里给出一种解决方案:

```csharp
DouyinOpenEvent eventModel = client.DeserializeEvent(webhookJson);
string eventType = eventModel.Event?.ToLower();

switch (eventType)
{
    case "authorize":
        {
            var webhookModel = client.DeserializeEvent<Events.AuthorizeEvent>(webhookJson);
        }
        break;
    // 省略其他情况
}
```


================================================
FILE: docs/DouyinOpen/Basic_EventSignatureVerification.md
================================================
## 如何验证 Webhook 事件签名?

---

> 请先自行阅读:
>
> [《抖音开放平台开发文档 - Webhooks:概述》](https://open.douyin.com/platform/doc/6850452582826067975)

同样的,你既可以利用本库提供的 `SHA1Utility` 工具类自行进行签名验证,也可以通过扩展方法实现:

```csharp
/* 验证 Webhook 事件签名 */
bool ret = client.VerifyEventSignature(
    webhookJson: "抖音 Webhook 事件中请求正文",
    webhookSignature: "抖音 Webhook 事件中的 X-Douyin-Signature 字段"
);
```


================================================
FILE: docs/DouyinOpen/Basic_Extensions.md
================================================
## 如何自定义额外的 API 接口?

---

如果有某些接口本库尚未支持,你可按照下面的示例自行扩展:

```csharp
/* 继承 DouyinOpenRequest 实现自定义请求类 */
public class MyFakeRequest : DouyinOpenRequest
{
    [Newtonsoft.Json.JsonProperty("my_fake_props")]
    [System.Text.Json.Serialization.JsonPropertyName("my_fake_props")]
    public string MyFakeProps { get; set; }
}

/* 继承 DouyinOpenResponse 实现自定义响应类 */
public class MyFakeResponse : DouyinOpenResponse<MyFakeResponse.Types.Data>
{
    public static class Types
    {
        public class Data : DouyinOpenResponseData
        {
            [Newtonsoft.Json.JsonProperty("my_fake_props")]
            [System.Text.Json.Serialization.JsonPropertyName("my_fake_props")]
            public string MyFakeProps { get; set; }
        }
    }
}

/* 扩展 DouyinOpenClient 方法 */
public static class MyFakeClientExtensions
{
    public static async Task<MyFakeResponse> ExecuteMyFakeAsync(this DouyinOpenClient client, MyFakeRequest request, CancellationToken cancellationToken = default)
    {
        if (client is null) throw new ArgumentNullException(nameof(client));
        if (request is null) throw new ArgumentNullException(nameof(request));

        IFlurlRequest flurlReq = client
            .CreateRequest(request, HttpMethod.Post, "my-fake-url")
            .SetQueryParam("open_id", request.OpenId)
            .SetQueryParam("access_token", request.AccessToken);

        return await client.SendRequestWithJsonAsync<MyFakeResponse>(flurlReq, request, cancellationToken);
    }
}
```

同样的,你也可自行扩展 Webhook 事件模型:

```csharp
/* 继承 DouyinOpenEvent 实现自定义的 Webhook 事件 */
public class MyFakeEvent : DouyinOpenEvent<MyFakeEvent.Types.Content>
{
    public static class Types
    {
        public class Content
        {
            [Newtonsoft.Json.JsonProperty("my_fake_props")]
            [System.Text.Json.Serialization.JsonPropertyName("my_fake_props")]
            public string MyFakeProps { get; set; }
        }
    }
}
```


================================================
FILE: docs/DouyinOpen/Basic_GoodLifeSPIDecryption.md
================================================
## 如何解密抖音生活服务 SPI 接口中的加密字段?

---

> 请先自行阅读:
>
> [《抖音开放平台开发文档 - 生活服务开放能力 - 接入前准备:加密字段解密方法》](https://partner.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/life-service-open-ability/life.capacity/beforeinsert/decrypt)

你可根据官方文档的规则利用本库提供的 `AESUtility` 工具类自行进行数据解密。

此外,本库还封装了直接解密的扩展方法,下面给出一个示例:

```csharp
string rawData = client.DecryptSPICipherField("密文");
```


================================================
FILE: docs/DouyinOpen/Basic_MobileNumberDecryption.md
================================================
## 如何解密用户公开信息中的手机号码?

---

> 请先自行阅读:
>
> [《抖音开放平台开发文档 - 用户管理:手机号解密代码示例》](https://open.douyin.com/platform/doc/6943439913106835470)

你可根据官方文档的规则利用本库提供的 `AESUtility` 工具类自行进行数据解密。

此外,本库还封装了直接解密的扩展方法,下面给出一个示例:

```csharp
string rawMobileNumber = client.DecryptOAuthUserInfoMobileNumber("加密过的手机号");
```


================================================
FILE: docs/DouyinOpen/Basic_ModelDefinition.md
================================================
## 如何快速找到需要调用的 API 模型类名 / 方法名?

---

本库提供的请求模型、响应模型和接口方法,三者均保持同名。

例如,获取粉丝列表的请求是 `FansListRequest`,响应是 `FansListResponse`,接口是 `ExecuteFansListAsync()`。知道其中一个,其余两个就可以快速地推断出了。

再有,每个对象的命名与官方文档的接口地址大体保持一致。例如刚刚提到的获取粉丝列表,它的接口地址是 `[GET] /fans/list`,将其中的反斜杠去掉、并以大驼峰命名法的方式调整它,就可以得到前文提到的几个对象了。如果路由中带有版本信息,那么版本号一般都在结尾处,例如接口 `[POST] /douyin/v1/user/fans_data` 对应的是 `DouyinUserFansDataV1`。此外,部分接口地址会以 `/api/` 开头,在命名中会被省略。

完整的模型定义可以参考项目目录下的 _src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models_ 目录。

---

### 抖音开放平台 API 支持情况:

<details>

<summary>[展开查看]</summary>

|     |          抖音 API           |   备注   |
| :-: | :-------------------------: | :------: |
|  √  |          账号授权           |          |
|  √  |          用户管理           |          |
|  √  |          视频管理           |          |
|  √  |     互动管理:私信管理      |          |
|  √  |     互动管理:群聊管理      |          |
|  √  |     互动管理:经营工具      |          |
|  √  |   互动管理:意向用户管理    |          |
|  √  |     互动管理:评论管理      |          |
|  √  |     互动管理:场景跳转      |          |
|  √  |     互动管理:投稿任务      |          |
|  √  |          搜索管理           |          |
|  √  |   数据开放服务:用户数据    |          |
|  √  |   数据开放服务:视频数据    |          |
|  √  |   数据开放服务:直播数据    |          |
|  √  | 数据开放服务:粉丝画像数据  |          |
|  √  | 数据开放服务:热点视频数据  |          |
|  √  |   数据开放服务:星图数据    |          |
|  √  |   数据开放服务:榜单数据    |          |
|  √  |  企业号开放能力:评论管理   |          |
|  ×  | <del>生活服务开放能力</del> | _开发中_ |
|  √  |     工具能力:素材管理      |          |
|  √  |  工具能力:小程序接口能力   |          |
|  √  |     工具能力:沙盒管理      |          |
|  √  |    工具能力:Ticket 管理    |          |
|  √  |      服务市场开放能力       |          |
|  √  |       小程序推广计划        |          |
|  √  |          联合授权           |          |

</details>


================================================
FILE: docs/DouyinOpen/Basic_Parameters.md
================================================
## 如何生成 JSBridge 初始化时所需的参数及签名?

---

> 请先自行阅读:
>
> [《抖音开放平台开发文档 - 授权:JS 验证签名》](https://open.douyin.com/platform/doc/6850443440044410888)

你可根据官方文档的规则利用本库提供的 `MD5Utility` 工具类自行进行签名生成。

此外,本库还封装了直接生成参数及签名的扩展方法,下面给出一个示例:

```csharp
/* 以生成 sdk.config() 所需参数为例 */
var request = new Models.JSGetTicketRequest()
{
    AccessToken = "抖音开放平台的 AccessToken"
};
var response = await client.ExecuteJSGetTicketAsync(request);
var paramMap = client.GenerateParametersForJSBridgeConfig(response.Data.Ticket, "https://example.com");
```

---

### 【附】生成参数相关扩展方法速查表:

-   生成客户端 JSBridge `sdk.config` 所需的参数字典:`GenerateParametersForJSBridgeConfig`

-   生成抖音获取授权临时票据的 URL:`GenerateParameterizedUrlForPlatformOAuthConnect`


================================================
FILE: docs/DouyinOpen/Migration_V3.md
================================================
## v3.x 迁移指南

v3.x 版本是一个主要版本,其中包括了一些破坏性的变化。从 v2.x 升级到 v3.x 之前,请仔细阅读本文档。

---

### 目标框架和基础库的变更

微软官方已于 2022 年 4 月 26 日宣布中止对 .NET Framework 4.6.1 的支持。因此,本项目的最低运行时要求调整为 .NET Framework 4.6.2。

与此同时,相关的 .NET 基础库(即通常在 `System.*` 或 `Microsoft.*` 命名空间下的内置依赖)版本对齐至 .NET 8.0。

### `Flurl.Http` 的变更

本库所依赖的 `Flurl.Http` 版本已升级至 v4.0.0,并由此带来一些底层的破坏性变化。

通常情况下,开发者不需要关注这些变化,除非你正在自定义额外的 API 接口。

### 新的请求、响应模型

原有的请求模型中的 `Timeout` 属性,变更为 `WithTimeout()` 方法:

```csharp
/* v2.x 设置单个请求超时时间 */
request.Timeout = TimeSpan.FromMinutes(2);

/* v3.x 设置单个请求超时时间 */
request.WithTimeout(TimeSpan.FromMinutes(2));
```

原有的响应模型中的 `RawStatus` 属性,变更为 `GetRawStatus()` 方法;`RawHeaders` 属性,变更为 `GetRawHeaders()` 方法;`RawBytes` 属性,变更为 `GetRawBytes()` 方法:

```csharp
/* v2.x 读取单个响应原始状态码 */
int statusCode = response.RawStatus;
/* v2.x 读取单个响应原始响应标头 */
IDictionary<string, string> headers = response.RawHeaders;
/* v2.x 读取单个响应原始响应体 */
byte[] bytes = response.RawBytes;

/* v3.x 读取单个响应原始状态码 */
int statusCode = response.GetRawStatus();
/* v3.x 读取单个响应原始响应标头 */
HttpHeaderCollection headers = response.GetRawHeaders();
/* v3.x 读取单个响应原始响应体 */
byte[] bytes = response.GetRawBytes();
```

需要注意的是,上述 Get 方法返回的均为同一个对象引用,因此请不要在获取后尝试修改它们的内容。

### 新的构造器模式(配置 `HttpClient`)

随着 `Flurl.Http` 的升级,原有的与 `IHttpClientFactory` 集成的方式发生了根本性的改变。

为了应对这种变化(请参阅本文档[《与 `HttpClientFactory` 集成》](./Advanced_HttpClientFactory.md)这一章节),也为了日后能更加灵活地配置客户端,我们在新版本中提供了构造器模式来构造客户端:

```csharp
var options = new DouyinOpenClientOptions() { /* 具体配置项略 */ };
var client = DouyinOpenClientBuilder.Create(options).Build();
```

当然,原有的实例化方式仍然可用:

```csharp
var options = new DouyinOpenClientOptions() { /* 具体配置项略 */ };
var client = new DouyinOpenClient(options);
```

### 新的异常类型

公共组件中提供了如下的异常类型:

-   `CommonException`:异常基类。
-   `CommonHttpException`:执行 HTTP 请求时引发的异常。
-   `CommonTimeoutException`:超时引发的异常。
-   `CommonSerializationException`:序列化或反序列化时引发的异常。
-   `CommonInterceptorCallException`:拦截器引发的异常。

模块内更加细化的异常信息,统一由 `DouyinOpenException` 异常类型包装,但废弃并移除了其派生的异常类型:

-   `DouyinOpenRequestTimeoutException`
-   `DouyinOpenEventSerializationException`

### 基础类型:`SKIT.FlurlHttpClient.Primitives.EncodedeString`

在进行加解密或哈希等操作时,参与运算的数据和最终得到的结果通常是字节数组(即 `byte[]`)形式。而在实际应用中,我们常常需要将这些字节序列转换成文本格式。我们发现即便是同一种加解密或哈希算法,在不同平台上所需要的编码方式也可能不同。比如同为 SHA256,在某些接口中需要转换为十六进制(HEX)编码传参,而在另一些接口中却需要转换为 Base64 编码传参。

在过往的版本中,我们在不同的模块中针对不同平台的要求提供了单独的封装方法,这使得代码更加分散且不易维护。

为了统一处理并简化这些差异,我们在公共组件中引入了 `EncodedString` 这一类型。`EncodedString` 类型是一个封装结构,它提供了统一的接口来处理不同编码方式的字符串。通过该类型,开发者可以不必关心底层使用的是哪种编码方式,从而使代码更加简洁和清晰。

幸运的是,为了简化升级的难度,`EncodedString` 仍可以与 `String` 类型互相转换:

```csharp
// string → EncodedString
string str = "U0tJVC5GbHVybEh0dHBDbGllbnQgaXMgQVdFU09NRSE=";
EncodedString estr = (EncodedString)str;

// EncodedString → string
EncodedString estr = new EncodedString("U0tJVC5GbHVybEh0dHBDbGllbnQgaXMgQVdFU09NRSE=", EncodingKinds.Base64);
string str = (string)estr;
```

涉及此变化的包括 `AESUtility`、`MD5Utility`、`SHA1Utility`、`SHA256Utility`、`HMACUtility` 等工具类。

### 基础类型:`SKIT.FlurlHttpClient.Primitives.ErroredResult`

在进行数据验签等操作时,由于传入了错误的参数导致抛出异常,通常需要被视为验签失败。

在过往的版本中,我们在相应的方法内部 `try-catch` 捕获所有异常,并直接返回 `false`。然而,这种做法虽然简化了返回值的处理,但却严重限制了开发者错误调试的能力,因为它无法提供关于异常的详细信息。虽然有部分方法提供了带有 `(..., out Exception error)` 引用参数的重载,但却不能在异步方法中所使用。

为了解决这一问题,我们在公共组件中引入了 `ErroredResult` 这一类型。`ErroredResult` 类型是一个封装结构,它不仅可以在逻辑上表示操作的成功与否,而且能够携带发生的异常信息,极大地便利了异常处理和调试过程。

幸运的是,为了简化升级的难度,`ErroredResult` 仍可以与 `Boolean` 类型互相转换:

```csharp
// Boolean → ErroredResult
bool ret = true;
ErroredResult eret = (ErroredResult)ret;

// ErroredResult → Boolean
ErroredResult eret = new ErroredResult(true);
bool ret = (bool)eret;
```

涉及此变化的包括 `VerifyEventSignature()` 等扩展方法。

### 方法命名参数的变化

为了统一并规范化各个模块,我们调整了部分方法的命名参数。如果你在调用该方法时使用了命名实参,请注意修改。

涉及此变化的包括 `DeserializeEvent()`、`VerifyEventSignature()` 等扩展方法,及 `AESUtility`、`MD5Utility`、`SHA1Utility`、`SHA256Utility`、`HMACUtility` 等工具类。


================================================
FILE: docs/DouyinOpen/README.md
================================================
# SKIT.FlurlHttpClient.ByteDance.DouyinOpen

基于 `Flurl.Http` 的[抖音开放平台](https://open.douyin.com/platform) HTTP API SDK。

---

## 功能

-   基于抖音开放平台 API 封装。
-   提供了抖音开放平台 API 所需的 AES、MD5、SHA-1、SHA-256、HMAC-SHA-256 等算法工具类。
-   提供了生成授权链接、生成 JSBridge 签名、解析回调通知事件、解密手机号码等扩展方法。
-   配合 [SKIT.FlurlHttpClient.ByteDance.MicroApp](../MicroApp/README.md) 模块,可无缝对接抖音小程序开放平台。

---

## 快速入门

> [!IMPORTANT]
> 此目录下的文档适用于 v3.x 版本的模块。如果你正在使用 2.x 版本,请移步至 GitHub/Gitee 的已归档分支。

### 安装:

提示:如果你使用 Visual Studio NuGet 管理器图形化界面,请在搜索结果中勾选“**包括预发行版**”。

```shell
# 通过 NuGet 安装
> Install-Package SKIT.FlurlHttpClient.ByteDance.DouyinOpen

# 通过 dotnet-tools 安装
> dotnet add package SKIT.FlurlHttpClient.ByteDance.DouyinOpen
```

### 初始化:

```csharp
using SKIT.FlurlHttpClient.ByteDance.DouyinOpen;

var options = new DouyinOpenClientOptions()
{
    ClientKey = "抖音开放平台应用 Key",
    ClientSecret = "抖音开放平台应用密钥"
};
var client = DouyinOpenClientBuilder.Create(options).Build();
```

### 请求 & 响应:

```csharp
using SKIT.FlurlHttpClient.ByteDance.DouyinOpen;
using SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models;

/* 以获取用户信息接口为例 */
var request = new OAuthUserInfoRequest()
{
    AccessToken = "抖音开放平台的 AccessToken",
    OpenId = "用户唯一标识"
};
var response = await client.ExecuteOAuthUserInfoAsync(request);
if (response.IsSuccessful())
{
    Console.WriteLine("昵称:" + response.Data.Nickname);
    Console.WriteLine("头像:" + response.Data.AvatarUrl);
}
else
{
    Console.WriteLine("错误代码:" + response.Extra?.ErrorCode);
    Console.WriteLine("错误描述:" + response.Extra?.ErrorDescription);
}
```

---

## 基础用法

-   ⭐ [如何快速找到需要调用的 API 模型类名 / 方法名?](./Basic_ModelDefinition.md)

-   [如何解析 Webhook 事件?](./Basic_EventDeserialization.md)

-   [如何验证 Webhook 事件签名?](./Basic_EventSignatureVerification.md)

-   ⭐ [如何生成 JSBridge 初始化时所需的参数及签名?](./Basic_Parameters.md)

-   [如何解密用户公开信息中的手机号码?](./Basic_MobileNumberDecryption.md)

-   [如何解密抖音生活服务 SPI 接口中的加密字段?](./Basic_GoodLifeSPIDecryption.md)

-   [如何自定义额外的 API 接口?](./Basic_Extensions.md)

---

## 高级技巧

-   [配置 JSON 序列化器](./Advanced_JsonSerializer.md)

-   [配置 HttpClient](./Advanced_HttpClient.md)

-   [使用拦截器](./Advanced_Interceptor.md)

-   [避免内存泄漏](./Advanced_Dispose.md)

-   [与 `IHttpClientFactory` 集成](./Advanced_HttpClientFactory.md)

---

## 迁移指南

-   [v3.x 迁移指南](./Migration_V3.md)


================================================
FILE: docs/DouyinShop/README.md
================================================
# SKIT.FlurlHttpClient.ByteDance.DouyinShop

基于 `Flurl.Http` 的[抖店开放平台](https://op.jinritemai.com/) HTTP API SDK。

---

## 公告

抖店开放平台已于 2022-12-05 提供了官方的 .NET SDK([点此传送](https://op.jinritemai.com/docs/guide-docs/1041/1072)),因此本项目将无限期搁置开发。

如果你有二次开发需要,请 Fork 项目后自行维护。


================================================
FILE: docs/MicroApp/Advanced_Dispose.md
================================================
## 避免内存泄漏

---

本功能来自于公共组件,请参阅公共组件下的相关文档:

> [《SKIT.FlurlHttpClient 高级用法:避免内存泄漏》](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient/blob/main/docs/README.md)

---

### 镜像站点

国内用户如访问 GitHub 网络状况不佳,可在打开上述链接后,手动将浏览器地址栏中的域名部分 **github.com** 替换为 **gitee.com**、剩余路径部分保持不变即可。


================================================
FILE: docs/MicroApp/Advanced_HttpClient.md
================================================
## 配置 HttpClient

---

本功能来自于公共组件,请参阅公共组件下的相关文档:

> [《SKIT.FlurlHttpClient 高级用法:配置 HttpClient》](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient/blob/main/docs/README.md)

---

### 镜像站点

国内用户如访问 GitHub 网络状况不佳,可在打开上述链接后,手动将浏览器地址栏中的域名部分 **github.com** 替换为 **gitee.com**、剩余路径部分保持不变即可。


================================================
FILE: docs/MicroApp/Advanced_HttpClientFactory.md
================================================
## 与 `IHttpClientFactory` 集成

---

本功能来自于公共组件,请参阅公共组件下的相关文档:

> [《SKIT.FlurlHttpClient 最佳实践:与 `IHttpClientFactory` 集成》](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient/blob/main/docs/README.md)

---

### 镜像站点

国内用户如访问 GitHub 网络状况不佳,可在打开上述链接后,手动将域名部分的 **github.com** 替换为 **gitee.com**、剩余路径部分保持不变,即可访问。


================================================
FILE: docs/MicroApp/Advanced_Interceptor.md
================================================
## 使用拦截器

---

本功能来自于公共组件,请参阅公共组件下的相关文档:

> [《SKIT.FlurlHttpClient 高级用法:使用拦截器》](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient/blob/main/docs/README.md)

---

### 内置拦截器

本库内置了一个用于在发出请求时自动生成请求签名的拦截器。

---

### 镜像站点

国内用户如访问 GitHub 网络状况不佳,可在打开上述链接后,手动将浏览器地址栏中的域名部分 **github.com** 替换为 **gitee.com**、剩余路径部分保持不变即可。


================================================
FILE: docs/MicroApp/Advanced_JsonSerializer.md
================================================
## 配置 JSON 序列化器

---

本功能来自于公共组件,请参阅公共组件下的相关文档:

> [《SKIT.FlurlHttpClient 高级用法:配置 JSON 序列化器》](https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient/blob/main/docs/README.md)

---

### 镜像站点

国内用户如访问 GitHub 网络状况不佳,可在打开上述链接后,手动将浏览器地址栏中的域名部分 **github.com** 替换为 **gitee.com**、剩余路径部分保持不变即可。


================================================
FILE: docs/MicroApp/Basic_EventDeserialization.md
================================================
## 如何解析回调通知事件?

---

对于抖音小程序推送过来的回调通知事件,本库封装了直接解析成事件模型的扩展方法,下面给出一个示例:

```csharp
/* 如果是 JSON 格式的通知内容,以 text 事件为例 */
string webhookJson = "{ ... }";
var webhookModel = client.DeserializeEventFromJson<Events.TextMessageEvent>(webhookJson);

/* 如果是 XML 格式的通知内容,以 text 事件为例 */
string webhookXml = "<xml> ... </xml>";
var webhookModel = client.DeserializeEventFromXml<Events.TextMessageEvent>(webhookXml);
```

完整的回调通知模型定义可以参考项目目录下的 _src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Events_、_src/SKIT.FlurlHttpClient.ByteDance.Api/ExtendedSDK/OpenApi/Events_、_src/SKIT.FlurlHttpClient.ByteDance.Api/ExtendedSDK/ProductApi/Events_ 目录。

---

### 事件类型:

由于抖音小程序会将全部事件推送到同一个回调通知地址上,开发者需要根据事件类型才能决定如何反序列化。

这里给出两种解决方案。

一种是利用 `System.Xml.Linq`:

```csharp
XDocument xDoc = XDocument.Parse(webhookXml);
string msgType = xDoc.Root?.Element("MsgType")?.Value?.ToUpper();
```

另一种是利用本库的扩展方法:

```csharp
ByteDanceMicroAppEvent eventModel = client.DeserializeEventFromXml(webhookXml);
string msgType = eventModel.MessageType?.ToUpper();

switch (msgType)
{
    case "TEXT":
        {
            var webhookModel = client.DeserializeEventFromXml<Events.TextMessageEvent>(webhookXml);
        }
        break;
    // 省略其他情况
}
```


================================================
FILE: docs/MicroApp/Basic_EventSignatureVerification.md
================================================
## 如何验证回调通知事件签名?

---

> 请先自行阅读:
>
> [《抖音小程序文档 - 消息推送客服:验证消息来自今日头条》](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/component/message-push-customer-service)

同样的,你既可以利用本库提供的 `SHA1Utility` 工具类自行进行签名验证,也可以通过扩展方法实现:

```csharp
/* 在初始化客户端时需指定服务器推送的相关参数 */
var options = new DouyinMicroAppClientOptions()
{
    // 其他配置项略
    PushToken = "服务器推送的 Token"
};
var client = DouyinMicroAppClientBuilder.Create(options).Build();

/* 验证抖音服务器 */
bool ret = client.VerifyEventSignatureForEcho(
    webhookTimestamp: "抖音小程序回调通知中的 timestamp 字段",
    webhookNonce: "抖音小程序回调通知中的 nonce 字段",
    webhookMsg: "抖音回调通知中的 msg 字段",
    webhookSignature: "抖音回调通知中的 signature 字段"
);
```


================================================
FILE: docs/MicroApp/Basic_Extensions.md
================================================
## 如何自定义额外的 API 接口?

---

如果有某些接口本库尚未支持,你可按照下面的示例自行扩展:

```csharp
/* 继承 DouyinMicroAppRequest 实现自定义请求类 */
public class MyFakeRequest : DouyinMicroAppRequest
{
    [Newtonsoft.Json.JsonProperty("my_fake_props")]
    [System.Text.Json.Serialization.JsonPropertyName("my_fake_props")]
    public string MyFakeProps { get; set; }
}

/* 继承 DouyinMicroAppResponse 实现自定义响应类 */
public class MyFakeResponse : DouyinMicroAppResponse
{
    [Newtonsoft.Json.JsonProperty("my_fake_props")]
    [System.Text.Json.Serialization.JsonPropertyName("my_fake_props")]
    public string MyFakeProps { get; set; }
}

/* 扩展 DouyinMicroAppClient 方法 */
public static class MyFakeClientExtensions
{
    public static async Task<MyFakeResponse> ExecuteMyFakeAsync(this DouyinMicroAppClient client, MyFakeRequest request, CancellationToken cancellationToken = default)
    {
        if (client is null) throw new ArgumentNullException(nameof(client));
        if (request is null) throw new ArgumentNullException(nameof(request));

        IFlurlRequest flurlReq = client
            .CreateRequest(request, HttpMethod.Post, "my-fake-url")
            .SetQueryParam("access_token", request.AccessToken);

        return await client.SendRequestWithJsonAsync<MyFakeResponse>(flurlReq, request, cancellationToken);
    }
}
```

同样的,你也可自行扩展回调通知事件模型:

```csharp
/* 继承 DouyinMicroAppEvent 实现自定义的 JSON 格式的回调通知事件 */
public class MyFakeEvent : DouyinMicroAppEvent, DouyinMicroAppEvent.Serialization.IJsonSerializable
{
    [Newtonsoft.Json.JsonProperty("my_fake_props")]
    [System.Text.Json.Serialization.JsonPropertyName("my_fake_props")]
    public string MyFakeProps { get; set; }
}

/* 继承 DouyinMicroAppEvent 实现自定义的 XML 格式的回调通知事件 */
public class MyFakeEvent : DouyinMicroAppEvent, DouyinMicroAppEvent.Serialization.IXmlSerializable
{
    [System.Xml.Serialization.XmlElement("my_fake_props")]
    public string MyFakeProps { get; set; }
}
```


================================================
FILE: docs/MicroApp/Basic_ModelDefinition.md
================================================
## 如何快速找到需要调用的 API 模型类名 / 方法名?

---

本库提供的请求模型、响应模型和接口方法,三者均保持同名。

例如,发送订阅消息的请求是 `AppsMessageCustomSendRequest`,响应是 `AppsMessageCustomSendResponse`,接口是 `ExecuteAppsMessageCustomSendAsync()`。知道其中一个,其余两个就可以快速地推断出了。

再有,每个对象的命名与官方文档的接口地址大体保持一致。例如刚刚提到的发送订阅消息,它的接口地址是 `[POST] /apps/message/custom/send`,将其中的反斜杠去掉、并以大驼峰命名法的方式调整它,就可以得到前文提到的几个对象了。如果路由中带有版本信息,那么版本号一般都在结尾处,例如接口 `[POST] /v2/tags/image` 对应的是 `TagsImageV2`。此外,部分接口地址会以 `/api/` 开头,在命名中会被省略。

完整的模型定义可以参考项目目录下的 _src/SKIT.FlurlHttpClient.ByteDance.Api/Models_、_src/SKIT.FlurlHttpClient.ByteDance.Api/ExtendedSDK/OpenApi/Models_、_src/SKIT.FlurlHttpClient.ByteDance.Api/ExtendedSDK/ProductApi/Models_、_src/SKIT.FlurlHttpClient.ByteDance.Api/ExtendedSDK/RoleApi/Models_、_src/SKIT.FlurlHttpClient.ByteDance.Api/ExtendedSDK/Webcast/Models_ 目录。

---

### 抖音小程序开放平台 API 支持情况:

#### 1. 小程序

<details>

<summary>[展开查看]</summary>

|     |                 抖音 API                  |                备注                |
| :-: | :---------------------------------------: | :--------------------------------: |
|  ×  |            <del>联合授权</del>            | 异构协议,请使用 `DouyinOpen` 模块 |
|  ×  | <del>接口调用凭证:经营能力调用凭证</del> | 异构协议,请使用 `DouyinOpen` 模块 |
|  ×  | <del>接口调用凭证:用户授权调用凭证</del> | 异构协议,请使用 `DouyinOpen` 模块 |
|  √  |     接口调用凭证:非用户授权调用凭证      |                                    |
|  √  |                   登录                    |                                    |
|  √  |           小程序码与小程序链接            |                                    |
|  √  |                Web 化接入                 |                                    |
|  ×  |           <del>私聊和群聊</del>           | 异构协议,请使用 `DouyinOpen` 模块 |
|  ×  |            <del>解决方案</del>            | 异构协议,请使用 `DouyinOpen` 模块 |
|  √  |                 线索组件                  |                                    |
|  √  |                 隐私协议                  |                                    |
|  √  |               直播预约能力                |                                    |
|  √  |                 视频能力                  |                                    |
|  √  |                 搜索能力                  |                                    |
|  √  |                 任务能力                  |                                    |
|  √  |                   电商                    |                                    |
|  ×  |            <del>生活服务</del>            |              _开发中_              |
|  √  |                 短剧行业                  |                                    |
|  √  |                 用户信息                  |                                    |
|  √  |                   分享                    |                                    |
|  √  |                   客服                    |                                    |
|  √  |            交易工具:信用免押             |                                    |
|  √  |            交易工具:周期代扣             |                                    |
|  √  |                 小程序券                  |                                    |
|  √  |          交易系统:通用交易系统           |                                    |
|  ×  |   <del>交易系统:生活服务交易系统</del>   | 异构协议,请使用 `DouyinOpen` 模块 |
|  √  |          交易系统:行业交易系统           |                                    |
|  √  |                  素材库                   |                                    |
|  √  |                 内容安全                  |                                    |
|  √  |             泛知识:角色系统              |                                    |
|  √  |              泛知识:课程库               |                                    |
|  √  |                 担保支付                  |                                    |
|  √  |                   评价                    |                                    |
|  √  |          其他:直播间自定义封面           |                                    |
|  √  |  其他:抖音开放平台与小程序视频打通能力   |                                    |
|  √  |              其他:上传资源               |                                    |
|  √  |                 订阅消息                  |                                    |
|  √  |              小程序推广计划               |                                    |
|  √  |                   挂载                    |                                    |
|  √  |                   分发                    |                                    |
|  √  |                 数据分析                  |                                    |
|  √  |                 服务类目                  |                                    |
|  √  |                直播间能力                 |                                    |
|  √  |               抖音开放能力                |                                    |
|  √  |              页面结构自定义               |                                    |
|  √  |              普通二维码绑定               |                                    |
|  √  |                抖音号绑定                 |                                    |
|  √  |                  流量主                   |                                    |
|  √  |                 抖店绑定                  |                                    |

</details>

#### 2. 小游戏

<details>

<summary>[展开查看]</summary>

|     |   抖音 API   | 备注 |
| :-: | :----------: | :--: |
|  √  | 接口调用凭证 |      |
|  √  |     登录     |      |
|  √  |   数据缓存   |      |
|  √  |    二维码    |      |
|  √  |   订阅消息   |      |
|  √  |   礼包福袋   |      |
|  √  |   内容安全   |      |

</details>

#### 3. 服务商平台

<details>

<summary>[展开查看]</summary>

|     |               抖音 API               |   备注   |
| :-: | :----------------------------------: | :------: |
|  √  |        代开发小程序:上传资源        |          |
|  √  |          代开发小程序:授权          |          |
|  √  |          代开发小程序:域名          |          |
|  √  |        代开发小程序:模板管理        |          |
|  √  |    代开发小程序:代商家管理小程序    |          |
|  √  | 代开发小程序:代商家入驻抖音开放平台 |          |
|  ×  |  <del>代开发生活服务商家应用</del>   | _开发中_ |

</details>

#### 4. 直播小玩法

<details>

<summary>[展开查看]</summary>

|     | 抖音 API | 备注 |
| :-: | :------: | :--: |
|  √  | 直播能力 |      |


================================================
FILE: docs/MicroApp/Migration_V3.md
================================================
## v3.x 迁移指南

v3.x 版本是一个主要版本,其中包括了一些破坏性的变化。从 v2.x 升级到 v3.x 之前,请仔细阅读本文档。

---

### 目标框架和基础库的变更

微软官方已于 2022 年 4 月 26 日宣布中止对 .NET Framework 4.6.1 的支持。因此,本项目的最低运行时要求调整为 .NET Framework 4.6.2。

与此同时,相关的 .NET 基础库(即通常在 `System.*` 或 `Microsoft.*` 命名空间下的内置依赖)版本对齐至 .NET 8.0。

### `Flurl.Http` 的变更

本库所依赖的 `Flurl.Http` 版本已升级至 v4.0.0,并由此带来一些底层的破坏性变化。

通常情况下,开发者不需要关注这些变化,除非你正在自定义额外的 API 接口。

### 新的请求、响应模型

原有的请求模型中的 `Timeout` 属性,变更为 `WithTimeout()` 方法:

```csharp
/* v2.x 设置单个请求超时时间 */
request.Timeout = TimeSpan.FromMinutes(2);

/* v3.x 设置单个请求超时时间 */
request.WithTimeout(TimeSpan.FromMinutes(2));
```

原有的响应模型中的 `RawStatus` 属性,变更为 `GetRawStatus()` 方法;`RawHeaders` 属性,变更为 `GetRawHeaders()` 方法;`RawBytes` 属性,变更为 `GetRawBytes()` 方法:

```csharp
/* v2.x 读取单个响应原始状态码 */
int statusCode = response.RawStatus;
/* v2.x 读取单个响应原始响应标头 */
IDictionary<string, string> headers = response.RawHeaders;
/* v2.x 读取单个响应原始响应体 */
byte[] bytes = response.RawBytes;

/* v3.x 读取单个响应原始状态码 */
int statusCode = response.GetRawStatus();
/* v3.x 读取单个响应原始响应标头 */
HttpHeaderCollection headers = response.GetRawHeaders();
/* v3.x 读取单个响应原始响应体 */
byte[] bytes = response.GetRawBytes();
```

需要注意的是,上述 Get 方法返回的均为同一个对象引用,因此请不要在获取后尝试修改它们的内容。

### 新的构造器模式(配置 `HttpClient`)

随着 `Flurl.Http` 的升级,原有的与 `IHttpClientFactory` 集成的方式发生了根本性的改变。

为了应对这种变化(请参阅本文档[《与 `HttpClientFactory` 集成》](./Advanced_HttpClientFactory.md)这一章节),也为了日后能更加灵活地配置客户端,我们在新版本中提供了构造器模式来构造客户端:

```csharp
var options = new DouyinMicroAppClientOptions() { /* 具体配置项略 */ };
var client = DouyinMicroAppClientBuilder.Create(options).Build();
```

当然,原有的实例化方式仍然可用:

```csharp
var options = new DouyinMicroAppClientOptions() { /* 具体配置项略 */ };
var client = new DouyinMicroAppClient(options);
```

### 新的客户端和入口点

原 `ByteDanceMicroAppClient` 更名为 `DouyinMicroAppClient`。其余相关类型的重命名略。

由于抖音官方增加了一批使用非用户授权调用凭证(即 `ClientToken`)的接口,并与原来的使用用户授权调用凭证(即 `AccessToken`)的接口有了显著区别。我们为此重新抽象了新、旧两种的接口模型。请注意新的 `DouyinMicroAppClient` 客户端配置项中的新、旧版入口点的独立设置。

在未来的版本更新中,我们将与抖音官方保持同步,逐步废弃旧版接口模型,直至最终彻底移除旧版入口点。

### 新的异常类型

公共组件中提供了如下的异常类型:

-   `CommonException`:异常基类。
-   `CommonHttpException`:执行 HTTP 请求时引发的异常。
-   `CommonTimeoutException`:超时引发的异常。
-   `CommonSerializationException`:序列化或反序列化时引发的异常。
-   `CommonInterceptorCallException`:拦截器引发的异常。

模块内更加细化的异常信息,统一由 `DouyinMicroAppException`(即原 `ByteDanceMicroAppException`)异常类型包装,但废弃并移除了其派生的异常类型:

-   `ByteDanceMicroAppRequestTimeoutException`
-   `ByteDanceMicroAppEventSerializationException`

### 基础类型:`SKIT.FlurlHttpClient.Primitives.EncodedeString`

在进行加解密或哈希等操作时,参与运算的数据和最终得到的结果通常是字节数组(即 `byte[]`)形式。而在实际应用中,我们常常需要将这些字节序列转换成文本格式。我们发现即便是同一种加解密或哈希算法,在不同平台上所需要的编码方式也可能不同。比如同为 SHA256,在某些接口中需要转换为十六进制(HEX)编码传参,而在另一些接口中却需要转换为 Base64 编码传参。

在过往的版本中,我们在不同的模块中针对不同平台的要求提供了单独的封装方法,这使得代码更加分散且不易维护。

为了统一处理并简化这些差异,我们在公共组件中引入了 `EncodedString` 这一类型。`EncodedString` 类型是一个封装结构,它提供了统一的接口来处理不同编码方式的字符串。通过该类型,开发者可以不必关心底层使用的是哪种编码方式,从而使代码更加简洁和清晰。

幸运的是,为了简化升级的难度,`EncodedString` 仍可以与 `String` 类型互相转换:

```csharp
// string → EncodedString
string str = "U0tJVC5GbHVybEh0dHBDbGllbnQgaXMgQVdFU09NRSE=";
EncodedString estr = (EncodedString)str;

// EncodedString → string
EncodedString estr = new EncodedString("U0tJVC5GbHVybEh0dHBDbGllbnQgaXMgQVdFU09NRSE=", EncodingKinds.Base64);
string str = (string)estr;
```

涉及此变化的包括 `AESUtility`、`MD5Utility`、`SHA1Utility`、`HMACUtility` 等工具类。

### 基础类型:`SKIT.FlurlHttpClient.Primitives.ErroredResult`

在进行数据验签等操作时,由于传入了错误的参数导致抛出异常,通常需要被视为验签失败。

在过往的版本中,我们在相应的方法内部 `try-catch` 捕获所有异常,并直接返回 `false`。然而,这种做法虽然简化了返回值的处理,但却严重限制了开发者错误调试的能力,因为它无法提供关于异常的详细信息。虽然有部分方法提供了带有 `(..., out Exception error)` 引用参数的重载,但却不能在异步方法中所使用。

为了解决这一问题,我们在公共组件中引入了 `ErroredResult` 这一类型。`ErroredResult` 类型是一个封装结构,它不仅可以在逻辑上表示操作的成功与否,而且能够携带发生的异常信息,极大地便利了异常处理和调试过程。

幸运的是,为了简化升级的难度,`ErroredResult` 仍可以与 `Boolean` 类型互相转换:

```csharp
// Boolean → ErroredResult
bool ret = true;
ErroredResult eret = (ErroredResult)ret;

// ErroredResult → Boolean
ErroredResult eret = new ErroredResult(true);
bool ret = (bool)eret;
```

涉及此变化的包括 `VerifyEventSignatureForEcho()`、`VerifyEventSignatureFromJson()`、`VerifyEventSignatureFromXml()` 等扩展方法。

### 服务商平台、泛知识 SDK 的变化

原服务商平台 SDK 客户端的命名空间发生了变化,由 `SKIT.FlurlHttpClient.ByteDance.MicroApp.SDK.OpenApi` 移动至 `SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi`。

原泛知识课程库 SDK 客户端的命名空间发生了变化,由 `SKIT.FlurlHttpClient.ByteDance.MicroApp.SDK.ProductApi` 移动至 `SKIT.FlurlHttpClient.Wechat.Work.ExtendedSDK.ProductApi`。

原泛知识角色系统 SDK 客户端的命名空间发生了变化,由 `SKIT.FlurlHttpClient.ByteDance.MicroApp.SDK.RoleApi` 移动至 `SKIT.FlurlHttpClient.Wechat.Work.ExtendedSDK.RoleApi`。

同时,我们提供了新的直播小玩法 SDK,位于 `SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast` 命名空间。

### 方法命名参数的变化

为了统一并规范化各个模块,我们调整了部分方法的命名参数。如果你在调用该方法时使用了命名实参,请注意修改。

涉及此变化的包括 `DeserializeEventFromJson()`、`DeserializeEventFromXml()`、`VerifyEventSignatureForEcho()`、`VerifyEventSignatureFromJson()`、`VerifyEventSignatureFromXml()` 等扩展方法,及 `AESUtility`、`MD5Utility`、`SHA1Utility`、`HMACUtility` 等工具类。


================================================
FILE: docs/MicroApp/README.md
================================================
# SKIT.FlurlHttpClient.ByteDance.MicroApp

基于 `Flurl.Http` 的[抖音小程序开放平台](https://microapp.bytedance.com/) HTTP API SDK。

本模块仅支持抖音小程序专属的 API,如需接入与抖音开放平台共享的 API,请移步 [`SKIT.FlurlHttpClient.ByteDance.DouyinOpen`](../DouyinOpen/README.md) 模块。

---

## 功能

-   基于抖音小程序开放平台 API 封装。
-   提供了抖音小程序所需的 RSA、AES、MD5、SHA-1、HMAC-SHA-256 等算法工具类。
-   提供了解析回调通知事件等扩展方法。
-   配合 [SKIT.FlurlHttpClient.ByteDance.DouyinOpen](../DouyinOpen/README.md) 模块,可无缝对接抖音开放平台。

---

## 快速入门

> [!IMPORTANT]
> 此目录下的文档适用于 v3.x 版本的模块。如果你正在使用 2.x 版本,请移步至 GitHub/Gitee 的已归档分支。

### 安装:

提示:如果你使用 Visual Studio NuGet 管理器图形化界面,请在搜索结果中勾选“**包括预发行版**”。

```shell
# 通过 NuGet 安装
> Install-Package SKIT.FlurlHttpClient.ByteDance.MicroApp

# 通过 dotnet-tools 安装
> dotnet add package SKIT.FlurlHttpClient.ByteDance.MicroApp
```

### 初始化:

```csharp
using SKIT.FlurlHttpClient.ByteDance.MicroApp;

var options = new DouyinMicroAppClientOptions()
{
    AppId = "抖音小程序 AppId",
    AppSecret = "抖音小程序 AppSecret",
    AppKeyVersion = "应用密钥版本号,用于交易系统等需要请求签名的 API,不用则不填",
    AppPrivateKey = "应用密钥私钥,用于交易系统等需要请求签名的 API,不用则不填",
    ECPaySalt = "担保支付相关服务的密钥,不用则不填"
};
var client = DouyinMicroAppClientBuilder.Create(options).Build();
```

### 请求 & 响应:

```csharp
using SKIT.FlurlHttpClient.ByteDance.MicroApp;
using SKIT.FlurlHttpClient.ByteDance.MicroApp.Models;

/* 以获取用户授权登录凭证接口为例 */
var request = new AppsJsCode2SessionRequest()
{
    Code = "登录 Code,与匿名 Code 二选一",
    AnoymousCode = "匿名 Code,与登录 Code 二选一"
};
var response = await client.ExecuteAppsJsCode2SessionAsync(request);
if (response.IsSuccessful())
{
    Console.WriteLine("会话密钥:" + response.SessionKey);
    Console.WriteLine("用户 OpenId:" + response.OpenId);
    Console.WriteLine("匿名 OpenId:" + response.AnonymousOpenId);
}
else
{
    Console.WriteLine("错误代码:" + response.ErrorNumber);
    Console.WriteLine("错误描述:" + response.ErrorTips);
}
```

### 独立的扩展客户端(服务商平台、泛知识课程库、泛知识角色系统、直播小玩法等):

部分 API 的接入点、接口模型公共参数等配置项与基础 API 完全不同,需要使用独立的扩展客户端。

-   服务商平台:

```csharp
using SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi;

var options = new DouyinMicroAppOpenApiClientOptions()
{
    ComponentAppId = "第三方应用 AppId",
    ComponentAppSecret = "第三方应用 AppSecret"
};
var client = DouyinMicroAppOpenApiClientBuilder.Create(options).Build();
```

-   泛知识课程库:

```csharp
using SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi;

var options = new DouyinMicroAppProductApiClientOptions()
{
    AppId = "抖音小程序 AppId",
    AppSecret = "抖音小程序 AppSecret"
};
var client = DouyinMicroAppProductApiClientBuilder.Create(options).Build();
```

-   泛知识角色系统:

```csharp
using SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi;

var options = new DouyinMicroAppRoleApiClientOptions()
{
    AppId = "抖音小程序 AppId",
    AppSecret = "抖音小程序 AppSecret"
};
var client = DouyinMicroAppRoleApiClientBuilder.Create(options).Build();
```

-   直播小玩法:

```csharp
using SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast;

var options = new DouyinMicroAppWebcastClientOptions()
{
    AppId = "抖音小程序 AppId",
    AppSecret = "抖音小程序 AppSecret",
    AppKeyVersion = "应用密钥版本号",
    AppPrivateKey = "应用密钥私钥",
    PlatformPublicKey = "平台密钥公钥"
};
var client = DouyinMicroAppWebcastClientBuilder.Create(options).Build();
```

这些扩展客户端在用法上基础客户端完全相同,只需引入各自的命名空间即可。

---

## 基础用法

-   ⭐ [如何快速找到需要调用的 API 模型类名 / 方法名?](./Basic_ModelDefinition.md)

-   [如何解析回调通知事件?](./Basic_EventDeserialization.md)

-   [如何验证回调通知事件签名?](./Basic_EventSignatureVerification.md)

-   [如何自定义额外的 API 接口?](./Basic_Extensions.md)

---

## 高级技巧

-   [配置 JSON 序列化器](./Advanced_JsonSerializer.md)

-   [配置 HttpClient](./Advanced_HttpClient.md)

-   [使用拦截器](./Advanced_Interceptor.md)

-   [避免内存泄漏](./Advanced_Dispose.md)

-   [与 `IHttpClientFactory` 集成](./Advanced_HttpClientFactory.md)

---

## 迁移指南

-   [v3.x 迁移指南](./Migration_V3.md)


================================================
FILE: docs/TikTokGlobal/Basic_ModelDefinition.md
================================================
## API Reference Manual

Naming Policies:

-   Request Models: _`${API}`_ + `Request`
-   Response Models: _`${API}`_ + `Response`
-   API Methods: `Execute` + _`${API}`_ + `Async`

---

### APIs

<details>

<summary>[View Details]</summary>

-   Manage User Access Tokens
    -   Fetch an Access Token Using an Authorization Aode: `OAuthAccessToken`
    -   Refresh an Access Token Using a Refresh Token: `OAuthRefreshToken`
    -   Revoke Access: `OAuthRevokeToken`
-   QR Code Authorization
    -   Get QR Code: `OAuthGetQrcode`
    -   Check QR Code Status: `OAuthCheckQrcode`
-   Content Posting
    -   Video - Direct Post
        -   Initialize the Posting Pequest: `PostPublishVideoInit`
        -   Send Video to TikTok Servers: `PostUploadVideo`
    -   Video - Upload
        -   Initialize Video Upload: `PostPublishInboxVideoInit`
        -   Send Video to TikTok Servers: `PostUploadVideo`
    -   Photo - Direct Post
        -   Initialize the Posting Pequest: `PostPublishContentInit`
    -   Query Creator Info: `PostPublishCreatorInfoQuery`
    -   Get Post Status: `PostPublishStatusFetch`
-   Data Portability
    -   Add Data Request: `UserDataAdd`
    -   Cancel Data Request: `UserDataCancel`
    -   Check Status of Data Request: `UserDataCheck`
    -   Download: `UserDataDownload`
-   Display
    -   Get User Info: `UserInfo`
    -   Query Videos: `VideoQuery`
    -   List Videos: `VideoList`
-   Research
    -   Query Videos: `ResearchVideoQuery`
    -   Query User Info: `ResearchUserInfo`
    -   Query Video Comments: `ResearchVideoCommentList`
    -   Query User Liked Videos: `ResearchUserLikedVideos`
    -   Query User Pinned Videos: `ResearchUserPinnedVideos`
    -   Query User Followers: `ResearchUserFollowers`
    -   Query User Following: `ResearchUserFollowing`
    -   Query User Reposted Videos: `ResearchUserRepostedVideos`
    -   Query Playlists: `ResearchPlaylistInfo`
-   Commercial Content
    -   Query Ads: `ResearchAdlibAdQuery`
    -   Query Advertisers: `ResearchAdlibAdvertiserQuery`
    -   Get Ad Details: `ResearchAdlibAdDetail`
    -   Get Ad Report: `ResearchAdlibAdReport`
    -   Query Commercial Content: `ResearchAdlibCommercialContentQuery`

</details>


================================================
FILE: docs/TikTokGlobal/README.md
================================================
# SKIT.FlurlHttpClient.ByteDance.TikTokGlobal

A HTTP API SDK for [TikTok Developer API](https://developers.tiktok.com/) based on `Flurl.Http`.

---

## Features

-   Based on TikTok Developer API.

---

## Get Started

> [!IMPORTANT]
> The documents are applicable to version 3.x of this SDK. If you are using version 2.x, please move to the archived branches on GitHub/Gitee.

### Installation:

```shell
# Install by NuGet
> Install-Package SKIT.FlurlHttpClient.ByteDance.TikTokGlobal

# Install by .NET CLI
> dotnet add package SKIT.FlurlHttpClient.ByteDance.TikTokGlobal
```

### Initialization:

```csharp
using SKIT.FlurlHttpClient.ByteDance.TikTokGlobal;

var options = new TikTokV2ClientOptions()
{
    ClientKey = "${CLIENT_KEY}",
    ClientSecret = "${CLIENT_SECRET}}"
};
var client = TikTokV2ClientBuilder.Create(options).Build();
```

### Requests & Responses:

```csharp
using SKIT.FlurlHttpClient.ByteDance.TikTokGlobal;
using SKIT.FlurlHttpClient.ByteDance.TikTokGlobal.Models;

/* Example: Fetch Access Token Using Authorization Code */
var request = new OAuthAccessTokenRequest()
{
    Code = "AUTHORIZATION_CODE"
};
var response = await client.ExecuteOAuthAccessTokenAsync(request);
if (response.IsSuccessful())
{
    Console.WriteLine("AccessToken: " + response.Data.AccessToken);
    Console.WriteLine("OpenId: " + response.Data.OpenId);
}
else
{
    Console.WriteLine("Error: " + response.ErrorCode);
    Console.WriteLine("ErrorDescription: " + response.ErrorDescription);
}
```

---

## Basic Usage

-   [API Reference Manual](./Basic_ModelDefinition.md)


================================================
FILE: docs/TikTokGlobalShop/Basic_LegacyAPI.md
================================================
## Legacy API (pre-v202309)

Legacy API versions (pre-v202309) will no longer be supported or maintained from 2024-06-30 and will be retired on 2024-12-31.

New apps should use v202309 exclusively and not legacy versions.

Since version v3.1.0 in this SDK, we have isolated the legacy versions API. If you are still using them, please follow below:

```csharp
using SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.ExtendedSDK.Legacy;

var options = new TikTokShopLegacyClientOptions()
{
    AppKey = "${APP_KEY}",
    AppSecret = "${APP_SECRET}}"
};
var client = TikTokShopLegacyClientBuilder.Create(options).Build();
```

---

### APIs

<details>

<summary>[View Details]</summary>

-   Authorization
    -   Get Access Token: `AuthGetToken`
    -   Refresh Access Token: `AuthRefreshToken`
-   Shop
    -   Get Authorized Shop: `ShopGetAuthorizedShopList`
-   Seller
    -   Get Active Shop List: `SellerGetGlobalActiveShopList`
    -   Check Global Product Mode: `SellerCheckGlobalProductMode`
-   Product
    -   Upload File: `ProductUploadFile`
    -   Upload Image: `ProductUploadImage`
    -   Create Product: `ProductCreateProduct`
    -   Delete Product: `ProductDeleteProducts`
    -   Edit Product: `ProductUpdateProduct`
    -   Update Stock: `ProductUpdateProductStock`
    -   Get Product List: `ProductSearchProducts`
    -   Get Product Detail: `ProductGetProductDetail`
    -   Get Product Stock: `ProductGetProductStocks`
    -   Deactivate Product: `ProductDeactivateProducts`
    -   Activate Product: `ProductActivateProducts`
    -   Recover Deleted Product: `ProductRecoverProducts`
    -   Update Price: `ProductUpdateProductPrice`
    -   Get Categories: `ProductGetCategoryList`
    -   Get Brands: `ProductGetBrandList`
    -   Create Brand: `ProductCreateBrand`
    -   Get Attributes: `ProductGetAttributeList`
    -   Get Category Rule: `ProductGetCategoryRules`
    -   Category Recommended: `ProductRecommendCategory`
    -   Pre-check for Operating Product: `ProductPrecheck`
-   Order
    -   Get Order Detail: `OrderGetOrderDetail`
    -   Get Order List: `OrderSearchOrders`
    -   Ship Order: `OrderShipOrder`
-   Fulfillment
    -   Verify Order Split: `FulfillmentVerifyOrderSplit`
    -   Confirm Order Split: `FulfillmentConfirmOrderSplit`
    -   Search Pre Combine Package: `FulfillmentSearchPreCombinePackages`
    -   Get Package Shipping Document: `FulfillmentGetShippingDocument`
    -   Update Package Shipping Info: `FulfillmentUpdateShippingInfo`
    -   Get Package Shipping Info: `FulfillmentGetShippingInfo`
    -   Search Package: `FulfillmentSearchPackages`
    -   Ship Package: `FulfillmentShipPackage`
    -   Get Package Pickup Config: `FulfillmentGetPackagePickupConfigList`
    -   Remove Package Order: `FulfillmentRemovePackageOrders`
    -   Confirm Precombine Package: `FulfillmentConfirmPreCombinePackage`
    -   Get Package Detail: `FulfillmentGetPackageDetail`
    -   Fulfillment Upload Image: `FulfillmentUploadImage`
    -   Update Package Delivery Status: `FulfillmentUpdatePackageDeliveryStatus`
    -   Fulfillment Upload File: `FulfillmentUploadFile`
    -   Batch Ship Packages: `FulfillmentBatchShipPackage`
    -   Get Shipping Service: `FulfillmentGetShippingService`
    -   Create Label: `FulfillmentCreateLabel`
-   Logistics
    -   Get Subscribed Delivery Options: `LogisticsGetSubscribedDeliveryOptions`
    -   Update Shipping Info: `LogisticsUpdateShippingInfo`
    -   Get Shipping Document: `LogisticsGetShippingDocument`
    -   Get Shipping Provider: `LogisticsGetShippingProviderList`
    -   Get Shipping Info: `LogisticsGetShippingInfo`
    -   Get Warehouse List: `LogisticsGetWarehouseList`
-   Reverse
    -   Reject Reverse Request: `ReverseRejectReverseRequest`
    -   Get Reverse Order List: `ReverseSearchReverseOrders`
    -   Confirm Reverse Request: `ReverseConfirmReverseRequest`
    -   Cancel Order: `ReverseCancelOrder`
    -   Get Reject Reason List: `ReverseGetRejectReasonList`
-   Finance
    -   Get Settlements: `FinanceSearchSettlements`
    -   Get Transactions: `FinanceSearchTransactions`
    -   Get Order Settlements: `FinanceGetOrderSettlementList`
-   Global Product
    -   Create Global Product: `GlobalProductCreateProduct`
    -   Get Global Product List: `GlobalProductSearchProducts`
    -   Get Global Product Detail: `GlobalProductGetProductDetail`
    -   Publish Global Product: `GlobalProductPublishProduct`
    -   Update Global Product Price: `GlobalProductUpdateProductPrice`
    -   Get Global Categories: `GlobalProductGetCategoryList`
    -   Edit Global Product: `GlobalProductUpdateProduct`
    -   Get Global Attributes: `GlobalProductGetAttributeList`
    -   Get Global Category Rule: `GlobalProductGetCategoryRules`
    -   Delete Global Product: `GlobalProductDeleteProducts`
-   Promotion
    -   Update Basic Information: `PromotionUpdateActivity`
    -   Get Promotion List: `PromotionSearchActivities`
    -   Deactivate Promotion: `PromotionDeactivateActivity`
    -   Remove Promotion Item: `PromotionRemoveActivityItems`
    -   Get Promotion Details: `PromotionGetActivityDetail`
    -   Add/Update Discount Item: `PromotionAddOrUpdateActivityItems`
    -   Add Promotion: `PromotionCreateActivity`
-   Supply Chain
    -   Package Fulfillment Data Sync: `SupplyChainSyncPackageFulfillmentData`

</details>


================================================
FILE: docs/TikTokGlobalShop/Basic_ModelDefinition.md
================================================
## API Reference Manual

Naming Policies:

-   Request Models: _`${API}`_ + `Request`
-   Response Models: _`${API}`_ + `Response`
-   API Methods: `Execute` + _`${API}`_ + `Async`

---

### APIs

Notes: The following catalog is consistent with the catalog structure of [TikTokShop Partner Center API Reference](https://partner.tiktokshop.com/docv2/page/6632a7434585a502e1cb5591).

<details>

<summary>[View Details]</summary>

-   Authentication
    -   Get Access Token: `AuthGetToken`
    -   Refresh Access Token: `AuthRefreshToken`
-   Authorization
    -   Get Authorized Category Assets: `AuthorizationGetCategoryAssets`
    -   Get Authorized Shops: `AuthorizationGetShops`
-   Event
    -   Get Shop Webhooks: `EventGetWebhooks`
    -   Update Shop Webhook: `EventUpdateWebhook`
    -   Delete Shop Webhook: `EventDeleteWebhook`
-   Seller
    -   Get Seller Permissions: `SellerGetPermissions`
    -   Get Active Shops: `SellerGetShops`
-   Products
    -   Check Listing Prerequisites: `ProductGetPrerequisites`
    -   Get Categories: `ProductGetCategories`
    -   Recommend Categories: `ProductRecommendCategories`
    -   Get Category Rules: `ProductGetCategoryRules`
    -   Get Attributes: `ProductGetCategoryAttributes`
    -   Get Brands: `ProductGetBrands`
    -   Create Custom Brands: `ProductCreateBrand`
    -   Check Product Listing: `ProductCreateProductListingCheck`
    -   Upload Product Image: `ProductUploadImage`
    -   Upload Product File: `ProductUploadFile`
    -   Search Size Charts: `ProductSearchSizeCharts`
    -   Create Product: `ProductCreateProduct`
    -   Partial Edit Product: `ProductUpdateProductPartially`
    -   Edit Product: `ProductUpdateProduct`
    -   Activate Products: `ProductActivateProducts`
    -   Deactivate Products: `ProductDeactivateProducts`
    -   Delete Products: `ProductDeleteProducts`
    -   Recover Products: `ProductRecoverProducts`
    -   Get Product: `ProductGetProductDetail`
    -   Search Products: `ProductSearchProducts`
    -   Update Price: `ProductUpdateProductPrice`
    -   Update Inventory: `ProductUpdateProductInventory`
    -   Inventory Search: `ProductGetInventories`
    -   Product Information Issue Diagnosis: `ProductGetProductDiagnoses`
    -   Get Products SEO Words: `ProductGetProductSEOWords`
    -   Get Recommended Product Title And Description: `ProductGetProductSuggestions`
    -   Optimized Images: `ProductOptimizeImages`
    -   Get Global Categories: `ProductGetGlobalCategories`
    -   Recommend Global Categories: `ProductRecommendGlobalCategories`
    -   Get Global Category Rules: `ProductGetGlobalCategoryRules`
    -   Get Global Attributes: `ProductGetGlobalCategoryAttributes`
    -   Create Global Product: `ProductCreateGlobalProduct`
    -   Publish Global Product: `ProductPublishGlobalProduct`
    -   Edit Global Product: `ProductUpdateGlobalProduct`
    -   Delete Global Products: `ProductDeleteGlobalProducts`
    -   Get Global Product: `ProductGetGlobalProductDetail`
    -   Search Global Products: `ProductSearchGlobalProducts`
    -   Update Global Inventory: `ProductUpdateGlobalProductInventory`
    -   Create Manufacturer: `ProductCreateComplianceManufacturer`
    -   Partial Edit Manufacturer: `ProductUpdateComplianceManufacturerPartially`
    -   Search Manufacturers: `ProductSearchComplianceManufacturers`
    -   Create Responsible Person: `ProductCreateComplianceResponsiblePerson`
    -   Partial Edit Responsible Person: `ProductUpdateComplianceResponsiblePersonPartially`
    -   Search Responsible Persons: `ProductSearchComplianceResponsiblePersons`
    -   Create Category Upgrade Task: `ProductCreateProductCategoryUpgradeTask`
    -   Listing Schemas: `ProductGetListingSchemas`
-   Promotion
    -   Create Activity: `PromotionCreateActivity`
    -   Update Activity: `PromotionUpdateActivity`
    -   Deactivate Activity: `PromotionDeactivateActivity`
    -   Get Activity: `PromotionGetActivityDetail`
    -   Search Activities: `PromotionSearchActivities`
    -   Update Activity Product: `PromotionUpdateActivityProducts`
    -   Remove Activity Product: `PromotionDeleteActivityProducts`
    -   Get Coupon: `PromotionGetCouponDetail`
    -   Search Coupons: `PromotionSearchCoupons`
-   Orders
    -   Get Order List: `OrderSearchOrders`
    -   Get Order Detail: `OrderBatchGetOrderDetail`
    -   Get Price Detail: `OrderGetOrderPriceDetail`
    -   Add External Order References: `OrderCreateExternalOrder`
    -   Get External Order References: `OrderGetExternalOrders`
    -   Search Order By External Order Reference: `OrderSearchExternalOrders`
-   Fulfillment
    -   Get Order Split Attributes: `FulfillmentGetOrderSplitAttributes`
    -   Split Orders: `FulfillmentSplitOrder`
    -   Get Eligible Shipping Service: `FulfillmentSearchOrderShippingServices`
    -   Create First Mile Bundle: `FulfillmentCreateBundle`
    -   Create Packages: `FulfillmentCreatePackage`
    -   Search Package: `FulfillmentSearchPackages`
    -   Search Combinable Packages: `FulfillmentSearchCombinablePackages`
    -   Combine Package: `FulfillmentCombinePackage`
    -   Uncombine Packages: `FulfillmentUncombinePackage`
    -   Get Package Handover Time Slots: `FulfillmentGetPackageHandoverTimeSlots`
    -   Ship Package: `FulfillmentShipPackage`
    -   Batch Ship Packages: `FulfillmentBatchShipPackages`
    -   Mark Package As Shipped: `FulfillmentUpdateOrderPackages`
    -   Get Package Shipping Document: `FulfillmentGetPackageShippingDocuments`
    -   Get Package Detail: `FulfillmentGetPackageDetail`
    -   Get Tracking: `FulfillmentGetOrderTracking`
    -   Update Shipping Info: `FulfillmentUpdateOrderShippingInfo`
    -   Update Package Shipping Info: `FulfillmentUpdatePackageShippingInfo`
    -   Fulfillment Upload Delivery File: `FulfillmentUploadFile`
    -   Fulfillment Upload Delivery Image: `FulfillmentUploadImage`
    -   Update Package Delivery Status: `FulfillmentBatchUpdatePackagesDeliveryStatus`
-   Fulfillment By TikTok (FBT)
    -   Get FBT Merchant Onboarded Regions: `FBTGetMerchantOnboardedRegions`
    -   Get FBT Warehouse List: `FBTGetWarehouses`
    -   Get Inbound Order: `FBTGetInboundOrders`
    -   Search FBT Inventory: `FBTGetInventories`
    -   Search FBT Inventory Record: `FBTGetInventoryRecords`
    -   Search Goods Info: `FBTGetGoods`
-   Logistics
    -   Get Warehouse List: `LogisticsGetWarehouses`
    -   Get Global Seller Warehouse: `LogisticsGetGlobalWarehouses`
    -   Get Warehouse Delivery Options: `LogisticsGetWarehouseDeliveryOptions`
    -   Get Shipping Providers: `LogisticsGetDeliveryOptionShippingProviders`
-   Return and Refund
    -   Get Aftersale Eligibility: `ReturnRefundGetOrderAftersaleEligibility`
    -   Get Reject Reasons: `ReturnRefundGetRejectReasons`
    -   Create Return: `ReturnRefundCreateReturn`
    -   Approve Return: `ReturnRefundApproveReturn`
    -   Reject Return: `ReturnRefundRejectReturn`
    -   Search Returns: `ReturnRefundSearchReturns`
    -   Get Return Records: `ReturnRefundGetReturnRecords`
    -   Cancel Order: `ReturnRefundCreateCancellation`
    -   Approve Cancellation: `ReturnRefundApproveCancellation`
    -   Reject Cancellation: `ReturnRefundRejectCancellation`
    -   Search Cancellations: `ReturnRefundSearchCancellations`
    -   Calculate Refund: `ReturnRefundCalculateRefund`
-   Finance
    -   Get Statements: `FinanceGetStatements`
    -   Get Statement Transactions: `FinanceGetStatementTransactions`
    -   Get Order Statement Transactions: `FinanceGetOrderStatementTransactions`
    -   Get Payments: `FinanceGetPayments`
    -   Get Withdrawals: `FinanceGetWithdrawals`
-   Customer Service
    -   Create Conversation: `CustomerServiceCreateConversation`
    -   Get Conversations: `CustomerServiceGetConversations`
    -   Get Conversation Messages: `CustomerServiceGetConversationMessages`
    -   Upload Buyer Messages Image: `CustomerServiceUploadImage`
    -   Send Message: `CustomerServiceCreateConversationMessage`
    -   Read Message: `CustomerServiceReadConversationMessage`
    -   Get Agent Settings: `CustomerServiceGetAgentSettings`
    -   Update Agent Settings: `CustomerServiceUpdateAgentSettings`
    -   Get Customer Service Performance: `CustomerServiceGetPerformance`
-   Supply Chain
    -   Confirm Package Shipment: `SupplyChainSyncPackages`

</details>


================================================
FILE: docs/TikTokGlobalShop/README.md
================================================
# SKIT.FlurlHttpClient.ByteDance.TikTokGlobal

A HTTP API SDK for [TikTok Shop Open Platform](https://partner.tiktokshop.com/) based on `Flurl.Http`.

---

## Features

-   Based on TikTok Shop Open Platform API.
-   Auto-generated signature on API requests.
-   Provides some algorithm utilities (such as HMAC-SHA-256).

---

## Get Started

> [!IMPORTANT]
> The documents are applicable to version 3.x of this SDK. If you are using version 2.x, please move to the archived branches on GitHub/Gitee.

### Installation:

```shell
# Install by NuGet
> Install-Package SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop

# Install by .NET CLI
> dotnet add package SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop
```

### Initialization:

```csharp
using SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop;

var options = new TikTokShopClientOptions()
{
    AppKey = "${APP_KEY}",
    AppSecret = "${APP_SECRET}}"
};
var client = TikTokShopClientBuilder.Create(options).Build();
```

### Requests & Responses:

```csharp
using SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop;
using SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.Models;

/* Example: Get Order List */
var request = new OrderSearchOrdersRequest()
{
    AccessToken = "${ACCESS_TOKEN}",
    ShopCipher = "${SHOP_CIPHER}",
};
var response = await client.ExecuteOrderSearchOrdersAsync(request);
if (response.IsSuccessful())
{
    Console.WriteLine("Orders: " + response.Data.OrderList);
    Console.WriteLine("Total: " + response.Data.TotalCount);
}
else
{
    Console.WriteLine("Code: " + response.Code);
    Console.WriteLine("Message: " + response.Message);
}
```

---

## Basic Usage

-   [API Reference Manual](./Basic_ModelDefinition.md)

-   [Legacy API (pre-v202309)](./Basic_LegacyAPI.md)


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenClient.cs
================================================
using System;
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
using Flurl.Http;

namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    /// <summary>
    /// 一个抖音开放平台 API HTTP 客户端。
    /// </summary>
    public class DouyinOpenClient : CommonClientBase, ICommonClient
    {
        /// <summary>
        /// 获取当前客户端使用的抖音开放平台凭证。
        /// </summary>
        public Settings.Credentials Credentials { get; }

        /// <summary>
        /// 用指定的配置项初始化 <see cref="DouyinOpenClient"/> 类的新实例。
        /// </summary>
        /// <param name="options">配置项。</param>
        public DouyinOpenClient(DouyinOpenClientOptions options)
            : this(options, null)
        {
        }

        /// <summary>
        /// 
        /// </summary>
        /// <param name="options"></param>
        /// <param name="httpClient"></param>
        /// <param name="disposeClient"></param>
        internal protected DouyinOpenClient(DouyinOpenClientOptions options, HttpClient? httpClient, bool disposeClient = true)
            : base(httpClient, disposeClient)
        {
            if (options is null) throw new ArgumentNullException(nameof(options));

            Credentials = new Settings.Credentials(options);

            FlurlClient.BaseUrl = options.Endpoint ?? DouyinOpenEndpoints.DEFAULT;
            FlurlClient.WithTimeout(options.Timeout <= 0 ? Timeout.InfiniteTimeSpan : TimeSpan.FromMilliseconds(options.Timeout));
        }

        /// <summary>
        /// 使用当前客户端生成一个新的 <see cref="IFlurlRequest"/> 对象。
        /// </summary>
        /// <param name="request"></param>
        /// <param name="httpMethod"></param>
        /// <param name="urlSegments"></param>
        /// <returns></returns>
        public IFlurlRequest CreateFlurlRequest(DouyinOpenRequest request, HttpMethod httpMethod, params object[] urlSegments)
        {
            IFlurlRequest flurlRequest = base.CreateFlurlRequest(request, httpMethod, urlSegments);

            return flurlRequest;
        }

        /// <summary>
        /// 异步发起请求。
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="flurlRequest"></param>
        /// <param name="httpContent"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public async Task<T> SendFlurlRequestAsync<T>(IFlurlRequest flurlRequest, HttpContent? httpContent = null, CancellationToken cancellationToken = default)
            where T : DouyinOpenResponse, new()
        {
            if (flurlRequest is null) throw new ArgumentNullException(nameof(flurlRequest));

            using IFlurlResponse flurlResponse = await base.SendFlurlRequestAsync(flurlRequest, httpContent, cancellationToken).ConfigureAwait(false);
            return await WrapFlurlResponseAsJsonAsync<T>(flurlResponse, cancellationToken).ConfigureAwait(false);
        }

        /// <summary>
        /// 异步发起请求。
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="flurlRequest"></param>
        /// <param name="data"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public async Task<T> SendFlurlRequestAsJsonAsync<T>(IFlurlRequest flurlRequest, object? data = null, CancellationToken cancellationToken = default)
            where T : DouyinOpenResponse, new()
        {
            if (flurlRequest is null) throw new ArgumentNullException(nameof(flurlRequest));

            bool isSimpleRequest = data is null ||
                flurlRequest.Verb == HttpMethod.Get ||
                flurlRequest.Verb == HttpMethod.Head ||
                flurlRequest.Verb == HttpMethod.Options;
            if (!isSimpleRequest)
                flurlRequest.WithHeader(HttpHeaders.ContentType, MimeTypes.Json); // NOTICE: Content-Type 中不能包含 charset 等其他段

            using IFlurlResponse flurlResponse = isSimpleRequest ?
                await base.SendFlurlRequestAsync(flurlRequest, null, cancellationToken) :
                await base.SendFlurlRequestAsJsonAsync(flurlRequest, data, cancellationToken).ConfigureAwait(false);
            return await WrapFlurlResponseAsJsonAsync<T>(flurlResponse, cancellationToken).ConfigureAwait(false);
        }

        /// <summary>
        /// 异步发起请求。
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="flurlRequest"></param>
        /// <param name="data"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public async Task<T> SendFlurlRequestAsFormUrlEncodedAsync<T>(IFlurlRequest flurlRequest, object? data = null, CancellationToken cancellationToken = default)
            where T : DouyinOpenResponse, new()
        {
            if (flurlRequest is null) throw new ArgumentNullException(nameof(flurlRequest));

            bool isSimpleRequest = data is null ||
                flurlRequest.Verb == HttpMethod.Get ||
                flurlRequest.Verb == HttpMethod.Head ||
                flurlRequest.Verb == HttpMethod.Options;
            if (!isSimpleRequest)
                flurlRequest.WithHeader(HttpHeaders.ContentType, MimeTypes.FormUrlEncoded); // NOTICE: Content-Type 中不能包含 charset 等其他段

            using IFlurlResponse flurlResponse = isSimpleRequest ?
                await base.SendFlurlRequestAsync(flurlRequest, null, cancellationToken).ConfigureAwait(false) :
                await base.SendFlurlRequestAsFormUrlEncodedAsync(flurlRequest, data, cancellationToken).ConfigureAwait(false);
            return await WrapFlurlResponseAsJsonAsync<T>(flurlResponse, cancellationToken).ConfigureAwait(false);
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenClientBuilder.cs
================================================
using System;
using System.Collections.Generic;
using System.Net.Http;

namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    /// <summary>
    /// 用于构造 <see cref="DouyinOpenClient"/> 实例的构造器。
    /// </summary>
    public partial class DouyinOpenClientBuilder : ICommonClientBuilder<DouyinOpenClient>
    {
        private readonly DouyinOpenClientOptions _options;
        private readonly IList<Action<CommonClientSettings>> _configures;
        private readonly IList<HttpInterceptor> _interceptors;
        private HttpClient? _httpClient;
        private bool? _disposeClient;

        private DouyinOpenClientBuilder(DouyinOpenClientOptions options)
        {
            _options = options;
            _configures = new List<Action<CommonClientSettings>>();
            _interceptors = new List<HttpInterceptor>();
        }

        ICommonClientBuilder<DouyinOpenClient> ICommonClientBuilder<DouyinOpenClient>.ConfigureSettings(Action<CommonClientSettings> configure)
        {
            return ConfigureSettings(configure);
        }

        ICommonClientBuilder<DouyinOpenClient> ICommonClientBuilder<DouyinOpenClient>.UseInterceptor(HttpInterceptor interceptor)
        {
            return UseInterceptor(interceptor);
        }

        ICommonClientBuilder<DouyinOpenClient> ICommonClientBuilder<DouyinOpenClient>.UseHttpClient(HttpClient httpClient, bool disposeClient)
        {
            return UseHttpClient(httpClient, disposeClient);
        }

        public DouyinOpenClientBuilder ConfigureSettings(Action<CommonClientSettings> configure)
        {
            if (configure is null) throw new ArgumentNullException(nameof(configure));

            _configures.Add(configure);
            return this;
        }

        public DouyinOpenClientBuilder UseInterceptor(HttpInterceptor interceptor)
        {
            if (interceptor is null) throw new ArgumentNullException(nameof(interceptor));

            _interceptors.Add(interceptor);
            return this;
        }

        public DouyinOpenClientBuilder UseHttpClient(HttpClient httpClient, bool disposeClient = true)
        {
            if (httpClient is null) throw new ArgumentNullException(nameof(httpClient));

            _httpClient = httpClient;
            _disposeClient = disposeClient;
            return this;
        }

        public DouyinOpenClient Build()
        {
            DouyinOpenClient client = _disposeClient.HasValue
                ? new DouyinOpenClient(_options, _httpClient, _disposeClient.Value)
                : new DouyinOpenClient(_options, _httpClient);

            foreach (Action<CommonClientSettings> configure in _configures)
            {
                client.Configure(configure);
            }

            foreach (HttpInterceptor interceptor in _interceptors)
            {
                client.Interceptors.Add(interceptor);
            }

            return client;
        }
    }

    partial class DouyinOpenClientBuilder
    {
        public static DouyinOpenClientBuilder Create(DouyinOpenClientOptions options)
        {
            if (options is null) throw new ArgumentNullException(nameof(options));

            return new DouyinOpenClientBuilder(options);
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenClientOptions.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    /// <summary>
    /// 一个用于构造 <see cref="DouyinOpenClient"/> 时使用的配置项。
    /// </summary>
    public class DouyinOpenClientOptions
    {
        /// <summary>
        /// 获取或设置请求超时时间(单位:毫秒)。
        /// <para>默认值:30000</para>
        /// </summary>
        public int Timeout { get; set; } = 30 * 1000;

        /// <summary>
        /// 获取或设置抖音开放平台 API 入口点。
        /// <para>默认值:<see cref="DouyinOpenEndpoints.DEFAULT"/></para>
        /// </summary>
        public string Endpoint { get; set; } = DouyinOpenEndpoints.DEFAULT;

        /// <summary>
        /// 获取或设置抖音开放平台应用 Key。
        /// </summary>
        public string ClientKey { get; set; } = default!;

        /// <summary>
        /// 获取或设置抖音开放平台应用密钥。
        /// </summary>
        public string ClientSecret { get; set; } = default!;

        /// <summary>
        /// 获取或设置抖音开放平台 Webhook 验签秘钥。
        /// </summary>
        public string WebhookSecret { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenEndpoints.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    /// <summary>
    /// 抖音开放平台 API 接口域名。
    /// </summary>
    public static class DouyinOpenEndpoints
    {
        /// <summary>
        /// 主域名(默认)。
        /// </summary>
        public const string DEFAULT = "https://open.douyin.com";

        /// <summary>
        /// 沙盒域名。
        /// </summary>
        public const string SANDBOX = "https://open-sandbox.douyin.com";
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    /// <summary>
    /// 表示抖音开放平台 API Webhook 事件的基类。
    /// </summary>
    public class DouyinOpenEvent : ICommonWebhookEvent
    {
        /// <summary>
        /// 获取或设置事件类型。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("event")]
        [System.Text.Json.Serialization.JsonPropertyName("event")]
        public virtual string Event { get; set; } = default!;

        /// <summary>
        /// 获取或设置应用的 ClientKey。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("client_key")]
        [System.Text.Json.Serialization.JsonPropertyName("client_key")]
        public virtual string ClientKey { get; set; } = default!;

        /// <summary>
        /// 获取或设置事件发起者用户 ID。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("from_user_id")]
        [System.Text.Json.Serialization.JsonPropertyName("from_user_id")]
        public virtual string? FromUserId { get; set; }

        /// <summary>
        /// 获取或设置事件接收者用户 ID。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("to_user_id")]
        [System.Text.Json.Serialization.JsonPropertyName("to_user_id")]
        public virtual string? ToUserId { get; set; }

        /// <summary>
        /// 获取或设置事件日志 ID。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("log_id")]
        [System.Text.Json.Serialization.JsonPropertyName("log_id")]
        public virtual string? LogId { get; set; }
    }

    /// <summary>
    /// 表示抖音开放平台 API Webhook 事件的泛型基类。
    /// </summary>
    public abstract class DouyinOpenEvent<TContent> : DouyinOpenEvent
    {
        /// <summary>
        /// 获取或设置事件内容。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("content")]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        public virtual TContent EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenException.cs
================================================
using System;

namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    /// <summary>
    /// 当调用抖音开放平台 API 出错时引发的异常。
    /// </summary>
    public class DouyinOpenException : CommonException
    {
        /// <inheritdoc/>
        public DouyinOpenException()
        {
        }

        /// <inheritdoc/>
        public DouyinOpenException(string message)
            : base(message)
        {
        }

        /// <inheritdoc/>
        public DouyinOpenException(string message, Exception innerException)
            : base(message, innerException)
        {
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenRequest.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    /// <summary>
    /// 抖音开放平台 API 请求的基类。
    /// </summary>
    public abstract class DouyinOpenRequest : CommonRequestBase, ICommonRequest
    {
        /// <summary>
        /// 获取或设置接口调用凭证。
        /// </summary>
        [Newtonsoft.Json.JsonIgnore]
        [System.Text.Json.Serialization.JsonIgnore]
        public virtual string? AccessToken { get; set; }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenResponse.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    /// <summary>
    /// 抖音开放平台 API 响应的基类。
    /// </summary>
    public abstract class DouyinOpenResponse : CommonResponseBase, ICommonResponse
    {
        /// <summary>
        /// 获取抖音开放平台 API 返回的错误码。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("error_code")]
        [System.Text.Json.Serialization.JsonPropertyName("error_code")]
        [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
        public virtual int ErrorCode { get; set; }

        /// <summary>
        /// 获取抖音开放平台 API 返回的错误描述。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("description")]
        [System.Text.Json.Serialization.JsonPropertyName("description")]
        public virtual string? ErrorDescription { get; set; }

        /// <summary>
        /// 获取抖音开放平台 API 返回的扩展信息。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("extra")]
        [System.Text.Json.Serialization.JsonPropertyName("extra")]
        public virtual DouyinOpenResponseExtra? Extra { get; set; }

        /// <summary>
        /// 获取一个值,该值指示调用抖音开放平台 API 是否成功。
        /// <para>
        ///(即 HTTP 状态码为 200,且 <see cref="ErrorCode"/> 值为 0)
        /// </para>
        /// </summary>
        /// <returns></returns>
        public override bool IsSuccessful()
        {
            return GetRawStatus() == 200
                && ErrorCode == 0
                && (Extra?.ErrorCode).GetValueOrDefault() == 0
                && (Extra?.SubErrorCode).GetValueOrDefault() == 0;
        }
    }

    /// <summary>
    /// 抖音开放平台 API 响应的返回数据字段。
    /// </summary>
    public abstract class DouyinOpenResponseData
    {
        /// <summary>
        /// 获取或设置错误码。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("error_code")]
        [System.Text.Json.Serialization.JsonPropertyName("error_code")]
        [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
        public int ErrorCode { get; set; }

        /// <summary>
        /// 获取或设置错误描述。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("description")]
        [System.Text.Json.Serialization.JsonPropertyName("description")]
        public string? ErrorDescription { get; set; }
    }

    /// <summary>
    /// 抖音开放平台 API 响应的扩展信息字段。
    /// </summary>
    public sealed class DouyinOpenResponseExtra
    {
        /// <summary>
        /// 获取请求唯一标识。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("logid")]
        [System.Text.Json.Serialization.JsonPropertyName("logid")]
        public string LogId { get; set; } = default!;

        /// <summary>
        /// 获取毫秒级时间戳。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("now")]
        [System.Text.Json.Serialization.JsonPropertyName("now")]
        [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
        public long Now { get; set; }

        /// <summary>
        /// 获取错误码。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("error_code")]
        [System.Text.Json.Serialization.JsonPropertyName("error_code")]
        [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
        public int? ErrorCode { get; set; }

        /// <summary>
        /// 获取错误描述。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("description")]
        [System.Text.Json.Serialization.JsonPropertyName("description")]
        public string? ErrorDescription { get; set; }

        /// <summary>
        /// 获取子错误码。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("sub_error_code")]
        [System.Text.Json.Serialization.JsonPropertyName("sub_error_code")]
        [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
        public int? SubErrorCode { get; set; }

        /// <summary>
        /// 获取子错误描述。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("sub_description")]
        [System.Text.Json.Serialization.JsonPropertyName("sub_description")]
        public string? SubErrorDescription { get; set; }
    }

    /// <summary>
    /// 抖音开放平台 API 响应的泛型基类。
    /// </summary>
    public abstract class DouyinOpenResponse<TData> : DouyinOpenResponse
        where TData : DouyinOpenResponseData
    {
        /// <summary>
        /// 获取或设置接口返回数据。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("data")]
        [System.Text.Json.Serialization.JsonPropertyName("data")]
        public TData Data { get; set; } = default!;

        /// <summary>
        /// 获取或设置接口返回消息。
        /// </summary>
        [Newtonsoft.Json.JsonProperty("message")]
        [System.Text.Json.Serialization.JsonPropertyName("message")]
        public string? Message { get; set; }

        /// <summary>
        /// <inheritdoc/>
        /// </summary>
        /// <returns></returns>
        public override bool IsSuccessful()
        {
            return base.IsSuccessful() && (Data?.ErrorCode).GetValueOrDefault() == 0;
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeMemberJoinEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 life_member_join 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/life-service-open-ability/life.capacity/member/member.join ]]>
    /// </para>
    /// </summary>
    public class LifeMemberJoinEvent : DouyinOpenEvent<LifeMemberJoinEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置商家 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("account_id")]
                [System.Text.Json.Serialization.JsonPropertyName("account_id")]
                [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.NumericalStringReadOnlyConverter))]
                public string AccountId { get; set; } = default!;

                /// <summary>
                /// 获取或设置用户手机号。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("mobile")]
                [System.Text.Json.Serialization.JsonPropertyName("mobile")]
                public string MobileNumber { get; set; } = default!;
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeMemberLeaveEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 life_member_leave 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/life-service-open-ability/life.capacity/member/member.join ]]>
    /// </para>
    /// </summary>
    public class LifeMemberLeaveEvent : DouyinOpenEvent<LifeMemberLeaveEvent.Types.Content>
    {
        public static class Types
        {
            public class Content : LifeMemberJoinEvent.Types.Content
            {
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeProductAuditEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 life_product_audit 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://partner.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/life-service-open-ability/life.capacity/goods/goods.audit ]]>
    /// </para>
    /// </summary>
    public class LifeProductAuditEvent : DouyinOpenEvent<LifeProductAuditEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置商品 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("product_id")]
                [System.Text.Json.Serialization.JsonPropertyName("product_id")]
                public string ProductId { get; set; } = default!;

                /// <summary>
                /// 获取或设置审核状态。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("status")]
                [System.Text.Json.Serialization.JsonPropertyName("status")]
                public string AuditStatus { get; set; } = default!;

                /// <summary>
                /// 获取或设置审核拒绝原因。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("reason")]
                [System.Text.Json.Serialization.JsonPropertyName("reason")]
                public string? RejectReason { get; set; } = default!;
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeTradeCertificateNotifyEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 life_trade_certificate_notify 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://partner.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/life-service-open-ability/life.capacity/order.query/trade.certificate.notify ]]>
    /// </para>
    /// </summary>
    public class LifeTradeCertificateNotifyEvent : DouyinOpenEvent<LifeTradeCertificateNotifyEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                public static class Types
                {
                    public class Certificate
                    {
                        /// <summary>
                        /// 获取或设置订单 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("order_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("order_id")]
                        public string OrderId { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置券 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("certificate_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("certificate_id")]
                        public string CertificateId { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置商家 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("account_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("account_id")]
                        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.NumericalStringReadOnlyConverter))]
                        public string AccountId { get; set; } = default!;
                    }
                }

                /// <summary>
                /// 获取或设置消息类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("action")]
                [System.Text.Json.Serialization.JsonPropertyName("action")]
                public string Action { get; set; } = default!;

                /// <summary>
                /// 获取或设置消息时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("msg_time")]
                [System.Text.Json.Serialization.JsonPropertyName("msg_time")]
                [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
                public long Timestamp { get; set; }

                /// <summary>
                /// 获取或设置券信息。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("certificate")]
                [System.Text.Json.Serialization.JsonPropertyName("certificate")]
                public Types.Certificate Certificate { get; set; } = default!;
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeTradeOrderNotifyEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 life_trade_order_notify 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://partner.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/life-service-open-ability/life.capacity/order.query/trade.order.notify ]]>
    /// </para>
    /// </summary>
    public class LifeTradeOrderNotifyEvent : DouyinOpenEvent<LifeTradeOrderNotifyEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                public static class Types
                {
                    public class Order
                    {
                        /// <summary>
                        /// 获取或设置订单 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("order_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("order_id")]
                        public string OrderId { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置商家 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("account_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("account_id")]
                        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.NumericalStringReadOnlyConverter))]
                        public string AccountId { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置售卖价格(单位:分)。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("original_amount")]
                        [System.Text.Json.Serialization.JsonPropertyName("original_amount")]
                        [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
                        public int OriginalAmount { get; set; }

                        /// <summary>
                        /// 获取或设置用户支付价格(单位:分)。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("pay_amount")]
                        [System.Text.Json.Serialization.JsonPropertyName("pay_amount")]
                        [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
                        public int PayAmount { get; set; }

                        /// <summary>
                        /// 获取或设置下单时间戳。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("create_time")]
                        [System.Text.Json.Serialization.JsonPropertyName("create_time")]
                        [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
                        public long CreateTimestamp { get; set; }

                        /// <summary>
                        /// 获取或设置支付时间戳。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("pay_time")]
                        [System.Text.Json.Serialization.JsonPropertyName("pay_time")]
                        [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
                        public long PayTimestamp { get; set; }
                    }
                }

                /// <summary>
                /// 获取或设置消息类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("action")]
                [System.Text.Json.Serialization.JsonPropertyName("action")]
                public string Action { get; set; } = default!;

                /// <summary>
                /// 获取或设置消息时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("msg_time")]
                [System.Text.Json.Serialization.JsonPropertyName("msg_time")]
                [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
                public long Timestamp { get; set; }

                /// <summary>
                /// 获取或设置订单信息。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("order")]
                [System.Text.Json.Serialization.JsonPropertyName("order")]
                public Types.Order Order { get; set; } = default!;
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/EnterGroupAuditChangeEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 enter_group_audit_change 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/interaction-management/group-chat/join-group/group-fans-webhook/add-group-audit-webhook ]]> <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/instant-message/group-chat/group-manage/group-fans-webhook/enter-group-audit-change-webhook ]]>
    /// </para>
    /// </summary>
    public class EnterGroupAuditChangeEvent : DouyinOpenEvent<EnterGroupAuditChangeEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置群 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("group_id")]
                [System.Text.Json.Serialization.JsonPropertyName("group_id")]
                public string GroupId { get; set; } = default!;

                /// <summary>
                /// 获取或设置入群申请 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("apply_id")]
                [System.Text.Json.Serialization.JsonPropertyName("apply_id")]
                public string ApplyId { get; set; } = default!;

                /// <summary>
                /// 获取或设置申请状态。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("apply_status")]
                [System.Text.Json.Serialization.JsonPropertyName("apply_status")]
                public int ApplyStatus { get; set; }

                /// <summary>
                /// 获取或设置用户昵称。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("user_nicker")]
                [System.Text.Json.Serialization.JsonPropertyName("user_nicker")]
                public string UserNickname { get; set; } = default!;

                /// <summary>
                /// 获取或设置用户头像 URL。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("user_avatar")]
                [System.Text.Json.Serialization.JsonPropertyName("user_avatar")]
                public string UserAvatarUrl { get; set; } = default!;

                /// <summary>
                /// 获取或设置创建时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("create_time")]
                [System.Text.Json.Serialization.JsonPropertyName("create_time")]
                public long CreateTimestamp { get; set; }
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/GroupFansEventEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 group_fans_event 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/interaction-management/group-chat/join-group/group-fans-webhook/group-fans-join ]]> <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/instant-message/group-chat/group-manage/group-fans-webhook/join-group-event ]]>
    /// </para>
    /// </summary>
    public class GroupFansEventEvent : DouyinOpenEvent<GroupFansEventEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置群 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("im_group_id")]
                [System.Text.Json.Serialization.JsonPropertyName("im_group_id")]
                public string GroupId { get; set; } = default!;

                /// <summary>
                /// 获取或设置群主的 OpenId。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("open_id")]
                [System.Text.Json.Serialization.JsonPropertyName("open_id")]
                public string OwnerOpenId { get; set; } = default!;

                /// <summary>
                /// 获取或设置群类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("create_group_type")]
                [System.Text.Json.Serialization.JsonPropertyName("create_group_type")]
                [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
                public int? GroupType { get; set; }

                /// <summary>
                /// 获取或设置操作类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("group_type")]
                [System.Text.Json.Serialization.JsonPropertyName("group_type")]
                [System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
                public int ActionType { get; set; }

                /// <summary>
                /// 获取或设置创建时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("create_time")]
                [System.Text.Json.Serialization.JsonPropertyName("create_time")]
                public long CreateTimestamp { get; set; }
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMAuthorizeEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 im_authorize 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/instant-message/private-message/im_authorize_wenhook ]]>
    /// </para>
    /// </summary>
    public class IMAuthorizeEvent : DouyinOpenEvent<IMAuthorizeEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置操作类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("operation_type")]
                [System.Text.Json.Serialization.JsonPropertyName("operation_type")]
                public int OperationType { get; set; }

                /// <summary>
                /// 获取或设置授权状态。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("auth_status")]
                [System.Text.Json.Serialization.JsonPropertyName("auth_status")]
                public int AuthStatus { get; set; }

                /// <summary>
                /// 获取或设置授权场景。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("source")]
                [System.Text.Json.Serialization.JsonPropertyName("source")]
                public string Source { get; set; } = default!;

                /// <summary>
                /// 获取或设置扩展字段。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("extra")]
                [System.Text.Json.Serialization.JsonPropertyName("extra")]
                public string? Extra { get; set; }

                /// <summary>
                /// 获取或设置创建时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("create_time")]
                [System.Text.Json.Serialization.JsonPropertyName("create_time")]
                public long CreateTimestamp { get; set; }

                /// <summary>
                /// 获取或设置更新时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("update_time")]
                [System.Text.Json.Serialization.JsonPropertyName("update_time")]
                public long UpdateTimestamp { get; set; }

                /// <summary>
                /// 获取或设置到期时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("expire_time")]
                [System.Text.Json.Serialization.JsonPropertyName("expire_time")]
                public long ExpireTimestamp { get; set; }

                /// <summary>
                /// 获取或设置页面路径。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("path")]
                [System.Text.Json.Serialization.JsonPropertyName("path")]
                public string? PagePath { get; set; }

                /// <summary>
                /// 获取或设置页面参数。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("query")]
                [System.Text.Json.Serialization.JsonPropertyName("query")]
                public string? PageQuery { get; set; }

                /// <summary>
                /// 获取或设置自定义参数。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("data_im_extra")]
                [System.Text.Json.Serialization.JsonPropertyName("data_im_extra")]
                public string? DataIMExtra { get; set; }
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMEnterDirectMessageEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 im_enter_direct_msg 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/interaction-management/private-message/enter-direct-msg-webhook ]]> <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/instant-message/private-message/enter-direct-msg-webhook ]]>
    /// </para>
    /// </summary>
    public class IMEnterDirectMessageEvent : DouyinOpenEvent<IMEnterDirectMessageEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                public static class Types
                {
                    public class UserInfo
                    {
                        /// <summary>
                        /// 获取或设置用户唯一标识。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("open_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("open_id")]
                        public string OpenId { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置昵称。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("nick_name")]
                        [System.Text.Json.Serialization.JsonPropertyName("nick_name")]
                        public string Nickname { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置头像 URL。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("avatar")]
                        [System.Text.Json.Serialization.JsonPropertyName("avatar")]
                        public string AvatarUrl { get; set; } = default!;
                    }

                    public class AdInfo
                    {
                        /// <summary>
                        /// 获取或设置广告计划 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("ad_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("ad_id")]
                        public long AdId { get; set; }

                        /// <summary>
                        /// 获取或设置广告计划名称。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("ad_name")]
                        [System.Text.Json.Serialization.JsonPropertyName("ad_name")]
                        public string AdName { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置广告主 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("adv_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("adv_id")]
                        public long AdvertiserId { get; set; }

                        /// <summary>
                        /// 获取或设置广告主名称。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("adv_name")]
                        [System.Text.Json.Serialization.JsonPropertyName("adv_name")]
                        public string AdvertiserName { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置创意 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("creative_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("creative_id")]
                        public long? CreativeId { get; set; }

                        /// <summary>
                        /// 获取或设置广告 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("promotion_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("promotion_id")]
                        public long? PromotionId { get; set; }

                        /// <summary>
                        /// 获取或设置素材标题 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("material_title_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("material_title_id")]
                        public long? MaterialTitleId { get; set; }

                        /// <summary>
                        /// 获取或设置素材图片 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("material_image_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("material_image_id")]
                        public long? MaterialImageId { get; set; }

                        /// <summary>
                        /// 获取或设置素材视频 ID。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("material_video_id")]
                        [System.Text.Json.Serialization.JsonPropertyName("material_video_id")]
                        public long? MaterialVideoId { get; set; }
                    }
                }

                /// <summary>
                /// 获取或设置消息 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("server_message_id")]
                [System.Text.Json.Serialization.JsonPropertyName("server_message_id")]
                public string ServerMessageId { get; set; } = default!;

                /// <summary>
                /// 获取或设置会话 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("conversation_short_id")]
                [System.Text.Json.Serialization.JsonPropertyName("conversation_short_id")]
                public string ConversationShortId { get; set; } = default!;

                /// <summary>
                /// 获取或设置会话类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("conversation_type")]
                [System.Text.Json.Serialization.JsonPropertyName("conversation_type")]
                public int ConversationType { get; set; }

                /// <summary>
                /// 获取或设置视频 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("objectId")]
                [System.Text.Json.Serialization.JsonPropertyName("objectId")]
                public string? ObjectId { get; set; }

                /// <summary>
                /// 获取或设置场景类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("scene_type")]
                [System.Text.Json.Serialization.JsonPropertyName("scene_type")]
                public int SceneType { get; set; }

                /// <summary>
                /// 获取或设置创建时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("create_time")]
                [System.Text.Json.Serialization.JsonPropertyName("create_time")]
                public long CreateTimestamp { get; set; }

                /// <summary>
                /// 获取或设置页面路径。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("path")]
                [System.Text.Json.Serialization.JsonPropertyName("path")]
                public string? PagePath { get; set; }

                /// <summary>
                /// 获取或设置页面参数。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("query")]
                [System.Text.Json.Serialization.JsonPropertyName("query")]
                public string? PageQuery { get; set; }

                /// <summary>
                /// 获取或设置自定义参数。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("data-im-extra")]
                [System.Text.Json.Serialization.JsonPropertyName("data-im-extra")]
                public string? DataIMExtra { get; set; }

                /// <summary>
                /// 获取或设置用户列表。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("user_infos")]
                [System.Text.Json.Serialization.JsonPropertyName("user_infos")]
                public Types.UserInfo[]? UserList { get; set; }

                /// <summary>
                /// 获取或设置广告信息。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("ad_info")]
                [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
                [System.Text.Json.Serialization.JsonPropertyName("ad_info")]
                [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
                public Types.AdInfo? AdInfo { get; set; }
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMGroupReceiveMessageEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 im_group_receive_msg 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/interaction-management/group-chat/group-msg/group.fans.webhook ]]> <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/instant-message/group-chat/group-message/group.fans.webhook ]]>
    /// </para>
    /// </summary>
    public class IMGroupReceiveMessageEvent : DouyinOpenEvent<IMGroupReceiveMessageEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                public static class Types
                {
                    public class UserInfo : IMReceiveMessageEvent.Types.Content.Types.UserInfo
                    {
                    }

                    public class CardData : IMReceiveMessageEvent.Types.Content.Types.CardData
                    {
                    }
                }

                /// <summary>
                /// 获取或设置消息 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("server_message_id")]
                [System.Text.Json.Serialization.JsonPropertyName("server_message_id")]
                public string ServerMessageId { get; set; } = default!;

                /// <summary>
                /// 获取或设置会话 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("conversation_short_id")]
                [System.Text.Json.Serialization.JsonPropertyName("conversation_short_id")]
                public string ConversationShortId { get; set; } = default!;

                /// <summary>
                /// 获取或设置会话类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("conversation_type")]
                [System.Text.Json.Serialization.JsonPropertyName("conversation_type")]
                public int ConversationType { get; set; }

                /// <summary>
                /// 获取或设置群主的 OpenId。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("owner_id")]
                [System.Text.Json.Serialization.JsonPropertyName("owner_id")]
                public string OwnerOpenId { get; set; } = default!;

                /// <summary>
                /// 获取或设置场景类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("scene_type")]
                [System.Text.Json.Serialization.JsonPropertyName("scene_type")]
                public int SceneType { get; set; }

                /// <summary>
                /// 获取或设置消息类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("message_type")]
                [System.Text.Json.Serialization.JsonPropertyName("message_type")]
                public string MessageType { get; set; } = default!;

                /// <summary>
                /// 获取或设置消息来源。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("source")]
                [System.Text.Json.Serialization.JsonPropertyName("source")]
                public string? Source { get; set; }

                /// <summary>
                /// 获取或设置文字内容。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("text")]
                [System.Text.Json.Serialization.JsonPropertyName("text")]
                public string? Text { get; set; }

                /// <summary>
                /// 获取或设置资源类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_type")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_type")]
                public string? ResourceType { get; set; }

                /// <summary>
                /// 获取或设置资源链接。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_url")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_url")]
                public string? ResourceUrl { get; set; }

                /// <summary>
                /// 获取或设置资源高度(单位:像素)。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_height")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_height")]
                public int? ResourceHeight { get; set; }

                /// <summary>
                /// 获取或设置资源宽度(单位:像素)。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_width")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_width")]
                public int? ResourceWidth { get; set; }

                /// <summary>
                /// 获取或设置视频 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("item_id")]
                [System.Text.Json.Serialization.JsonPropertyName("item_id")]
                public string? ItemId { get; set; }

                /// <summary>
                /// 获取或设置卡片 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("card_id")]
                [System.Text.Json.Serialization.JsonPropertyName("card_id")]
                public string? CardId { get; set; }

                /// <summary>
                /// 获取或设置卡片状态。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("card_status")]
                [System.Text.Json.Serialization.JsonPropertyName("card_status")]
                public int? CardStatus { get; set; }

                /// <summary>
                /// 获取或设置卡片数据。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("card_data")]
                [System.Text.Json.Serialization.JsonPropertyName("card_data")]
                public Types.CardData[]? CardData { get; set; }

                /// <summary>
                /// 获取或设置创建时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("create_time")]
                [System.Text.Json.Serialization.JsonPropertyName("create_time")]
                public long CreateTimestamp { get; set; }

                /// <summary>
                /// 获取或设置用户列表。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("user_infos")]
                [System.Text.Json.Serialization.JsonPropertyName("user_infos")]
                public Types.UserInfo[]? UserList { get; set; }
            }
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMGroupSendMessageEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 im_group_send_msg 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/interaction-management/group-chat/group-msg/group.fans.webhook ]]> <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/instant-message/group-chat/group-message/group.fans.webhook ]]>
    /// </para>
    /// </summary>
    public class IMGroupSendMessageEvent : DouyinOpenEvent<IMGroupSendMessageEvent.Types.Content>
    {
        public static class Types
        {
            public class Content : IMGroupReceiveMessageEvent.Types.Content
            {
            }
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMReceiveMessageEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 im_receive_msg 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/interaction-management/private-message/private-msg-webhook ]]> <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/instant-message/private-message/private-msg-webhook ]]>
    /// </para>
    /// </summary>
    public class IMReceiveMessageEvent : DouyinOpenEvent<IMReceiveMessageEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                public static class Types
                {
                    public class UserInfo : IMEnterDirectMessageEvent.Types.Content.Types.UserInfo
                    {
                    }

                    public class CardData
                    {
                        /// <summary>
                        /// 获取或设置表单项标签。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("label")]
                        [System.Text.Json.Serialization.JsonPropertyName("label")]
                        public string Label { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置表单项内容。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("value")]
                        [System.Text.Json.Serialization.JsonPropertyName("value")]
                        public string Value { get; set; } = default!;
                    }
                }

                /// <summary>
                /// 获取或设置消息 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("server_message_id")]
                [System.Text.Json.Serialization.JsonPropertyName("server_message_id")]
                public string ServerMessageId { get; set; } = default!;

                /// <summary>
                /// 获取或设置会话 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("conversation_short_id")]
                [System.Text.Json.Serialization.JsonPropertyName("conversation_short_id")]
                public string ConversationShortId { get; set; } = default!;

                /// <summary>
                /// 获取或设置会话类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("conversation_type")]
                [System.Text.Json.Serialization.JsonPropertyName("conversation_type")]
                public int ConversationType { get; set; }

                /// <summary>
                /// 获取或设置场景类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("scene_type")]
                [System.Text.Json.Serialization.JsonPropertyName("scene_type")]
                public int SceneType { get; set; }

                /// <summary>
                /// 获取或设置消息类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("message_type")]
                [System.Text.Json.Serialization.JsonPropertyName("message_type")]
                public string MessageType { get; set; } = default!;

                /// <summary>
                /// 获取或设置消息来源。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("source")]
                [System.Text.Json.Serialization.JsonPropertyName("source")]
                public string? Source { get; set; }

                /// <summary>
                /// 获取或设置文字内容。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("text")]
                [System.Text.Json.Serialization.JsonPropertyName("text")]
                public string? Text { get; set; }

                /// <summary>
                /// 获取或设置资源类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_type")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_type")]
                public string? ResourceType { get; set; }

                /// <summary>
                /// 获取或设置资源链接。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_url")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_url")]
                public string? ResourceUrl { get; set; }

                /// <summary>
                /// 获取或设置资源高度(单位:像素)。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_height")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_height")]
                public int? ResourceHeight { get; set; }

                /// <summary>
                /// 获取或设置资源宽度(单位:像素)。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_width")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_width")]
                public int? ResourceWidth { get; set; }

                /// <summary>
                /// 获取或设置视频 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("item_id")]
                [System.Text.Json.Serialization.JsonPropertyName("item_id")]
                public string? ItemId { get; set; }

                /// <summary>
                /// 获取或设置卡片 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("card_id")]
                [System.Text.Json.Serialization.JsonPropertyName("card_id")]
                public string? CardId { get; set; }

                /// <summary>
                /// 获取或设置卡片状态。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("card_status")]
                [System.Text.Json.Serialization.JsonPropertyName("card_status")]
                public int? CardStatus { get; set; }

                /// <summary>
                /// 获取或设置卡片数据。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("card_data")]
                [System.Text.Json.Serialization.JsonPropertyName("card_data")]
                public Types.CardData[]? CardData { get; set; }

                /// <summary>
                /// 获取或设置创建时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("create_time")]
                [System.Text.Json.Serialization.JsonPropertyName("create_time")]
                public long CreateTimestamp { get; set; }

                /// <summary>
                /// 获取或设置用户列表。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("user_infos")]
                [System.Text.Json.Serialization.JsonPropertyName("user_infos")]
                public Types.UserInfo[]? UserList { get; set; }
            }
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMSendMessageEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 im_send_msg 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/interaction-management/private-message/private-msg-webhook ]]> <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/instant-message/private-message/private-msg-webhook ]]>
    /// </para>
    /// </summary>
    public class IMSendMessageEvent : DouyinOpenEvent<IMSendMessageEvent.Types.Content>
    {
        public static class Types
        {
            public class Content : IMReceiveMessageEvent.Types.Content
            {
            }
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Interaction/NewFollowActionEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 new_follow_action 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/interaction-management/intention-user/user-follow ]]>
    /// </para>
    /// </summary>
    public class NewFollowActionEvent : DouyinOpenEvent<NewFollowActionEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置动作类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("action_type")]
                [System.Text.Json.Serialization.JsonPropertyName("action_type")]
                public int ActionType { get; set; }

                /// <summary>
                /// 获取或设置动作时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("action_time")]
                [System.Text.Json.Serialization.JsonPropertyName("action_time")]
                public long ActionTimestamp { get; set; }
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Interaction/NewVideoDiggEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 new_video_digg 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/interaction-management/intention-user/item-digg ]]>
    /// </para>
    /// </summary>
    public class NewVideoDiggEvent : DouyinOpenEvent<NewVideoDiggEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置视频 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("item_id")]
                [System.Text.Json.Serialization.JsonPropertyName("item_id")]
                public string ItemId { get; set; } = default!;

                /// <summary>
                /// 获取或设置动作类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("action_type")]
                [System.Text.Json.Serialization.JsonPropertyName("action_type")]
                public int ActionType { get; set; }

                /// <summary>
                /// 获取或设置动作时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("action_time")]
                [System.Text.Json.Serialization.JsonPropertyName("action_time")]
                public long ActionTimestamp { get; set; }
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/UnionAuth/UnionAuthInfoForBEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 union_auth_info_for_b 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/union_auth/union_auth_info ]]>
    /// </para>
    /// </summary>
    public class UnionAuthInfoForBEvent : DouyinOpenEvent<UnionAuthInfoForBEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置 B 端应用 ClientKey。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("b_client_key")]
                [System.Text.Json.Serialization.JsonPropertyName("b_client_key")]
                public string BClientKey { get; set; } = default!;

                /// <summary>
                /// 获取或设置用户在 B 端下的 OpenId。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("b_open_id")]
                [System.Text.Json.Serialization.JsonPropertyName("b_open_id")]
                public string BOpenId { get; set; } = default!;

                /// <summary>
                /// 获取或设置 C 端应用 ClientKey。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("c_client_key")]
                [System.Text.Json.Serialization.JsonPropertyName("c_client_key")]
                public string CClientKey { get; set; } = default!;

                /// <summary>
                /// 获取或设置用户在 C 端下的 OpenId。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("c_open_id")]
                [System.Text.Json.Serialization.JsonPropertyName("c_open_id")]
                public string COpenId { get; set; } = default!;
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/UnionAuth/UnionAuthInfoForCEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 union_auth_info_for_c 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/union_auth/union_auth_info ]]> <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/union_auth/union_auth_info_for_c ]]>
    /// </para>
    /// </summary>
    public class UnionAuthInfoForCEvent : DouyinOpenEvent<UnionAuthInfoForCEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置 B 端应用 ClientKey。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("b_client_key")]
                [System.Text.Json.Serialization.JsonPropertyName("b_client_key")]
                public string BClientKey { get; set; } = default!;

                /// <summary>
                /// 获取或设置用户在 B 端下的 OpenId。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("b_open_id")]
                [System.Text.Json.Serialization.JsonPropertyName("b_open_id")]
                public string BOpenId { get; set; } = default!;

                /// <summary>
                /// 获取或设置 C 端应用 ClientKey。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("c_client_key")]
                [System.Text.Json.Serialization.JsonPropertyName("c_client_key")]
                public string CClientKey { get; set; } = default!;

                /// <summary>
                /// 获取或设置用户在 C 端下的 OpenId。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("c_open_id")]
                [System.Text.Json.Serialization.JsonPropertyName("c_open_id")]
                public string COpenId { get; set; } = default!;
            }
        }

        /// <inheritdoc/>
        [Newtonsoft.Json.JsonProperty("content")]
        [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.StringifiedObjectInJsonFormatConverter))]
        [System.Text.Json.Serialization.JsonPropertyName("content")]
        [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.StringifiedObjectInJsonFormatConverter))]
        public override Types.Content EventContent { get; set; } = default!;
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/AuthorizeEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 authorize 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/webhooks/event-list ]]>
    /// </para>
    /// </summary>
    public class AuthorizeEvent : DouyinOpenEvent<AuthorizeEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置授权列表。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("scopes")]
                [System.Text.Json.Serialization.JsonPropertyName("scopes")]
                public string[] ScopeList { get; set; } = default!;
            }
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/CreateVideoEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 create_video 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/webhooks/event-list ]]>
    /// </para>
    /// </summary>
    public class CreateVideoEvent : DouyinOpenEvent<CreateVideoEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置视频 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("item_id")]
                [System.Text.Json.Serialization.JsonPropertyName("item_id")]
                public string ItemId { get; set; } = default!;

                /// <summary>
                /// 获取或设置分享 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("share_id")]
                [System.Text.Json.Serialization.JsonPropertyName("share_id")]
                public string ShareId { get; set; } = default!;
            }
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/DialogPhoneEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 dial_phone 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/webhooks/event-list ]]>
    /// </para>
    /// </summary>
    public class DialogPhoneEvent : DouyinOpenEvent
    {
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/ItemCommentReplyEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 item_comment_reply 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/interaction-management/comment-management-user/accept-comment-reply-event ]]>
    /// </para>
    /// </summary>
    public class ItemCommentReplyEvent : DouyinOpenEvent<ItemCommentReplyEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置评论 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("comment_id")]
                [System.Text.Json.Serialization.JsonPropertyName("comment_id")]
                public string CommentId { get; set; } = default!;

                /// <summary>
                /// 获取或设置评论发布者 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("comment_user_id")]
                [System.Text.Json.Serialization.JsonPropertyName("comment_user_id")]
                public string CommentUserId { get; set; } = default!;

                /// <summary>
                /// 获取或设置回复内容。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("content")]
                [System.Text.Json.Serialization.JsonPropertyName("content")]
                public string CommentContent { get; set; } = default!;

                /// <summary>
                /// 获取或设置点赞数量。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("digg_count")]
                [System.Text.Json.Serialization.JsonPropertyName("digg_count")]
                public int DiggCount { get; set; }

                /// <summary>
                /// 获取或设置回复数量。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("reply_comment_total")]
                [System.Text.Json.Serialization.JsonPropertyName("reply_comment_total")]
                public int ReplyCount { get; set; }

                /// <summary>
                /// 获取或设置创建时间戳。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("create_time")]
                [System.Text.Json.Serialization.JsonPropertyName("create_time")]
                public long CreateTimestamp { get; set; }

                /// <summary>
                /// 获取或设置回复的评论 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("reply_to_comment_id")]
                [System.Text.Json.Serialization.JsonPropertyName("reply_to_comment_id")]
                public string? ReplyToCommentId { get; set; }

                /// <summary>
                /// 获取或设置回复的视频 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("reply_to_item_id")]
                [System.Text.Json.Serialization.JsonPropertyName("reply_to_item_id")]
                public string? ReplyToItemId { get; set; }

                /// <summary>
                /// 获取或设置回复的用户 ID。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("at_user_id")]
                [System.Text.Json.Serialization.JsonPropertyName("at_user_id")]
                public string? AtUserId { get; set; }
            }
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/PersonalTabContactEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 personal_tab_contact 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/webhooks/event-list ]]>
    /// </para>
    /// </summary>
    public class PersonalTabContactEvent : DouyinOpenEvent
    {
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/ReceiveMessageEvent.cs
================================================
using System.Collections.Generic;

namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 receive_msg 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/webhooks/event-list ]]>
    /// </para>
    /// </summary>
    public class ReceiveMessageEvent : DouyinOpenEvent<ReceiveMessageEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                public static class Types
                {
                    public class Action
                    {
                        /// <summary>
                        /// 获取或设置文本信息。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("name")]
                        [System.Text.Json.Serialization.JsonPropertyName("name")]
                        public string Name { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置文本链接。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("value")]
                        [System.Text.Json.Serialization.JsonPropertyName("value")]
                        public string Value { get; set; } = default!;

                        /// <summary>
                        /// 获取或设置文本点击后的事件类型。
                        /// </summary>
                        [Newtonsoft.Json.JsonProperty("action_type")]
                        [System.Text.Json.Serialization.JsonPropertyName("action_type")]
                        public string ActionType { get; set; } = default!;
                    }
                }

                /// <summary>
                /// 获取或设置消息类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("message_type")]
                [System.Text.Json.Serialization.JsonPropertyName("message_type")]
                public string MessageType { get; set; } = default!;

                /// <summary>
                /// 获取或设置文本消息内容。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("text")]
                [System.Text.Json.Serialization.JsonPropertyName("text")]
                public string? Text { get; set; }

                /// <summary>
                /// 获取或设置资源类型。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_type")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_type")]
                public string? ResourceType { get; set; }

                /// <summary>
                /// 获取或设置资源高度(单位:像素)。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_height")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_height")]
                public int? ResourceHeight { get; set; }

                /// <summary>
                /// 获取或设置资源宽度(单位:像素)。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_width")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_width")]
                public int? ResourceWidth { get; set; }

                /// <summary>
                /// 获取或设置资源 URL。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("resource_url")]
                [System.Text.Json.Serialization.JsonPropertyName("resource_url")]
                public string? ResourceUrl { get; set; }

                /// <summary>
                /// 获取或设置卡片标题或消息内容。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("title")]
                [System.Text.Json.Serialization.JsonPropertyName("title")]
                public string? Title { get; set; }

                /// <summary>
                /// 获取或设置卡片描述。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("description")]
                [System.Text.Json.Serialization.JsonPropertyName("description")]
                public string? Description { get; set; }

                /// <summary>
                /// 获取或设置卡片图标 URL。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("icon_url")]
                [System.Text.Json.Serialization.JsonPropertyName("icon_url")]
                public string? IconUrl { get; set; }

                /// <summary>
                /// 获取或设置卡片跳转链接。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("link_url")]
                [System.Text.Json.Serialization.JsonPropertyName("link_url")]
                public string? LinkUrl { get; set; }

                /// <summary>
                /// 获取或设置附带内容字典。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("actions")]
                [System.Text.Json.Serialization.JsonPropertyName("actions")]
                public IDictionary<string, Types.Action>? ActionMap { get; set; }
            }
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/UnauthorizeEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 unauthorize 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/webhooks/event-list ]]>
    /// </para>
    /// </summary>
    public class UnauthorizeEvent : DouyinOpenEvent<UnauthorizeEvent.Types.Content>
    {
        public static class Types
        {
            public class Content : AuthorizeEvent.Types.Content
            {
            }
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/VerifyWebhookEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 verify_webhook 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/webhooks/event-list ]]> <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/guide/open-capabilities/webhook ]]>
    /// </para>
    /// </summary>
    public class VerifyWebhookEvent : DouyinOpenEvent<VerifyWebhookEvent.Types.Content>
    {
        public static class Types
        {
            public class Content
            {
                /// <summary>
                /// 获取或设置验证信息。
                /// </summary>
                [Newtonsoft.Json.JsonProperty("challenge")]
                [System.Text.Json.Serialization.JsonPropertyName("challenge")]
                public int Challenge { get; set; }
            }
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/WebsiteContactEvent.cs
================================================
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events
{
    /// <summary>
    /// <para>表示 website_contact 事件的数据。</para>
    /// <para>
    /// REF: <br/>
    /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/webhooks/event-list ]]>
    /// </para>
    /// </summary>
    public class WebsiteContactEvent : DouyinOpenEvent
    {
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientDecryptionExtensions.cs
================================================
using System;
using System.Text;

namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    /// <summary>
    /// 为 <see cref="DouyinOpenClient"/> 提供解密的扩展方法。
    /// </summary>
    public static class DouyinOpenClientDecryptionExtensions
    {
        /// <summary>
        /// 解密用户公开信息中的手机号码。
        /// <para>
        /// REF: <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/account-management/phone-number-decode-demo ]]>
        /// </para>
        /// </summary>
        /// <param name="client"></param>
        /// <param name="encryptedMobileNumber"></param>
        /// <returns></returns>
        public static string DecryptOAuthUserInfoMobileNumber(this DouyinOpenClient client, string encryptedMobileNumber)
        {
            if (client is null) throw new ArgumentNullException(nameof(client));
            if (encryptedMobileNumber is null) throw new ArgumentNullException(encryptedMobileNumber);

            byte[] keyBytes = Encoding.UTF8.GetBytes(client.Credentials.ClientSecret);
            byte[] ivBytes = new byte[16]; Array.Copy(keyBytes, 0, ivBytes, 0, 16);
            byte[] cipherBytes = Convert.FromBase64String(encryptedMobileNumber);
            byte[] plainBytes = Utilities.AESUtility.DecryptWithCBC(keyBytes, ivBytes, cipherBytes);
            return Encoding.UTF8.GetString(plainBytes);
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientEventExtensions.cs
================================================
using System;

namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    using SKIT.FlurlHttpClient.Primitives;

    /// <summary>
    /// 为 <see cref="DouyinOpenClient"/> 提供 Webhook 事件的扩展方法。
    /// </summary>
    public static class DouyinOpenClientEventExtensions
    {
        /// <summary>
        /// <para>从 JSON 反序列化得到 <see cref="DouyinOpenEvent"/> 对象。</para>
        /// </summary>
        /// <typeparam name="TEvent"></typeparam>
        /// <param name="client"></param>
        /// <param name="webhookJson"></param>
        /// <returns></returns>
        public static TEvent DeserializeEvent<TEvent>(this DouyinOpenClient client, string webhookJson)
            where TEvent : DouyinOpenEvent, new()
        {
            if (client is null) throw new ArgumentNullException(nameof(client));
            if (webhookJson is null) throw new ArgumentNullException(webhookJson);

            try
            {
                return client.JsonSerializer.Deserialize<TEvent>(webhookJson);
            }
            catch (Exception ex)
            {
                throw new DouyinOpenException("Failed to deserialize event data. Please see the inner exception for more details.", ex);
            }
        }

        /// <summary>
        /// <para>验证 Webhook 事件签名。</para>
        /// <para>
        /// REF: <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/webhooks/summarize ]]>
        /// </para>
        /// </summary>
        /// <param name="client"></param>
        /// <param name="webhookJson">抖音 Webhook 事件中请求正文(JSON 格式)。</param>
        /// <param name="webhookSignature">抖音 Webhook 事件中的 "X-Douyin-Signature" 请求标头。</param>
        /// <returns></returns>
        public static ErroredResult VerifyEventSignature(this DouyinOpenClient client, string webhookJson, string webhookSignature)
        {
            if (client is null) throw new ArgumentNullException(nameof(client));
            if (webhookJson is null) throw new ArgumentNullException(nameof(webhookJson));

            ErroredResult result;

            try
            {
                string msg = $"{client.Credentials.ClientSecret}{webhookJson}";
                string sign = Utilities.SHA1Utility.Hash(msg).Value!;
                bool valid = string.Equals(sign, webhookSignature, StringComparison.OrdinalIgnoreCase);

                if (valid)
                    result = ErroredResult.Ok();
                else
                    result = ErroredResult.Fail(new Exception($"Signature does not match. Maybe \"{webhookSignature}\" is an illegal signature."));
            }
            catch (Exception ex)
            {
                result = ErroredResult.Fail(ex);
            }

            return result;
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiAppsAuthExtensions.cs
================================================
using System;
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
using Flurl.Http;

namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    public static class DouyinOpenClientExecuteApiAppsAuthExtensions
    {
        /// <summary>
        /// <para>异步调用 [POST] /api/apps/v1/auth/get_openid_by_c/ 接口。</para>
        /// <para>
        /// REF: <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/union_auth/get_openid_by_c ]]>
        /// </para>
        /// </summary>
        /// <param name="client"></param>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public static async Task<Models.AppsAuthGetOpenIdByCV1Response> ExecuteAppsAuthGetOpenIdByCV1Async(this DouyinOpenClient client, Models.AppsAuthGetOpenIdByCV1Request request, CancellationToken cancellationToken = default)
        {
            if (client is null) throw new ArgumentNullException(nameof(client));
            if (request is null) throw new ArgumentNullException(nameof(request));

            IFlurlRequest flurlReq = client
                .CreateFlurlRequest(request, HttpMethod.Post, "api", "apps", "v1", "auth", "get_openid_by_c/")
                .WithHeader("access-token", request.AccessToken);

            return await client.SendFlurlRequestAsJsonAsync<Models.AppsAuthGetOpenIdByCV1Response>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
        }
    }
}


================================================
FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiAppsTradeExtensions.cs
================================================
using System;
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
using Flurl;
using Flurl.Http;

namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
{
    public static class DouyinOpenClientExecuteApiAppsTradeExtensions
    {
        /// <summary>
        /// <para>异步调用 [POST] /api/apps/trade/v2/order/query_item_order_info 接口。</para>
        /// <para>
        /// REF: <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/agency-trade-system/query-info/query-item-info ]]> <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/self-operated-trading/query-info/query-item-info ]]>
        /// </para>
        /// </summary>
        /// <param name="client"></param>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public static async Task<Models.AppsTradeOrderQueryItemOrderInfoV2Response> ExecuteAppsTradeOrderQueryItemOrderInfoV2Async(this DouyinOpenClient client, Models.AppsTradeOrderQueryItemOrderInfoV2Request request, CancellationToken cancellationToken = default)
        {
            if (client is null) throw new ArgumentNullException(nameof(client));
            if (request is null) throw new ArgumentNullException(nameof(request));

            IFlurlRequest flurlReq = client
                .CreateFlurlRequest(request, HttpMethod.Post, "api", "apps", "trade", "v2", "order", "query_item_order_info")
                .WithHeader("access-token", request.AccessToken);

            return await client.SendFlurlRequestAsJsonAsync<Models.AppsTradeOrderQueryItemOrderInfoV2Response>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
        }

        /// <summary>
        /// <para>异步调用 [POST] /api/apps/trade/v2/order/query_order 接口。</para>
        /// <para>
        /// REF: <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/agency-trade-system/query-info/query-order ]]> <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/self-operated-trading/query-info/query-order ]]>
        /// </para>
        /// </summary>
        /// <param name="client"></param>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public static async Task<Models.AppsTradeOrderQueryOrderV2Response> ExecuteAppsTradeOrderQueryOrderV2Async(this DouyinOpenClient client, Models.AppsTradeOrderQueryOrderV2Request request, CancellationToken cancellationToken = default)
        {
            if (client is null) throw new ArgumentNullException(nameof(client));
            if (request is null) throw new ArgumentNullException(nameof(request));

            IFlurlRequest flurlReq = client
                .CreateFlurlRequest(request, HttpMethod.Post, "api", "apps", "trade", "v2", "order", "query_order")
                .WithHeader("access-token", request.AccessToken);

            return await client.SendFlurlRequestAsJsonAsync<Models.AppsTradeOrderQueryOrderV2Response>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
        }

        /// <summary>
        /// <para>异步调用 [POST] /api/apps/trade/v2/order/query_cps 接口。</para>
        /// <para>
        /// REF: <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/agency-trade-system/query-info/query-cps ]]> <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/self-operated-trading/query-info/query-cps ]]>
        /// </para>
        /// </summary>
        /// <param name="client"></param>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public static async Task<Models.AppsTradeOrderQueryCPSV2Response> ExecuteAppsTradeOrderQueryCPSV2Async(this DouyinOpenClient client, Models.AppsTradeOrderQueryCPSV2Request request, CancellationToken cancellationToken = default)
        {
            if (client is null) throw new ArgumentNullException(nameof(client));
            if (request is null) throw new ArgumentNullException(nameof(request));

            IFlurlRequest flurlReq = client
                .CreateFlurlRequest(request, HttpMethod.Post, "api", "apps", "trade", "v2", "order", "query_cps")
                .WithHeader("access-token", request.AccessToken);

            return await client.SendFlurlRequestAsJsonAsync<Models.AppsTradeOrderQueryCPSV2Response>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
        }

        /// <summary>
        /// <para>异步调用 [POST] /api/apps/trade/v2/order/create_order 接口。</para>
        /// <para>
        /// REF: <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/agency-trade-system/pre-order/create-order ]]> <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/self-operated-trading/pre-order/create-order ]]>
        /// </para>
        /// </summary>
        /// <param name="client"></param>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public static async Task<Models.AppsTradeOrderCreateOrderV2Response> ExecuteAppsTradeOrderCreateOrderV2Async(this DouyinOpenClient client, Models.AppsTradeOrderCreateOrderV2Request request, CancellationToken cancellationToken = default)
        {
            if (client is null) throw new ArgumentNullException(nameof(client));
            if (request is null) throw new ArgumentNullException(nameof(request));

            IFlurlRequest flurlReq = client
                .CreateFlurlRequest(request, HttpMethod.Post, "api", "apps", "trade", "v2", "order", "create_order")
                .WithHeader("access-token", request.AccessToken);

            return await client.SendFlurlRequestAsJsonAsync<Models.AppsTradeOrderCreateOrderV2Response>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
        }

        /// <summary>
        /// <para>异步调用 [POST] /api/apps/trade/v2/order/close_order 接口。</para>
        /// <para>
        /// REF: <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/self-operated-trading/pre-order/close_order ]]>
        /// </para>
        /// </summary>
        /// <param name="client"></param>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public static async Task<Models.AppsTradeOrderCloseOrderV2Response> ExecuteAppsTradeOrderCloseOrderV2Async(this DouyinOpenClient client, Models.AppsTradeOrderCloseOrderV2Request request, CancellationToken cancellationToken = default)
        {
            if (client is null) throw new ArgumentNullException(nameof(client));
            if (request is null) throw new ArgumentNullException(nameof(request));

            IFlurlRequest flurlReq = client
                .CreateFlurlRequest(request, HttpMethod.Post, "api", "apps", "trade", "v2", "order", "close_order")
                .WithHeader("access-token", request.AccessToken);

            return await client.SendFlurlRequestAsJsonAsync<Models.AppsTradeOrderCloseOrderV2Response>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
        }

        /// <summary>
        /// <para>异步调用 [POST] /api/apps/trade/v2/fulfillment/delivery_prepare 接口。</para>
        /// <para>
        /// REF: <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/agency-trade-system/fulfillment/douyin-code/delivery-prepare ]]> <br/>
        /// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/trade-system/self-operated-trading/write-off/douyin-code/delivery-preparation ]]>
        /// </para>
        /// </summary>
        /// <param name="client"></param>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public static async Task<Models.AppsTradeFulfillmentDeliveryPrepareV2Response> ExecuteAppsTradeFulfillmentDeliveryPrepareV2Async(this DouyinOpenClient client, Models.AppsTradeFulfillmentDeliveryPrepareV2Request request, CancellationToken cancellationToken = default)
        {
            if (client is null) throw new ArgumentNullException(nameof(client));
            if (request is null) throw new ArgumentNullException(nameof(request));

            IFlurlRequest flurlReq = client
                .CreateFlurlRequest(request, HttpMethod.Post, "api", "apps", "trade", "v2", "fulfillment", "delivery_prepare")
                .WithHeader("access-token", request.AccessToken);

            return await client.SendFlurlRequestAsJsonAsync<Models.AppsTradeFulfillmentDeliveryPrepareV2Response>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
        }

        /// <summary>
        /// <para
Download .txt
Showing preview only (388K chars total). Download the full file or copy to clipboard to get everything.
gitextract_ceduv36k/

├── .editorconfig
├── .gitee/
│   ├── ISSUE_TEMPLATE.zh-CN.md
│   └── PULL_REQUEST_TEMPLATE.zh-CN.md
├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── 1_bug_report.md
│   │   ├── 2_feature_request.md
│   │   └── 3_custom.md
│   ├── PULL_REQUEST_TEMPLATE/
│   │   ├── 1_bugfix.md
│   │   └── 2_enhancement.md
│   └── workflows/
│       ├── codeql-analysis.yml
│       └── super-linter.yml
├── .gitignore
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── SKIT.FlurlHttpClient.ByteDance.slnx
├── docs/
│   ├── DouyinOpen/
│   │   ├── Advanced_Dispose.md
│   │   ├── Advanced_HttpClient.md
│   │   ├── Advanced_HttpClientFactory.md
│   │   ├── Advanced_Interceptor.md
│   │   ├── Advanced_JsonSerializer.md
│   │   ├── Basic_EventDeserialization.md
│   │   ├── Basic_EventSignatureVerification.md
│   │   ├── Basic_Extensions.md
│   │   ├── Basic_GoodLifeSPIDecryption.md
│   │   ├── Basic_MobileNumberDecryption.md
│   │   ├── Basic_ModelDefinition.md
│   │   ├── Basic_Parameters.md
│   │   ├── Migration_V3.md
│   │   └── README.md
│   ├── DouyinShop/
│   │   └── README.md
│   ├── MicroApp/
│   │   ├── Advanced_Dispose.md
│   │   ├── Advanced_HttpClient.md
│   │   ├── Advanced_HttpClientFactory.md
│   │   ├── Advanced_Interceptor.md
│   │   ├── Advanced_JsonSerializer.md
│   │   ├── Basic_EventDeserialization.md
│   │   ├── Basic_EventSignatureVerification.md
│   │   ├── Basic_Extensions.md
│   │   ├── Basic_ModelDefinition.md
│   │   ├── Migration_V3.md
│   │   └── README.md
│   ├── TikTokGlobal/
│   │   ├── Basic_ModelDefinition.md
│   │   └── README.md
│   └── TikTokGlobalShop/
│       ├── Basic_LegacyAPI.md
│       ├── Basic_ModelDefinition.md
│       └── README.md
├── src/
│   ├── SKIT.FlurlHttpClient.ByteDance.DouyinOpen/
│   │   ├── DouyinOpenClient.cs
│   │   ├── DouyinOpenClientBuilder.cs
│   │   ├── DouyinOpenClientOptions.cs
│   │   ├── DouyinOpenEndpoints.cs
│   │   ├── DouyinOpenEvent.cs
│   │   ├── DouyinOpenException.cs
│   │   ├── DouyinOpenRequest.cs
│   │   ├── DouyinOpenResponse.cs
│   │   ├── Events/
│   │   │   ├── GoodLife/
│   │   │   │   ├── LifeMemberJoinEvent.cs
│   │   │   │   ├── LifeMemberLeaveEvent.cs
│   │   │   │   ├── LifeProductAuditEvent.cs
│   │   │   │   ├── LifeTradeCertificateNotifyEvent.cs
│   │   │   │   └── LifeTradeOrderNotifyEvent.cs
│   │   │   ├── IM/
│   │   │   │   ├── EnterGroupAuditChangeEvent.cs
│   │   │   │   ├── GroupFansEventEvent.cs
│   │   │   │   ├── IMAuthorizeEvent.cs
│   │   │   │   ├── IMEnterDirectMessageEvent.cs
│   │   │   │   ├── IMGroupReceiveMessageEvent.cs
│   │   │   │   ├── IMGroupSendMessageEvent.cs
│   │   │   │   ├── IMReceiveMessageEvent.cs
│   │   │   │   └── IMSendMessageEvent.cs
│   │   │   ├── Interaction/
│   │   │   │   ├── NewFollowActionEvent.cs
│   │   │   │   └── NewVideoDiggEvent.cs
│   │   │   ├── UnionAuth/
│   │   │   │   ├── UnionAuthInfoForBEvent.cs
│   │   │   │   └── UnionAuthInfoForCEvent.cs
│   │   │   └── Webhook/
│   │   │       ├── AuthorizeEvent.cs
│   │   │       ├── CreateVideoEvent.cs
│   │   │       ├── DialogPhoneEvent.cs
│   │   │       ├── ItemCommentReplyEvent.cs
│   │   │       ├── PersonalTabContactEvent.cs
│   │   │       ├── ReceiveMessageEvent.cs
│   │   │       ├── UnauthorizeEvent.cs
│   │   │       ├── VerifyWebhookEvent.cs
│   │   │       └── WebsiteContactEvent.cs
│   │   ├── Extensions/
│   │   │   ├── DouyinOpenClientDecryptionExtensions.cs
│   │   │   ├── DouyinOpenClientEventExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiAppsAuthExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiAppsTradeExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinAuthExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinIMExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinInteractiveExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinRoleExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinSchemaExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinUserExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiDouyinVideoExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiIMExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiIndustryExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteApiMatchExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteDataExternalExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteDevToolExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteDiscoveryExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteEnterpriseExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteEventExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteFansExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteGoodLifeExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteHotSearchExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteIMExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteImageExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteItemExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteJSExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteMarketServiceExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteMessageExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteNamekExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteOAuthExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteOpenExtensions.cs
│   │   │   ├── DouyinOpenClientExecutePOIExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteRoomExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteSandboxExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteShareIdExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteStarExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteTaskExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteToolExtensions.cs
│   │   │   ├── DouyinOpenClientExecuteVideoExtensions.cs
│   │   │   ├── DouyinOpenClientParameterExtensions.cs
│   │   │   └── DouyinOpenClientSPIExtensions.cs
│   │   ├── Models/
│   │   │   ├── ApiAppsAuth/
│   │   │   │   ├── AppsAuthGetOpenIdByCV1Request.cs
│   │   │   │   └── AppsAuthGetOpenIdByCV1Response.cs
│   │   │   ├── ApiAppsTrade/
│   │   │   │   ├── AppsTradeBookCreateBookV2Request.cs
│   │   │   │   ├── AppsTradeBookCreateBookV2Response.cs
│   │   │   │   ├── AppsTradeBookMerchantCancelBookV2Request.cs
│   │   │   │   ├── AppsTradeBookMerchantCancelBookV2Response.cs
│   │   │   │   ├── AppsTradeBookQueryBookV2Request.cs
│   │   │   │   ├── AppsTradeBookQueryBookV2Response.cs
│   │   │   │   ├── AppsTradeBookResultCallbackV2Request.cs
│   │   │   │   ├── AppsTradeBookResultCallbackV2Response.cs
│   │   │   │   ├── AppsTradeBookUserCancelBookV2Request.cs
│   │   │   │   ├── AppsTradeBookUserCancelBookV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentDeliveryPrepareV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentDeliveryPrepareV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentDeliveryVerifyV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentDeliveryVerifyV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentOrderCanUseV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentOrderCanUseV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentPushDeliveryV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentPushDeliveryV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentQueryUserCertificatesV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentQueryUserCertificatesV2Response.cs
│   │   │   │   ├── AppsTradeFulfillmentVerifyCancelV2Request.cs
│   │   │   │   ├── AppsTradeFulfillmentVerifyCancelV2Response.cs
│   │   │   │   ├── AppsTradeOrderCloseOrderV2Request.cs
│   │   │   │   ├── AppsTradeOrderCloseOrderV2Response.cs
│   │   │   │   ├── AppsTradeOrderCreateOrderV2Request.cs
│   │   │   │   ├── AppsTradeOrderCreateOrderV2Response.cs
│   │   │   │   ├── AppsTradeOrderQueryCPSV2Request.cs
│   │   │   │   ├── AppsTradeOrderQueryCPSV2Response.cs
│   │   │   │   ├── AppsTradeOrderQueryItemOrderInfoV2Request.cs
│   │   │   │   ├── AppsTradeOrderQueryItemOrderInfoV2Response.cs
│   │   │   │   ├── AppsTradeOrderQueryOrderV2Request.cs
│   │   │   │   ├── AppsTradeOrderQueryOrderV2Response.cs
│   │   │   │   ├── AppsTradeRefundCreateRefundV2Request.cs
│   │   │   │   ├── AppsTradeRefundCreateRefundV2Response.cs
│   │   │   │   ├── AppsTradeRefundMerchantAuditCallbackV2Request.cs
│   │   │   │   ├── AppsTradeRefundMerchantAuditCallbackV2Response.cs
│   │   │   │   ├── AppsTradeRefundQueryRefundV2Request.cs
│   │   │   │   ├── AppsTradeRefundQueryRefundV2Response.cs
│   │   │   │   ├── AppsTradeSettleCreateSettleV2Request.cs
│   │   │   │   ├── AppsTradeSettleCreateSettleV2Response.cs
│   │   │   │   ├── AppsTradeSettleQuerySettleV2Request.cs
│   │   │   │   └── AppsTradeSettleQuerySettleV2Response.cs
│   │   │   ├── ApiDouyinAuth/
│   │   │   │   ├── DouyinAuthGetOpenIdByBV1Request.cs
│   │   │   │   ├── DouyinAuthGetOpenIdByBV1Response.cs
│   │   │   │   ├── DouyinAuthGetOpenIdByCV1Request.cs
│   │   │   │   ├── DouyinAuthGetOpenIdByCV1Response.cs
│   │   │   │   ├── DouyinAuthGetRelatedIdV1Request.cs
│   │   │   │   └── DouyinAuthGetRelatedIdV1Response.cs
│   │   │   ├── ApiDouyinIM/
│   │   │   │   ├── DouyinIMDeleteAppletTemplateV1Request.cs
│   │   │   │   ├── DouyinIMDeleteAppletTemplateV1Response.cs
│   │   │   │   ├── DouyinIMGetAppletTemplateV1Request.cs
│   │   │   │   ├── DouyinIMGetAppletTemplateV1Response.cs
│   │   │   │   ├── DouyinIMSetAppletTemplateV1Request.cs
│   │   │   │   └── DouyinIMSetAppletTemplateV1Response.cs
│   │   │   ├── ApiDouyinInteractive/
│   │   │   │   ├── DouyinInteractiveIntentionLogListV1Request.cs
│   │   │   │   └── DouyinInteractiveIntentionLogListV1Response.cs
│   │   │   ├── ApiDouyinRole/
│   │   │   │   ├── DouyinRoleCheckV1Request.cs
│   │   │   │   └── DouyinRoleCheckV1Response.cs
│   │   │   ├── ApiDouyinSchema/
│   │   │   │   ├── DouyinSchemaGetChatV1Request.cs
│   │   │   │   ├── DouyinSchemaGetChatV1Response.cs
│   │   │   │   ├── DouyinSchemaGetItemInfoV1Request.cs
│   │   │   │   ├── DouyinSchemaGetItemInfoV1Response.cs
│   │   │   │   ├── DouyinSchemaGetLiveV1Request.cs
│   │   │   │   ├── DouyinSchemaGetLiveV1Response.cs
│   │   │   │   ├── DouyinSchemaGetShareV1Request.cs
│   │   │   │   ├── DouyinSchemaGetShareV1Response.cs
│   │   │   │   ├── DouyinSchemaGetUserProfileV1Request.cs
│   │   │   │   └── DouyinSchemaGetUserProfileV1Response.cs
│   │   │   ├── ApiDouyinUser/
│   │   │   │   ├── DouyinUserFansDataV1Request.cs
│   │   │   │   └── DouyinUserFansDataV1Response.cs
│   │   │   ├── ApiDouyinVideo/
│   │   │   │   ├── DouyinVideoBasicInfoV1Request.cs
│   │   │   │   ├── DouyinVideoBasicInfoV1Response.cs
│   │   │   │   ├── DouyinVideoCreateVideoV1Request.cs
│   │   │   │   ├── DouyinVideoCreateVideoV1Response.cs
│   │   │   │   ├── DouyinVideoDataV1Request.cs
│   │   │   │   ├── DouyinVideoDataV1Response.cs
│   │   │   │   ├── DouyinVideoListV1Request.cs
│   │   │   │   ├── DouyinVideoListV1Response.cs
│   │   │   │   ├── DouyinVideoUploadVideoV1Request.cs
│   │   │   │   ├── DouyinVideoUploadVideoV1Response.cs
│   │   │   │   ├── Iframe/
│   │   │   │   │   ├── DouyinVideoGetIframeByItemV1Request.cs
│   │   │   │   │   ├── DouyinVideoGetIframeByItemV1Response.cs
│   │   │   │   │   ├── DouyinVideoGetIframeByVideoV1Request.cs
│   │   │   │   │   └── DouyinVideoGetIframeByVideoV1Response.cs
│   │   │   │   ├── Image/
│   │   │   │   │   ├── DouyinVideoCreateImageTextV1Request.cs
│   │   │   │   │   ├── DouyinVideoCreateImageTextV1Response.cs
│   │   │   │   │   ├── DouyinVideoUploadImageV1Request.cs
│   │   │   │   │   └── DouyinVideoUploadImageV1Response.cs
│   │   │   │   └── Part/
│   │   │   │       ├── DouyinVideoCompleteVideoPartUploadV1Request.cs
│   │   │   │       ├── DouyinVideoCompleteVideoPartUploadV1Response.cs
│   │   │   │       ├── DouyinVideoInitVideoPartUploadV1Request.cs
│   │   │   │       ├── DouyinVideoInitVideoPartUploadV1Response.cs
│   │   │   │       ├── DouyinVideoUploadVideoPartV1Request.cs
│   │   │   │       └── DouyinVideoUploadVideoPartV1Response.cs
│   │   │   ├── ApiIM/
│   │   │   │   ├── IMMessageResourcesRequest.cs
│   │   │   │   └── IMMessageResourcesResponse.cs
│   │   │   ├── ApiIndustry/
│   │   │   │   ├── AppTestRelation/
│   │   │   │   │   ├── IndustrySolutionAddAppTestRelationV1Request.cs
│   │   │   │   │   ├── IndustrySolutionAddAppTestRelationV1Response.cs
│   │   │   │   │   ├── IndustrySolutionDeleteAppTestRelationV1Request.cs
│   │   │   │   │   ├── IndustrySolutionDeleteAppTestRelationV1Response.cs
│   │   │   │   │   ├── IndustrySolutionQueryAppTestRelationV1Request.cs
│   │   │   │   │   └── IndustrySolutionQueryAppTestRelationV1Response.cs
│   │   │   │   └── Implementation/
│   │   │   │       ├── IndustrySolutionQueryImplementationV1Request.cs
│   │   │   │       ├── IndustrySolutionQueryImplementationV1Response.cs
│   │   │   │       ├── IndustrySolutionSetImplementationV1Request.cs
│   │   │   │       └── IndustrySolutionSetImplementationV1Response.cs
│   │   │   ├── ApiMatch/
│   │   │   │   ├── MatchTaskboxAgencyQueryBillLinkV2Request.cs
│   │   │   │   ├── MatchTaskboxAgencyQueryBillLinkV2Response.cs
│   │   │   │   ├── MatchTaskboxAgencyQueryVideoSummaryDataV2Request.cs
│   │   │   │   ├── MatchTaskboxAgencyQueryVideoSummaryDataV2Response.cs
│   │   │   │   ├── MatchTaskboxChangeUserBindAgentV1Request.cs
│   │   │   │   ├── MatchTaskboxChangeUserBindAgentV1Response.cs
│   │   │   │   ├── MatchTaskboxGenerateAgentLinkV1Request.cs
│   │   │   │   ├── MatchTaskboxGenerateAgentLinkV1Response.cs
│   │   │   │   ├── MatchTaskboxGetAgencyUserBindRecordV1Request.cs
│   │   │   │   ├── MatchTaskboxGetAgencyUserBindRecordV1Response.cs
│   │   │   │   ├── MatchTaskboxQueryAppTaskIdV1Request.cs
│   │   │   │   ├── MatchTaskboxQueryAppTaskIdV1Response.cs
│   │   │   │   ├── MatchTaskboxQueryTaskInfoV1Request.cs
│   │   │   │   ├── MatchTaskboxQueryTaskInfoV1Response.cs
│   │   │   │   ├── MatchTaskboxQueryTaskVideoStatusV2Request.cs
│   │   │   │   ├── MatchTaskboxQueryTaskVideoStatusV2Response.cs
│   │   │   │   ├── MatchTaskboxQueryViolateTalentListV2Request.cs
│   │   │   │   ├── MatchTaskboxQueryViolateTalentListV2Response.cs
│   │   │   │   ├── MatchTaskboxSaveAgentV1Request.cs
│   │   │   │   └── MatchTaskboxSaveAgentV1Response.cs
│   │   │   ├── DataExternal/
│   │   │   │   ├── Anchor/
│   │   │   │   │   ├── DataExternalAnchorMpItemClickDistributionRequest.cs
│   │   │   │   │   └── DataExternalAnchorMpItemClickDistributionResponse.cs
│   │   │   │   ├── Billboard/
│   │   │   │   │   ├── Amusement/
│   │   │   │   │   │   ├── DataExternalBillboardAmusementNewRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardAmusementNewResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardAmusementOverallRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardAmusementOverallResponse.cs
│   │   │   │   │   ├── Car/
│   │   │   │   │   │   ├── DataExternalBillboardCarCommentRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarCommentResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarDriverRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarDriverResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarOverallRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarOverallResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarPlayRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarPlayResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCarUseRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardCarUseResponse.cs
│   │   │   │   │   ├── Cospa/
│   │   │   │   │   │   ├── DataExternalBillboardCospaBrainCavityRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaBrainCavityResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaNewRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaNewResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaOutshotRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaOutshotResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaOverallRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaOverallResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaPaintingRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaPaintingResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaQingmanRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaQingmanResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardCospaVoiceRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardCospaVoiceResponse.cs
│   │   │   │   │   ├── Drama/
│   │   │   │   │   │   ├── DataExternalBillboardDramaOverallRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardDramaOverallResponse.cs
│   │   │   │   │   ├── Food/
│   │   │   │   │   │   ├── DataExternalBillboardFoodNewRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodNewResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodOverallRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodOverallResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodShopRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodShopResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardFoodTutorialRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardFoodTutorialResponse.cs
│   │   │   │   │   ├── Game/
│   │   │   │   │   │   ├── DataExternalBillboardGameConsoleRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardGameConsoleResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardGameInformationRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardGameInformationResponse.cs
│   │   │   │   │   ├── HotVideo/
│   │   │   │   │   │   ├── DataExternalBillboardHotVideoRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardHotVideoResponse.cs
│   │   │   │   │   ├── Live/
│   │   │   │   │   │   ├── DataExternalBillboardLiveRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardLiveResponse.cs
│   │   │   │   │   ├── Music/
│   │   │   │   │   │   ├── DataExternalBillboardMusicHotRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardMusicHotResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardMusicOriginalRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardMusicOriginalResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardMusicSoarRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardMusicSoarResponse.cs
│   │   │   │   │   ├── Prop/
│   │   │   │   │   │   ├── DataExternalBillboardPropRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardPropResponse.cs
│   │   │   │   │   ├── Sport/
│   │   │   │   │   │   ├── DataExternalBillboardSportBasketballRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportBasketballResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportComprehensiveRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportComprehensiveResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportCultureRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportCultureResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportFitnessRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportFitnessResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportOutdoorsRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportOutdoorsResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportOverallRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportOverallResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportSoccerRequest.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportSoccerResponse.cs
│   │   │   │   │   │   ├── DataExternalBillboardSportTableTennisRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardSportTableTennisResponse.cs
│   │   │   │   │   ├── Stars/
│   │   │   │   │   │   ├── DataExternalBillboardStarsRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardStarsResponse.cs
│   │   │   │   │   ├── Topic/
│   │   │   │   │   │   ├── DataExternalBillboardTopicRequest.cs
│   │   │   │   │   │   └── DataExternalBillboardTopicResponse.cs
│   │   │   │   │   └── Travel/
│   │   │   │   │       ├── DataExternalBillboardTravelNewRequest.cs
│   │   │   │   │       ├── DataExternalBillboardTravelNewResponse.cs
│   │   │   │   │       ├── DataExternalBillboardTravelOverallRequest.cs
│   │   │   │   │       └── DataExternalBillboardTravelOverallResponse.cs
│   │   │   │   ├── Fans/
│   │   │   │   │   ├── DataExternalFansCommentRequest.cs
│   │   │   │   │   ├── DataExternalFansCommentResponse.cs
│   │   │   │   │   ├── DataExternalFansFavouriteRequest.cs
│   │   │   │   │   ├── DataExternalFansFavouriteResponse.cs
│   │   │   │   │   ├── DataExternalFansSourceRequest.cs
│   │   │   │   │   └── DataExternalFansSourceResponse.cs
│   │   │   │   ├── Item/
│   │   │   │   │   ├── DataExternalItemBaseRequest.cs
│   │   │   │   │   ├── DataExternalItemBaseResponse.cs
│   │   │   │   │   ├── DataExternalItemCommentRequest.cs
│   │   │   │   │   ├── DataExternalItemCommentResponse.cs
│   │   │   │   │   ├── DataExternalItemLikeRequest.cs
│   │   │   │   │   ├── DataExternalItemLikeResponse.cs
│   │   │   │   │   ├── DataExternalItemPlayRequest.cs
│   │   │   │   │   ├── DataExternalItemPlayResponse.cs
│   │   │   │   │   ├── DataExternalItemShareRequest.cs
│   │   │   │   │   └── DataExternalItemShareResponse.cs
│   │   │   │   ├── POI/
│   │   │   │   │   ├── DataExternalPOIBaseRequest.cs
│   │   │   │   │   ├── DataExternalPOIBaseResponse.cs
│   │   │   │   │   ├── DataExternalPOIBillboardRequest.cs
│   │   │   │   │   ├── DataExternalPOIBillboardResponse.cs
│   │   │   │   │   ├── DataExternalPOIClaimListRequest.cs
│   │   │   │   │   ├── DataExternalPOIClaimListResponse.cs
│   │   │   │   │   ├── DataExternalPOIServiceBaseRequest.cs
│   │   │   │   │   ├── DataExternalPOIServiceBaseResponse.cs
│   │   │   │   │   ├── DataExternalPOIServiceUserRequest.cs
│   │   │   │   │   ├── DataExternalPOIServiceUserResponse.cs
│   │   │   │   │   ├── DataExternalPOIUserRequest.cs
│   │   │   │   │   └── DataExternalPOIUserResponse.cs
│   │   │   │   └── User/
│   │   │   │       ├── DataExternalUserCommentRequest.cs
│   │   │   │       ├── DataExternalUserCommentResponse.cs
│   │   │   │       ├── DataExternalUserFansRequest.cs
│   │   │   │       ├── DataExternalUserFansResponse.cs
│   │   │   │       ├── DataExternalUserItemRequest.cs
│   │   │   │       ├── DataExternalUserItemResponse.cs
│   │   │   │       ├── DataExternalUserLikeRequest.cs
│   │   │   │       ├── DataExternalUserLikeResponse.cs
│   │   │   │       ├── DataExternalUserProfileRequest.cs
│   │   │   │       ├── DataExternalUserProfileResponse.cs
│   │   │   │       ├── DataExternalUserShareRequest.cs
│   │   │   │       └── DataExternalUserShareResponse.cs
│   │   │   ├── DevTool/
│   │   │   │   ├── DevToolMicroAppIsLegalRequest.cs
│   │   │   │   └── DevToolMicroAppIsLegalResponse.cs
│   │   │   ├── Discovery/
│   │   │   │   ├── DiscoveryEntertainmentRankItemRequest.cs
│   │   │   │   ├── DiscoveryEntertainmentRankItemResponse.cs
│   │   │   │   ├── DiscoveryEntertainmentRankVersionRequest.cs
│   │   │   │   └── DiscoveryEntertainmentRankVersionResponse.cs
│   │   │   ├── Enterprise/
│   │   │   │   └── Media/
│   │   │   │       ├── EnterpriseMediaDeleteRequest.cs
│   │   │   │       ├── EnterpriseMediaDeleteResponse.cs
│   │   │   │       ├── EnterpriseMediaListRequest.cs
│   │   │   │       ├── EnterpriseMediaListResponse.cs
│   │   │   │       ├── EnterpriseMediaTempUploadRequest.cs
│   │   │   │       ├── EnterpriseMediaTempUploadResponse.cs
│   │   │   │       ├── EnterpriseMediaUploadRequest.cs
│   │   │   │       └── EnterpriseMediaUploadResponse.cs
│   │   │   ├── Event/
│   │   │   │   ├── EventStatusListRequest.cs
│   │   │   │   ├── EventStatusListResponse.cs
│   │   │   │   ├── EventStatusUpdateRequest.cs
│   │   │   │   └── EventStatusUpdateResponse.cs
│   │   │   ├── Fans/
│   │   │   │   ├── FansCheckRequest.cs
│   │   │   │   └── FansCheckResponse.cs
│   │   │   ├── GoodLife/
│   │   │   │   ├── Aftersale/
│   │   │   │   │   ├── Audit/
│   │   │   │   │   │   ├── GoodLifeAftersaleAuditNotifyV1Request.cs
│   │   │   │   │   │   └── GoodLifeAftersaleAuditNotifyV1Response.cs
│   │   │   │   │   └── Order/
│   │   │   │   │       ├── GoodLifeAftersaleOrderApplyRefundV1Request.cs
│   │   │   │   │       ├── GoodLifeAftersaleOrderApplyRefundV1Response.cs
│   │   │   │   │       ├── GoodLifeAftersaleOrderMerchantRejectV1Request.cs
│   │   │   │   │       └── GoodLifeAftersaleOrderMerchantRejectV1Response.cs
│   │   │   │   ├── Fulfilment/
│   │   │   │   │   ├── Certificate/
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateCancelV1Request.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateCancelV1Response.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateGetV1Request.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateGetV1Response.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificatePrepareV1Request.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificatePrepareV1Response.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateVerifyRecordQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateVerifyRecordQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifeFulfilmentCertificateVerifyV1Request.cs
│   │   │   │   │   │   └── GoodLifeFulfilmentCertificateVerifyV1Response.cs
│   │   │   │   │   ├── Distribution/
│   │   │   │   │   │   ├── GoodLifeFulfilmentDistributionOrderSyncStatusV1Request.cs
│   │   │   │   │   │   └── GoodLifeFulfilmentDistributionOrderSyncStatusV1Response.cs
│   │   │   │   │   └── ReserveCode/
│   │   │   │   │       ├── GoodLifeFulfilmentReserveCodeBatchImportV1Request.cs
│   │   │   │   │       ├── GoodLifeFulfilmentReserveCodeBatchImportV1Response.cs
│   │   │   │   │       ├── GoodLifeFulfilmentReserveCodeBindOrderInfoV1Request.cs
│   │   │   │   │       └── GoodLifeFulfilmentReserveCodeBindOrderInfoV1Response.cs
│   │   │   │   ├── Goods/
│   │   │   │   │   ├── Calendar/
│   │   │   │   │   │   ├── GoodLifeGoodsCalendarAmountGroupSaveV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsCalendarAmountGroupSaveV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsCalendarStockGroupSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsCalendarStockGroupSaveV1Response.cs
│   │   │   │   │   ├── Category/
│   │   │   │   │   │   ├── GoodLifeGoodsCategoryGetV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsCategoryGetV1Response.cs
│   │   │   │   │   ├── Product/
│   │   │   │   │   │   ├── GoodLifeGoodsProductDraftGetV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductDraftGetV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductDraftQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductDraftQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductFreeAuditV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductFreeAuditV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOnlineGetV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOnlineGetV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOnlineQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOnlineQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOperateV1Request.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductOperateV1Response.cs
│   │   │   │   │   │   ├── GoodLifeGoodsProductSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsProductSaveV1Response.cs
│   │   │   │   │   ├── SKU/
│   │   │   │   │   │   ├── GoodLifeGoodsSKUBatchSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsSKUBatchSaveV1Response.cs
│   │   │   │   │   ├── SPU/
│   │   │   │   │   │   ├── GoodLifeGoodsSPUSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsSPUSaveV1Response.cs
│   │   │   │   │   ├── Stock/
│   │   │   │   │   │   ├── GoodLifeGoodsStockSyncV1Request.cs
│   │   │   │   │   │   └── GoodLifeGoodsStockSyncV1Response.cs
│   │   │   │   │   └── Template/
│   │   │   │   │       ├── GoodLifeGoodsTemplateGetV1Request.cs
│   │   │   │   │       └── GoodLifeGoodsTemplateGetV1Response.cs
│   │   │   │   ├── Member/
│   │   │   │   │   ├── GoodLifeMemberUnionIdGetV1Request.cs
│   │   │   │   │   ├── GoodLifeMemberUnionIdGetV1Response.cs
│   │   │   │   │   ├── GoodLifeMemberUserUpdateV1Request.cs
│   │   │   │   │   └── GoodLifeMemberUserUpdateV1Response.cs
│   │   │   │   ├── POI/
│   │   │   │   │   ├── Crowd/
│   │   │   │   │   │   ├── GoodLifePOICrowdSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifePOICrowdSaveV1Response.cs
│   │   │   │   │   ├── GoodLifePOIClaimV1Request.cs
│   │   │   │   │   ├── GoodLifePOIClaimV1Response.cs
│   │   │   │   │   ├── GoodLifePOIDecorateV1Request.cs
│   │   │   │   │   ├── GoodLifePOIDecorateV1Response.cs
│   │   │   │   │   ├── GoodLifePOIMatchRelationQueryV1Request.cs
│   │   │   │   │   ├── GoodLifePOIMatchRelationQueryV1Response.cs
│   │   │   │   │   ├── GoodLifePOIMatchTaskQueryV1Request.cs
│   │   │   │   │   ├── GoodLifePOIMatchTaskQueryV1Response.cs
│   │   │   │   │   ├── GoodLifePOIMatchTaskSubmitV1Request.cs
│   │   │   │   │   ├── GoodLifePOIMatchTaskSubmitV1Response.cs
│   │   │   │   │   ├── GoodLifePOISyncV1Request.cs
│   │   │   │   │   ├── GoodLifePOISyncV1Response.cs
│   │   │   │   │   ├── GoodLifePOITaskQueryV1Request.cs
│   │   │   │   │   ├── GoodLifePOITaskQueryV1Response.cs
│   │   │   │   │   ├── GoodLifePOIUpdateV1Request.cs
│   │   │   │   │   └── GoodLifePOIUpdateV1Response.cs
│   │   │   │   ├── Partner/
│   │   │   │   │   ├── Commission/
│   │   │   │   │   │   ├── GoodLifePartnerCommissionRecordGetV1Request.cs
│   │   │   │   │   │   ├── GoodLifePartnerCommissionRecordGetV1Response.cs
│   │   │   │   │   │   ├── GoodLifePartnerCommissionRecordQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifePartnerCommissionRecordQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifePartnerProductCommissionQueryV1Request.cs
│   │   │   │   │   │   ├── GoodLifePartnerProductCommissionQueryV1Response.cs
│   │   │   │   │   │   ├── GoodLifePartnerProductCommissionSaveV1Request.cs
│   │   │   │   │   │   └── GoodLifePartnerProductCommissionSaveV1Response.cs
│   │   │   │   │   └── Order/
│   │   │   │   │       ├── GoodLifePartnerOrderCreateV1Request.cs
│   │   │   │   │       ├── GoodLifePartnerOrderCreateV1Response.cs
│   │   │   │   │       ├── GoodLifePartnerOrderGetV1Request.cs
│   │   │   │   │       ├── GoodLifePartnerOrderGetV1Response.cs
│   │   │   │   │       ├── GoodLifePartnerOrderQueryV1Request.cs
│   │   │   │   │       └── GoodLifePartnerOrderQueryV1Response.cs
│   │   │   │   ├── Settle/
│   │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryByOrderV1Request.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryByOrderV1Response.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryV1Request.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryV1Response.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerQueryByOrderV1Request.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerQueryByOrderV1Response.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerQueryRecordByCertificateV1Request.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerQueryRecordByCertificateV1Response.cs
│   │   │   │   │   ├── GoodLifeSettleLedgerQueryV1Request.cs
│   │   │   │   │   └── GoodLifeSettleLedgerQueryV1Response.cs
│   │   │   │   ├── Shop/
│   │   │   │   │   ├── GoodLifeShopPOIQueryV1Request.cs
│   │   │   │   │   └── GoodLifeShopPOIQueryV1Response.cs
│   │   │   │   └── Trade/
│   │   │   │       ├── GoodLifeTradeBookGetV1Request.cs
│   │   │   │       ├── GoodLifeTradeBookGetV1Response.cs
│   │   │   │       ├── GoodLifeTradeBuyMerchantConfirmOrderV1Request.cs
│   │   │   │       ├── GoodLifeTradeBuyMerchantConfirmOrderV1Response.cs
│   │   │   │       ├── GoodLifeTradeOrderQueryV1Request.cs
│   │   │   │       └── GoodLifeTradeOrderQueryV1Response.cs
│   │   │   ├── HotSearch/
│   │   │   │   ├── HotSearchSentencesRequest.cs
│   │   │   │   ├── HotSearchSentencesResponse.cs
│   │   │   │   ├── HotSearchTrendingSentencesRequest.cs
│   │   │   │   ├── HotSearchTrendingSentencesResponse.cs
│   │   │   │   ├── HotSearchVideosRequest.cs
│   │   │   │   └── HotSearchVideosResponse.cs
│   │   │   ├── IM/
│   │   │   │   ├── Authorize/
│   │   │   │   │   ├── IMAuthorizeStatusRequest.cs
│   │   │   │   │   ├── IMAuthorizeStatusResponse.cs
│   │   │   │   │   ├── IMAuthorizeUserListRequest.cs
│   │   │   │   │   └── IMAuthorizeUserListResponse.cs
│   │   │   │   ├── Card/
│   │   │   │   │   ├── IMDeleteRetainConsultCardRequest.cs
│   │   │   │   │   ├── IMDeleteRetainConsultCardResponse.cs
│   │   │   │   │   ├── IMGetRetainConsultCardRequest.cs
│   │   │   │   │   ├── IMGetRetainConsultCardResponse.cs
│   │   │   │   │   ├── IMSaveRetainConsultCardRequest.cs
│   │   │   │   │   └── IMSaveRetainConsultCardResponse.cs
│   │   │   │   ├── Group/
│   │   │   │   │   ├── IMGroupEnterAuditGetRequest.cs
│   │   │   │   │   ├── IMGroupEnterAuditGetResponse.cs
│   │   │   │   │   ├── IMGroupEnterAuditSetRequest.cs
│   │   │   │   │   ├── IMGroupEnterAuditSetResponse.cs
│   │   │   │   │   ├── IMGroupFansCountRequest.cs
│   │   │   │   │   ├── IMGroupFansCountResponse.cs
│   │   │   │   │   ├── IMGroupFansCreateRequest.cs
│   │   │   │   │   ├── IMGroupFansCreateResponse.cs
│   │   │   │   │   ├── IMGroupFansListRequest.cs
│   │   │   │   │   ├── IMGroupFansListResponse.cs
│   │   │   │   │   ├── IMGroupSettingDisableRequest.cs
│   │   │   │   │   ├── IMGroupSettingDisableResponse.cs
│   │   │   │   │   ├── IMGroupSettingSetRequest.cs
│   │   │   │   │   └── IMGroupSettingSetResponse.cs
│   │   │   │   └── Message/
│   │   │   │       ├── IMRecallMessageRequest.cs
│   │   │   │       ├── IMRecallMessageResponse.cs
│   │   │   │       ├── IMSendMessageGroupRequest.cs
│   │   │   │       ├── IMSendMessageGroupResponse.cs
│   │   │   │       ├── IMSendMessageRequest.cs
│   │   │   │       └── IMSendMessageResponse.cs
│   │   │   ├── Image/
│   │   │   │   ├── ImageCreateRequest.cs
│   │   │   │   ├── ImageCreateResponse.cs
│   │   │   │   ├── ImageUploadRequest.cs
│   │   │   │   └── ImageUploadResponse.cs
│   │   │   ├── Item/
│   │   │   │   └── Comment/
│   │   │   │       ├── ItemCommentListRequest.cs
│   │   │   │       ├── ItemCommentListResponse.cs
│   │   │   │       ├── ItemCommentReplyListRequest.cs
│   │   │   │       ├── ItemCommentReplyListResponse.cs
│   │   │   │       ├── ItemCommentReplyRequest.cs
│   │   │   │       ├── ItemCommentReplyResponse.cs
│   │   │   │       ├── ItemCommentTopRequest.cs
│   │   │   │       └── ItemCommentTopResponse.cs
│   │   │   ├── JS/
│   │   │   │   ├── JSGetTicketRequest.cs
│   │   │   │   └── JSGetTicketResponse.cs
│   │   │   ├── MarketService/
│   │   │   │   ├── MarketServiceUserDeletePurchaseInfoRequest.cs
│   │   │   │   ├── MarketServiceUserDeletePurchaseInfoResponse.cs
│   │   │   │   ├── MarketServiceUserInsertPurchaseInfoRequest.cs
│   │   │   │   ├── MarketServiceUserInsertPurchaseInfoResponse.cs
│   │   │   │   ├── MarketServiceUserPurchaseListRequest.cs
│   │   │   │   ├── MarketServiceUserPurchaseListResponse.cs
│   │   │   │   ├── MarketServiceUserRemainTimesDecreaseRequest.cs
│   │   │   │   └── MarketServiceUserRemainTimesDecreaseResponse.cs
│   │   │   ├── Message/
│   │   │   │   ├── MessageOnceSendRequest.cs
│   │   │   │   └── MessageOnceSendResponse.cs
│   │   │   ├── Namek/
│   │   │   │   ├── NamekFulfilmentPrepareRequest.cs
│   │   │   │   └── NamekFulfilmentPrepareResponse.cs
│   │   │   ├── OAuth/
│   │   │   │   ├── OAuthAccessTokenRequest.cs
│   │   │   │   ├── OAuthAccessTokenResponse.cs
│   │   │   │   ├── OAuthBusinessScopesRequest.cs
│   │   │   │   ├── OAuthBusinessScopesResponse.cs
│   │   │   │   ├── OAuthBusinessTokenRequest.cs
│   │   │   │   ├── OAuthBusinessTokenResponse.cs
│   │   │   │   ├── OAuthClientTokenRequest.cs
│   │   │   │   ├── OAuthClientTokenResponse.cs
│   │   │   │   ├── OAuthRefreshBusinessTokenRequest.cs
│   │   │   │   ├── OAuthRefreshBusinessTokenResponse.cs
│   │   │   │   ├── OAuthRefreshTokenRequest.cs
│   │   │   │   ├── OAuthRefreshTokenResponse.cs
│   │   │   │   ├── OAuthRenewRefreshTokenRequest.cs
│   │   │   │   ├── OAuthRenewRefreshTokenResponse.cs
│   │   │   │   └── User/
│   │   │   │       ├── OAuthUserInfoRequest.cs
│   │   │   │       └── OAuthUserInfoResponse.cs
│   │   │   ├── Open/
│   │   │   │   ├── OpenGetTicketRequest.cs
│   │   │   │   └── OpenGetTicketResponse.cs
│   │   │   ├── POI/
│   │   │   │   ├── Coupon/
│   │   │   │   │   ├── POICouponSyncCouponAvailableV2Request.cs
│   │   │   │   │   ├── POICouponSyncCouponAvailableV2Response.cs
│   │   │   │   │   ├── POICouponSyncV2Request.cs
│   │   │   │   │   └── POICouponSyncV2Response.cs
│   │   │   │   ├── External/
│   │   │   │   │   ├── Hotel/
│   │   │   │   │   │   ├── POIExternalHotelOrderCancelRequest.cs
│   │   │   │   │   │   ├── POIExternalHotelOrderCancelResponse.cs
│   │   │   │   │   │   ├── POIExternalHotelOrderCommitRequest.cs
│   │   │   │   │   │   ├── POIExternalHotelOrderCommitResponse.cs
│   │   │   │   │   │   ├── POIExternalHotelOrderStatusRequest.cs
│   │   │   │   │   │   ├── POIExternalHotelOrderStatusResponse.cs
│   │   │   │   │   │   ├── POIExternalHotelSKURequest.cs
│   │   │   │   │   │   └── POIExternalHotelSKUResponse.cs
│   │   │   │   │   └── PresaleGroupon/
│   │   │   │   │       ├── POIExternalPresaleGrouponOrderCancelRequest.cs
│   │   │   │   │       ├── POIExternalPresaleGrouponOrderCancelResponse.cs
│   │   │   │   │       ├── POIExternalPresaleGrouponOrderCommitRequest.cs
│   │   │   │   │       ├── POIExternalPresaleGrouponOrderCommitResponse.cs
│   │   │   │   │       ├── POIExternalPresaleGrouponOrderCreateRequest.cs
│   │   │   │   │       └── POIExternalPresaleGrouponOrderCreateResponse.cs
│   │   │   │   ├── Order/
│   │   │   │   │   ├── POIOrderBillTokenRequest.cs
│   │   │   │   │   ├── POIOrderBillTokenResponse.cs
│   │   │   │   │   ├── POIOrderConfirmCancelPrepareRequest.cs
│   │   │   │   │   ├── POIOrderConfirmCancelPrepareResponse.cs
│   │   │   │   │   ├── POIOrderConfirmPrepareRequest.cs
│   │   │   │   │   ├── POIOrderConfirmPrepareResponse.cs
│   │   │   │   │   ├── POIOrderConfirmRequest.cs
│   │   │   │   │   ├── POIOrderConfirmResponse.cs
│   │   │   │   │   ├── POIOrderListTokenRequest.cs
│   │   │   │   │   ├── POIOrderListTokenResponse.cs
│   │   │   │   │   ├── POIOrderStatusRequest.cs
│   │   │   │   │   ├── POIOrderStatusResponse.cs
│   │   │   │   │   ├── POIOrderSyncRequest.cs
│   │   │   │   │   └── POIOrderSyncResponse.cs
│   │   │   │   ├── POIBaseQueryAMapRequest.cs
│   │   │   │   ├── POIBaseQueryAMapResponse.cs
│   │   │   │   ├── POIQueryRequest.cs
│   │   │   │   ├── POIQueryResponse.cs
│   │   │   │   ├── POISearchKeywordRequest.cs
│   │   │   │   ├── POISearchKeywordResponse.cs
│   │   │   │   ├── Plan/
│   │   │   │   │   ├── POICommonPlanDetailRequest.cs
│   │   │   │   │   ├── POICommonPlanDetailResponse.cs
│   │   │   │   │   ├── POICommonPlanSaveRequest.cs
│   │   │   │   │   ├── POICommonPlanSaveResponse.cs
│   │   │   │   │   ├── POICommonPlanTalentDetailRequest.cs
│   │   │   │   │   ├── POICommonPlanTalentDetailResponse.cs
│   │   │   │   │   ├── POICommonPlanTalentListRequest.cs
│   │   │   │   │   ├── POICommonPlanTalentListResponse.cs
│   │   │   │   │   ├── POICommonPlanTalentMediaListRequest.cs
│   │   │   │   │   ├── POICommonPlanTalentMediaListResponse.cs
│   │   │   │   │   ├── POICommonPlanUpdateStatusRequest.cs
│   │   │   │   │   ├── POICommonPlanUpdateStatusResponse.cs
│   │   │   │   │   ├── POIPlanListRequest.cs
│   │   │   │   │   └── POIPlanListResponse.cs
│   │   │   │   ├── SKU/
│   │   │   │   │   ├── POISKUSyncRequest.cs
│   │   │   │   │   └── POISKUSyncResponse.cs
│   │   │   │   ├── SPU/
│   │   │   │   │   ├── POISPUGetV2Request.cs
│   │   │   │   │   ├── POISPUGetV2Response.cs
│   │   │   │   │   ├── POISPUStatusSyncV2Request.cs
│   │   │   │   │   ├── POISPUStatusSyncV2Response.cs
│   │   │   │   │   ├── POISPUStockUpdateV2Request.cs
│   │   │   │   │   ├── POISPUStockUpdateV2Response.cs
│   │   │   │   │   ├── POISPUSyncV2Request.cs
│   │   │   │   │   ├── POISPUSyncV2Response.cs
│   │   │   │   │   ├── POISPUTakeRateSyncV2Request.cs
│   │   │   │   │   └── POISPUTakeRateSyncV2Response.cs
│   │   │   │   ├── ServiceProvider/
│   │   │   │   │   ├── POIServiceProviderSyncV2Request.cs
│   │   │   │   │   └── POIServiceProviderSyncV2Response.cs
│   │   │   │   └── Supplier/
│   │   │   │       ├── POISupplierMatchV2Request.cs
│   │   │   │       ├── POISupplierMatchV2Response.cs
│   │   │   │       ├── POISupplierQueryAllRequest.cs
│   │   │   │       ├── POISupplierQueryAllResponse.cs
│   │   │   │       ├── POISupplierQueryCallbackRequest.cs
│   │   │   │       ├── POISupplierQueryCallbackResponse.cs
│   │   │   │       ├── POISupplierQueryRequest.cs
│   │   │   │       ├── POISupplierQueryResponse.cs
│   │   │   │       ├── POISupplierQuerySupplierV2Request.cs
│   │   │   │       ├── POISupplierQuerySupplierV2Response.cs
│   │   │   │       ├── POISupplierQueryTaskV2Request.cs
│   │   │   │       ├── POISupplierQueryTaskV2Response.cs
│   │   │   │       ├── POISupplierSyncRequest.cs
│   │   │   │       └── POISupplierSyncResponse.cs
│   │   │   ├── Room/
│   │   │   │   ├── RoomDataAudienceGetRequest.cs
│   │   │   │   ├── RoomDataAudienceGetResponse.cs
│   │   │   │   ├── RoomDataBaseGetRequest.cs
│   │   │   │   ├── RoomDataBaseGetResponse.cs
│   │   │   │   ├── RoomDataInteractiveGetRequest.cs
│   │   │   │   ├── RoomDataInteractiveGetResponse.cs
│   │   │   │   ├── RoomDataRoomIdGetRequest.cs
│   │   │   │   └── RoomDataRoomIdGetResponse.cs
│   │   │   ├── Sandbox/
│   │   │   │   ├── SandboxWebhookEventSendRequest.cs
│   │   │   │   └── SandboxWebhookEventSendResponse.cs
│   │   │   ├── ShareId/
│   │   │   │   ├── ShareIdRequest.cs
│   │   │   │   └── ShareIdResponse.cs
│   │   │   ├── Star/
│   │   │   │   ├── StarAuthorScoreRequest.cs
│   │   │   │   ├── StarAuthorScoreResponse.cs
│   │   │   │   ├── StarAuthorScoreV2Request.cs
│   │   │   │   ├── StarAuthorScoreV2Response.cs
│   │   │   │   ├── StarHotListRequest.cs
│   │   │   │   └── StarHotListResponse.cs
│   │   │   ├── Task/
│   │   │   │   ├── TaskPostingBindVideoRequest.cs
│   │   │   │   ├── TaskPostingBindVideoResponse.cs
│   │   │   │   ├── TaskPostingCreateRequest.cs
│   │   │   │   ├── TaskPostingCreateResponse.cs
│   │   │   │   ├── TaskPostingUserRequest.cs
│   │   │   │   └── TaskPostingUserResponse.cs
│   │   │   ├── Tool/
│   │   │   │   ├── ToolImagexClientUploadRequest.cs
│   │   │   │   └── ToolImagexClientUploadResponse.cs
│   │   │   └── Video/
│   │   │       ├── Comment/
│   │   │       │   ├── VideoCommentListRequest.cs
│   │   │       │   ├── VideoCommentListResponse.cs
│   │   │       │   ├── VideoCommentReplyListRequest.cs
│   │   │       │   ├── VideoCommentReplyListResponse.cs
│   │   │       │   ├── VideoCommentReplyRequest.cs
│   │   │       │   ├── VideoCommentReplyResponse.cs
│   │   │       │   ├── VideoCommentTopRequest.cs
│   │   │       │   └── VideoCommentTopResponse.cs
│   │   │       ├── Search/
│   │   │       │   ├── VideoSearchCommentListRequest.cs
│   │   │       │   ├── VideoSearchCommentListResponse.cs
│   │   │       │   ├── VideoSearchCommentReplyListRequest.cs
│   │   │       │   ├── VideoSearchCommentReplyListResponse.cs
│   │   │       │   ├── VideoSearchCommentReplyRequest.cs
│   │   │       │   ├── VideoSearchCommentReplyResponse.cs
│   │   │       │   ├── VideoSearchRequest.cs
│   │   │       │   └── VideoSearchResponse.cs
│   │   │       ├── VideoSourceRequest.cs
│   │   │       └── VideoSourceResponse.cs
│   │   ├── README.md
│   │   ├── SKIT.FlurlHttpClient.ByteDance.DouyinOpen.csproj
│   │   ├── Settings/
│   │   │   └── Credentials.cs
│   │   └── Utilities/
│   │       ├── AESUtility.cs
│   │       ├── HMACUtility.cs
│   │       ├── MD5Utility.cs
│   │       ├── SHA1Utility.cs
│   │       ├── SHA256Utility.cs
│   │       └── [Internal]/
│   │           └── HttpContentBuilder.cs
│   ├── SKIT.FlurlHttpClient.ByteDance.DouyinShop/
│   │   ├── Constants/
│   │   │   ├── Internal/
│   │   │   │   └── FormDataFields.cs
│   │   │   └── SignAlgorithms.cs
│   │   ├── Converters/
│   │   │   └── Internal/
│   │   │       ├── Newtonsoft.Json/
│   │   │       │   └── List[String]/
│   │   │       │       └── TextualStringListWithPipeSplitConverter.cs
│   │   │       └── System.Text.Json/
│   │   │           ├── Array[String]/
│   │   │           │   └── NumericalStringArrayConverter.cs
│   │   │           └── List[String]/
│   │   │               └── TextualStringListWithPipeSplitConverter.cs
│   │   ├── DouyinShopClient.cs
│   │   ├── DouyinShopClientOptions.cs
│   │   ├── DouyinShopEndpoints.cs
│   │   ├── DouyinShopEvent.cs
│   │   ├── DouyinShopException.cs
│   │   ├── DouyinShopRequest.cs
│   │   ├── DouyinShopResponse.cs
│   │   ├── Events/
│   │   │   ├── IOPTrade/
│   │   │   │   ├── IOPTradeDistributionCancelEvent.cs
│   │   │   │   ├── IOPTradeDistributionEvent.cs
│   │   │   │   ├── IOPTradeStatusReturnEvent.cs
│   │   │   │   ├── IOPTradeUpdateReceiverEvent.cs
│   │   │   │   └── IOPTradeUpdateRemarkEvent.cs
│   │   │   ├── Product/
│   │   │   │   └── ProductChangeEvent.cs
│   │   │   ├── Refund/
│   │   │   │   ├── Arbitrate/
│   │   │   │   │   ├── RefundArbitrateAppliedEvent.cs
│   │   │   │   │   ├── RefundArbitrateAuditedEvent.cs
│   │   │   │   │   ├── RefundArbitrateCancelledEvent.cs
│   │   │   │   │   ├── RefundArbitrateDiscussUploadEvent.cs
│   │   │   │   │   ├── RefundArbitrateServiceInterveneEvent.cs
│   │   │   │   │   ├── RefundArbitrateSubmitedEvent.cs
│   │   │   │   │   └── RefundArbitrateSubmitingEvent.cs
│   │   │   │   ├── RefundAgreedEvent.cs
│   │   │   │   ├── RefundClosedEvent.cs
│   │   │   │   ├── RefundCreatedEvent.cs
│   │   │   │   ├── RefundExchangeComfirmedEvent.cs
│   │   │   │   ├── RefundExpirationChangeEvent.cs
│   │   │   │   ├── RefundModifiedEvent.cs
│   │   │   │   ├── RefundRefusedEvent.cs
│   │   │   │   ├── RefundSuccessEvent.cs
│   │   │   │   └── Return/
│   │   │   │       ├── RefundBuyerReturnGoodsEvent.cs
│   │   │   │       ├── RefundReturnAgreedEvent.cs
│   │   │   │       ├── RefundReturnApplyAgreedEvent.cs
│   │   │   │       └── RefundReturnApplyRefusedEvent.cs
│   │   │   └── Trade/
│   │   │       ├── TradeAddressChangeAppliedEvent.cs
│   │   │       ├── TradeAddressChangedEvent.cs
│   │   │       ├── TradeAmountChangedEvent.cs
│   │   │       ├── TradeAppointmentEvent.cs
│   │   │       ├── TradeCanceledEvent.cs
│   │   │       ├── TradeCreateEvent.cs
│   │   │       ├── TradeLogisticsChangedEvent.cs
│   │   │       ├── TradeMemoModifyEvent.cs
│   │   │       ├── TradePaidEvent.cs
│   │   │       ├── TradePartlySellerShipEvent.cs
│   │   │       ├── TradePendingEvent.cs
│   │   │       ├── TradeSellerShipEvent.cs
│   │   │       └── TradeSuccessEvent.cs
│   │   ├── Exceptions/
│   │   │   ├── DouyinShopEventSerializationException.cs
│   │   │   ├── DouyinShopRequestMarshalException.cs
│   │   │   ├── DouyinShopRequestSignatureException.cs
│   │   │   └── DouyinShopRequestTimeoutException.cs
│   │   ├── Extensions/
│   │   │   ├── DouyinShopClientEventExtensions.cs
│   │   │   ├── DouyinShopClientExecuteAddressExtensions.cs
│   │   │   ├── DouyinShopClientExecuteAftersaleExtensions.cs
│   │   │   ├── DouyinShopClientExecuteAllianceExtensions.cs
│   │   │   ├── DouyinShopClientExecuteAntiSpamExtensions.cs
│   │   │   ├── DouyinShopClientExecuteBTASExtensions.cs
│   │   │   ├── DouyinShopClientExecuteBuyinExtensions.cs
│   │   │   ├── DouyinShopClientExecuteCouponsExtensions.cs
│   │   │   ├── DouyinShopClientExecuteCrossBorderExtensions.cs
│   │   │   ├── DouyinShopClientExecuteDutyFreeExtensions.cs
│   │   │   ├── DouyinShopClientExecuteFreightTemplateExtensions.cs
│   │   │   ├── DouyinShopClientExecuteIOPExtensions.cs
│   │   │   ├── DouyinShopClientExecuteLogisticsExtensions.cs
│   │   │   ├── DouyinShopClientExecuteMaterialExtensions.cs
│   │   │   ├── DouyinShopClientExecuteMemberExtensions.cs
│   │   │   ├── DouyinShopClientExecuteOpportunityProductExtensions.cs
│   │   │   ├── DouyinShopClientExecuteOrderCodeExtensions.cs
│   │   │   ├── DouyinShopClientExecuteOrderExtensions.cs
│   │   │   ├── DouyinShopClientExecuteProductExtensions.cs
│   │   │   ├── DouyinShopClientExecutePromiseExtensions.cs
│   │   │   ├── DouyinShopClientExecuteRecycleExtensions.cs
│   │   │   ├── DouyinShopClientExecuteSKUExtensions.cs
│   │   │   ├── DouyinShopClientExecuteSPUExtensions.cs
│   │   │   ├── DouyinShopClientExecuteShopExtensions.cs
│   │   │   ├── DouyinShopClientExecuteStorageExtensions.cs
│   │   │   ├── DouyinShopClientExecuteTokenExtensions.cs
│   │   │   ├── DouyinShopClientExecuteWarehouseExtensions.cs
│   │   │   └── DouyinShopClientExecuteYuncExtensions.cs
│   │   ├── Interceptors/
│   │   │   ├── DouyinShopRequestFormatInterceptor.cs
│   │   │   └── DouyinShopRequestSignInterceptor.cs
│   │   ├── Models/
│   │   │   ├── Address/
│   │   │   │   ├── AddressCreateRequest.cs
│   │   │   │   ├── AddressCreateResponse.cs
│   │   │   │   ├── AddressGetAreasByProvinceRequest.cs
│   │   │   │   ├── AddressGetAreasByProvinceResponse.cs
│   │   │   │   ├── AddressGetProvinceRequest.cs
│   │   │   │   ├── AddressGetProvinceResponse.cs
│   │   │   │   ├── AddressListRequest.cs
│   │   │   │   ├── AddressListResponse.cs
│   │   │   │   ├── AddressUpdateRequest.cs
│   │   │   │   └── AddressUpdateResponse.cs
│   │   │   ├── Aftersale/
│   │   │   │   ├── AftersaleAddOrderRemarkRequest.cs
│   │   │   │   ├── AftersaleAddOrderRemarkResponse.cs
│   │   │   │   ├── AftersaleApplyLogisticsInterceptRequest.cs
│   │   │   │   ├── AftersaleApplyLogisticsInterceptResponse.cs
│   │   │   │   ├── AftersaleBuyerExchangeConfirmRequest.cs
│   │   │   │   ├── AftersaleBuyerExchangeConfirmResponse.cs
│   │   │   │   ├── AftersaleBuyerExchangeRequest.cs
│   │   │   │   ├── AftersaleBuyerExchangeResponse.cs
│   │   │   │   ├── AftersaleCancelSendGoodsSuccessRequest.cs
│   │   │   │   ├── AftersaleCancelSendGoodsSuccessResponse.cs
│   │   │   │   ├── AftersaleDetailRequest.cs
│   │   │   │   ├── AftersaleDetailResponse.cs
│   │   │   │   ├── AftersaleListRequest.cs
│   │   │   │   ├── AftersaleListResponse.cs
│   │   │   │   ├── AftersaleOpenAfterSaleChannelRequest.cs
│   │   │   │   ├── AftersaleOpenAfterSaleChannelResponse.cs
│   │   │   │   ├── AftersaleOperateRequest.cs
│   │   │   │   ├── AftersaleOperateResponse.cs
│   │   │   │   ├── AftersaleRefundListSearchRequest.cs
│   │   │   │   ├── AftersaleRefundListSearchResponse.cs
│   │   │   │   ├── AftersaleReturnGoodsToWareHouseSuccessRequest.cs
│   │   │   │   ├── AftersaleReturnGoodsToWareHouseSuccessResponse.cs
│   │   │   │   ├── AftersaleSubmitEvidenceRequest.cs
│   │   │   │   ├── AftersaleSubmitEvidenceResponse.cs
│   │   │   │   ├── AftersaleTimeExtendRequest.cs
│   │   │   │   └── AftersaleTimeExtendResponse.cs
│   │   │   ├── Alliance/
│   │   │   │   ├── AllianceGetOrderListRequest.cs
│   │   │   │   ├── AllianceGetOrderListResponse.cs
│   │   │   │   └── MaterialsProducts/
│   │   │   │       ├── AllianceMaterialsProductsDetailsRequest.cs
│   │   │   │       ├── AllianceMaterialsProductsDetailsResponse.cs
│   │   │   │       ├── AllianceMaterialsProductsSearchRequest.cs
│   │   │   │       └── AllianceMaterialsProductsSearchResponse.cs
│   │   │   ├── AntiSpam/
│   │   │   │   ├── AntiSpamOrderQueryRequest.cs
│   │   │   │   ├── AntiSpamOrderQueryResponse.cs
│   │   │   │   ├── AntiSpamOrderSendRequest.cs
│   │   │   │   ├── AntiSpamOrderSendResponse.cs
│   │   │   │   ├── AntiSpamUserLoginRequest.cs
│   │   │   │   └── AntiSpamUserLoginResponse.cs
│   │   │   ├── BTAS/
│   │   │   │   ├── BTASGetInspectionOrderRequest.cs
│   │   │   │   ├── BTASGetInspectionOrderResponse.cs
│   │   │   │   ├── BTASGetOrderInspectionResultRequest.cs
│   │   │   │   ├── BTASGetOrderInspectionResultResponse.cs
│   │   │   │   ├── BTASListBrandRequest.cs
│   │   │   │   ├── BTASListBrandResponse.cs
│   │   │   │   ├── BTASSaveInspectionInformationRequest.cs
│   │   │   │   ├── BTASSaveInspectionInformationResponse.cs
│   │   │   │   ├── BTASSaveInspectionOnlineRequest.cs
│   │   │   │   ├── BTASSaveInspectionOnlineResponse.cs
│   │   │   │   ├── BTASShippingRequest.cs
│   │   │   │   └── BTASShippingResponse.cs
│   │   │   ├── Buyin/
│   │   │   │   ├── Activity/
│   │   │   │   │   ├── BuyinActivitySearchRequest.cs
│   │   │   │   │   ├── BuyinActivitySearchResponse.cs
│   │   │   │   │   ├── BuyinApplyActivitiesRequest.cs
│   │   │   │   │   └── BuyinApplyActivitiesResponse.cs
│   │   │   │   ├── BuyinInstituteOrderAdsRequest.cs
│   │   │   │   ├── BuyinInstituteOrderAdsResponse.cs
│   │   │   │   ├── OrientPlan/
│   │   │   │   │   ├── BuyinCreateOrUpdateOrientPlanRequest.cs
│   │   │   │   │   ├── BuyinCreateOrUpdateOrientPlanResponse.cs
│   │   │   │   │   ├── BuyinOrientPlanAuditRequest.cs
│   │   │   │   │   ├── BuyinOrientPlanAuditResponse.cs
│   │   │   │   │   ├── BuyinOrientPlanAuthorsAddRequest.cs
│   │   │   │   │   ├── BuyinOrientPlanAuthorsAddResponse.cs
│   │   │   │   │   ├── BuyinOrientPlanAuthorsRequest.cs
│   │   │   │   │   ├── BuyinOrientPlanAuthorsResponse.cs
│   │   │   │   │   ├── BuyinOrientPlanControlRequest.cs
│   │   │   │   │   ├── BuyinOrientPlanControlResponse.cs
│   │   │   │   │   ├── BuyinOrientPlanListRequest.cs
│   │   │   │   │   └── BuyinOrientPlanListResponse.cs
│   │   │   │   └── Plan/
│   │   │   │       ├── BuyinExclusivePlanRequest.cs
│   │   │   │       ├── BuyinExclusivePlanResponse.cs
│   │   │   │       ├── BuyinSimplePlanRequest.cs
│   │   │   │       └── BuyinSimplePlanResponse.cs
│   │   │   ├── Coupons/
│   │   │   │   ├── CouponsAbandonRequest.cs
│   │   │   │   ├── CouponsAbandonResponse.cs
│   │   │   │   ├── CouponsCancelVerifyRequest.cs
│   │   │   │   ├── CouponsCancelVerifyResponse.cs
│   │   │   │   ├── CouponsSyncV2Request.cs
│   │   │   │   ├── CouponsSyncV2Response.cs
│   │   │   │   ├── CouponsVerifyV2Request.cs
│   │   │   │   └── CouponsVerifyV2Response.cs
│   │   │   ├── CrossBorder/
│   │   │   │   ├── CrossBorderBankAccountVerifyRequest.cs
│   │   │   │   ├── CrossBorderBankAccountVerifyResponse.cs
│   │   │   │   ├── CrossBorderOrderInterceptionRequest.cs
│   │   │   │   ├── CrossBorderOrderInterceptionResponse.cs
│   │   │   │   ├── CrossBorderOrderListRequest.cs
│   │   │   │   ├── CrossBorderOrderListResponse.cs
│   │   │   │   ├── CrossBorderQueryBalanceRequest.cs
│   │   │   │   ├── CrossBorderQueryBalanceResponse.cs
│   │   │   │   ├── CrossBorderStockTakingRequest.cs
│   │   │   │   ├── CrossBorderStockTakingResponse.cs
│   │   │   │   ├── CrossBorderStockTransformRequest.cs
│   │   │   │   ├── CrossBorderStockTransformResponse.cs
│   │   │   │   ├── CrossBorderWarehouseInOutboundEventRequest.cs
│   │   │   │   └── CrossBorderWarehouseInOutboundEventResponse.cs
│   │   │   ├── DutyFree/
│   │   │   │   ├── DutyFreeOrderConfirmRequest.cs
│   │   │   │   └── DutyFreeOrderConfirmResponse.cs
│   │   │   ├── FreightTemplate/
│   │   │   │   ├── FreightTemplateListRequest.cs
│   │   │   │   └── FreightTemplateListResponse.cs
│   │   │   ├── IOP/
│   │   │   │   ├── IOPOrderInformationRequest.cs
│   │   │   │   ├── IOPOrderInformationResponse.cs
│   │   │   │   ├── IOPOrderListRequest.cs
│   │   │   │   ├── IOPOrderListResponse.cs
│   │   │   │   ├── IOPRoleGetRequest.cs
│   │   │   │   ├── IOPRoleGetResponse.cs
│   │   │   │   ├── Seller/
│   │   │   │   │   ├── IOPSellerCancelDistributeRequest.cs
│   │   │   │   │   ├── IOPSellerCancelDistributeResponse.cs
│   │   │   │   │   ├── IOPSellerDistributeRequest.cs
│   │   │   │   │   ├── IOPSellerDistributeResponse.cs
│   │   │   │   │   ├── IOPSellerOrderInformationRequest.cs
│   │   │   │   │   ├── IOPSellerOrderInformationResponse.cs
│   │   │   │   │   ├── IOPSellerOrderListRequest.cs
│   │   │   │   │   ├── IOPSellerOrderListResponse.cs
│   │   │   │   │   ├── IOPSellerSupplierListRequest.cs
│   │   │   │   │   └── IOPSellerSupplierListResponse.cs
│   │   │   │   └── Waybill/
│   │   │   │       ├── IOPWaybillCancelRequest.cs
│   │   │   │       ├── IOPWaybillCancelResponse.cs
│   │   │   │       ├── IOPWaybillGetRequest.cs
│   │   │   │       ├── IOPWaybillGetResponse.cs
│   │   │   │       ├── IOPWaybillReturnRequest.cs
│   │   │   │       ├── IOPWaybillReturnResponse.cs
│   │   │   │       ├── IOPWaybillUpdateRequest.cs
│   │   │   │       └── IOPWaybillUpdateResponse.cs
│   │   │   ├── Logistics/
│   │   │   │   ├── LogisticsCancelOrderRequest.cs
│   │   │   │   ├── LogisticsCancelOrderResponse.cs
│   │   │   │   ├── LogisticsGetCustomTemplateListRequest.cs
│   │   │   │   ├── LogisticsGetCustomTemplateListResponse.cs
│   │   │   │   ├── LogisticsGetOutRangeRequest.cs
│   │   │   │   ├── LogisticsGetOutRangeResponse.cs
│   │   │   │   ├── LogisticsListShopNetSiteRequest.cs
│   │   │   │   ├── LogisticsListShopNetSiteResponse.cs
│   │   │   │   ├── LogisticsNewCreateOrderRequest.cs
│   │   │   │   ├── LogisticsNewCreateOrderResponse.cs
│   │   │   │   ├── LogisticsTemplateListRequest.cs
│   │   │   │   ├── LogisticsTemplateListResponse.cs
│   │   │   │   ├── LogisticsTrackNoRouteDetailRequest.cs
│   │   │   │   ├── LogisticsTrackNoRouteDetailResponse.cs
│   │   │   │   ├── LogisticsUpdateOrderRequest.cs
│   │   │   │   └── LogisticsUpdateOrderResponse.cs
│   │   │   ├── Material/
│   │   │   │   ├── Folder/
│   │   │   │   │   ├── MaterialCreateFolderRequest.cs
│   │   │   │   │   ├── MaterialCreateFolderResponse.cs
│   │   │   │   │   ├── MaterialDeleteFolderRequest.cs
│   │   │   │   │   ├── MaterialDeleteFolderResponse.cs
│   │   │   │   │   ├── MaterialEditFolderRequest.cs
│   │   │   │   │   ├── MaterialEditFolderResponse.cs
│   │   │   │   │   ├── MaterialGetFolderInformationRequest.cs
│   │   │   │   │   ├── MaterialGetFolderInformationResponse.cs
│   │   │   │   │   ├── MaterialMoveFolderToRecyleBinRequest.cs
│   │   │   │   │   ├── MaterialMoveFolderToRecyleBinResponse.cs
│   │   │   │   │   ├── MaterialRecoverFolderRequest.cs
│   │   │   │   │   ├── MaterialRecoverFolderResponse.cs
│   │   │   │   │   ├── MaterialSearchFolderRequest.cs
│   │   │   │   │   └── MaterialSearchFolderResponse.cs
│   │   │   │   ├── Material/
│   │   │   │   │   ├── MaterialDeleteMaterialRequest.cs
│   │   │   │   │   ├── MaterialDeleteMaterialResponse.cs
│   │   │   │   │   ├── MaterialEditMaterialRequest.cs
│   │   │   │   │   ├── MaterialEditMaterialResponse.cs
│   │   │   │   │   ├── MaterialMoveMaterialToRecyleBinRequest.cs
│   │   │   │   │   ├── MaterialMoveMaterialToRecyleBinResponse.cs
│   │   │   │   │   ├── MaterialQueryMaterialDetailRequest.cs
│   │   │   │   │   ├── MaterialQueryMaterialDetailResponse.cs
│   │   │   │   │   ├── MaterialRecoverMaterialRequest.cs
│   │   │   │   │   ├── MaterialRecoverMaterialResponse.cs
│   │   │   │   │   ├── MaterialSearchMaterialRequest.cs
│   │   │   │   │   └── MaterialSearchMaterialResponse.cs
│   │   │   │   ├── MaterialUploadImageSyncRequest.cs
│   │   │   │   ├── MaterialUploadImageSyncResponse.cs
│   │   │   │   ├── MaterialUploadVideoAsyncRequest.cs
│   │   │   │   └── MaterialUploadVideoAsyncResponse.cs
│   │   │   ├── Member/
│   │   │   │   ├── MemberBatchUpdateRequest.cs
│   │   │   │   ├── MemberBatchUpdateResponse.cs
│   │   │   │   ├── MemberSearchListRequest.cs
│   │   │   │   └── MemberSearchListResponse.cs
│   │   │   ├── OpportunityProduct/
│   │   │   │   ├── OpportunityProductApplyRequest.cs
│   │   │   │   ├── OpportunityProductApplyResponse.cs
│   │   │   │   ├── OpportunityProductClueRequest.cs
│   │   │   │   ├── OpportunityProductClueResponse.cs
│   │   │   │   ├── OpportunityProductGetApplyProgressRequest.cs
│   │   │   │   └── OpportunityProductGetApplyProgressResponse.cs
│   │   │   ├── Order/
│   │   │   │   ├── CrossBorder/
│   │   │   │   │   ├── OrderGetCrossBorderFulfillInformationRequest.cs
│   │   │   │   │   └── OrderGetCrossBorderFulfillInformationResponse.cs
│   │   │   │   ├── Encryption/
│   │   │   │   │   ├── OrderBatchDecryptRequest.cs
│   │   │   │   │   ├── OrderBatchDecryptResponse.cs
│   │   │   │   │   ├── OrderBatchEncryptRequest.cs
│   │   │   │   │   ├── OrderBatchEncryptResponse.cs
│   │   │   │   │   ├── OrderBatchSearchIndexRequest.cs
│   │   │   │   │   ├── OrderBatchSearchIndexResponse.cs
│   │   │   │   │   ├── OrderBatchSensitiveRequest.cs
│   │   │   │   │   └── OrderBatchSensitiveResponse.cs
│   │   │   │   ├── Insurance/
│   │   │   │   │   ├── OrderInsuranceRequest.cs
│   │   │   │   │   ├── OrderInsuranceResponse.cs
│   │   │   │   │   ├── OrderPolicyRequest.cs
│   │   │   │   │   └── OrderPolicyResponse.cs
│   │   │   │   ├── Invoice/
│   │   │   │   │   ├── OrderInvoiceListRequest.cs
│   │   │   │   │   ├── OrderInvoiceListResponse.cs
│   │   │   │   │   ├── OrderInvoiceUploadRequest.cs
│   │   │   │   │   └── OrderInvoiceUploadResponse.cs
│   │   │   │   ├── Logistics/
│   │   │   │   │   ├── OrderLogisticsAddRequest.cs
│   │   │   │   │   ├── OrderLogisticsAddResponse.cs
│   │   │   │   │   ├── OrderLogisticsCompanyListRequest.cs
│   │   │   │   │   ├── OrderLogisticsCompanyListResponse.cs
│   │   │   │   │   ├── OrderLogisticsEditRequest.cs
│   │   │   │   │   ├── OrderLogisticsEditResponse.cs
│   │   │   │   │   └── Package/
│   │   │   │   │       ├── OrderLogisticsAddMultiplePackageRequest.cs
│   │   │   │   │       ├── OrderLogisticsAddMultiplePackageResponse.cs
│   │   │   │   │       ├── OrderLogisticsAddSinglePackageRequest.cs
│   │   │   │   │       ├── OrderLogisticsAddSinglePackageResponse.cs
│   │   │   │   │       ├── OrderLogisticsEditByPackageRequest.cs
│   │   │   │   │       └── OrderLogisticsEditByPackageResponse.cs
│   │   │   │   ├── OrderAddOrderRemarkRequest.cs
│   │   │   │   ├── OrderAddOrderRemarkResponse.cs
│   │   │   │   ├── OrderAddSerialNumberRequest.cs
│   │   │   │   ├── OrderAddSerialNumberResponse.cs
│   │   │   │   ├── OrderAddressAppliedSwitchRequest.cs
│   │   │   │   ├── OrderAddressAppliedSwitchResponse.cs
│   │   │   │   ├── OrderAddressConfirmRequest.cs
│   │   │   │   ├── OrderAddressConfirmResponse.cs
│   │   │   │   ├── OrderAddressModifyRequest.cs
│   │   │   │   ├── OrderAddressModifyResponse.cs
│   │   │   │   ├── OrderAddressSwitchConfigRequest.cs
│   │   │   │   ├── OrderAddressSwitchConfigResponse.cs
│   │   │   │   ├── OrderDetailRequest.cs
│   │   │   │   ├── OrderDetailResponse.cs
│   │   │   │   ├── OrderSearchListRequest.cs
│   │   │   │   ├── OrderSearchListResponse.cs
│   │   │   │   ├── OrderUpdateOrderAmountRequest.cs
│   │   │   │   ├── OrderUpdateOrderAmountResponse.cs
│   │   │   │   ├── OrderUpdatePostAmountRequest.cs
│   │   │   │   ├── OrderUpdatePostAmountResponse.cs
│   │   │   │   ├── Service/
│   │   │   │   │   ├── OrderGetServiceListRequest.cs
│   │   │   │   │   ├── OrderGetServiceListResponse.cs
│   │   │   │   │   ├── OrderReplyServiceRequest.cs
│   │   │   │   │   ├── OrderReplyServiceResponse.cs
│   │   │   │   │   ├── OrderServiceDetailRequest.cs
│   │   │   │   │   └── OrderServiceDetailResponse.cs
│   │   │   │   └── Settle/
│   │   │   │       ├── OrderDownloadSettleItemToShopRequest.cs
│   │   │   │       ├── OrderDownloadSettleItemToShopResponse.cs
│   │   │   │       ├── OrderDownloadToShopRequest.cs
│   │   │   │       ├── OrderDownloadToShopResponse.cs
│   │   │   │       ├── OrderGetSettleBillDetailRequest.cs
│   │   │   │       ├── OrderGetSettleBillDetailResponse.cs
│   │   │   │       ├── OrderSettleRequest.cs
│   │   │   │       └── OrderSettleResponse.cs
│   │   │   ├── OrderCode/
│   │   │   │   ├── OrderCodeBatchGetOrderCodeByShopRequest.cs
│   │   │   │   ├── OrderCodeBatchGetOrderCodeByShopResponse.cs
│   │   │   │   ├── OrderCodeDownloadOrderCodeByShopRequest.cs
│   │   │   │   ├── OrderCodeDownloadOrderCodeByShopResponse.cs
│   │   │   │   ├── OrderCodeERPShopBindOrderCodeRequest.cs
│   │   │   │   └── OrderCodeERPShopBindOrderCodeResponse.cs
│   │   │   ├── Product/
│   │   │   │   ├── ProductAddV2Request.cs
│   │   │   │   ├── ProductAddV2Response.cs
│   │   │   │   ├── ProductDeleteRequest.cs
│   │   │   │   ├── ProductDeleteResponse.cs
│   │   │   │   ├── ProductDetailRequest.cs
│   │   │   │   ├── ProductDetailResponse.cs
│   │   │   │   ├── ProductEditBuyerLimitRequest.cs
│   │   │   │   ├── ProductEditBuyerLimitResponse.cs
│   │   │   │   ├── ProductEditV2Request.cs
│   │   │   │   ├── ProductEditV2Response.cs
│   │   │   │   ├── ProductGetCategoryPropertyRequest.cs
│   │   │   │   ├── ProductGetCategoryPropertyResponse.cs
│   │   │   │   ├── ProductListV2Request.cs
│   │   │   │   ├── ProductListV2Response.cs
│   │   │   │   ├── ProductSetOfflineRequest.cs
│   │   │   │   ├── ProductSetOfflineResponse.cs
│   │   │   │   ├── ProductSetOnlineRequest.cs
│   │   │   │   ├── ProductSetOnlineResponse.cs
│   │   │   │   └── Quality/
│   │   │   │       ├── ProductQualityDetailRequest.cs
│   │   │   │       ├── ProductQualityDetailResponse.cs
│   │   │   │       ├── ProductQualityListRequest.cs
│   │   │   │       ├── ProductQualityListResponse.cs
│   │   │   │       ├── ProductQualityTaskRequest.cs
│   │   │   │       └── ProductQualityTaskResponse.cs
│   │   │   ├── Promise/
│   │   │   │   ├── PromiseSetSKUShipTimeRequest.cs
│   │   │   │   └── PromiseSetSKUShipTimeResponse.cs
│   │   │   ├── Recycle/
│   │   │   │   ├── RecycleApplyChangePriceRequest.cs
│   │   │   │   ├── RecycleApplyChangePriceResponse.cs
│   │   │   │   ├── RecycleBuyerGetOrderDetailRequest.cs
│   │   │   │   ├── RecycleBuyerGetOrderDetailResponse.cs
│   │   │   │   ├── RecycleBuyerGetOrderListRequest.cs
│   │   │   │   ├── RecycleBuyerGetOrderListResponse.cs
│   │   │   │   ├── RecycleChangePriceRequest.cs
│   │   │   │   ├── RecycleChangePriceResponse.cs
│   │   │   │   ├── RecycleConfirmReceiveRequest.cs
│   │   │   │   ├── RecycleConfirmReceiveResponse.cs
│   │   │   │   ├── RecycleCreatePriceRequest.cs
│   │   │   │   ├── RecycleCreatePriceResponse.cs
│   │   │   │   ├── RecycleLogisticsBackRequest.cs
│   │   │   │   ├── RecycleLogisticsBackResponse.cs
│   │   │   │   ├── RecycleQualityTestingResultRequest.cs
│   │   │   │   ├── RecycleQualityTestingResultResponse.cs
│   │   │   │   ├── RecycleSellSucceedRequest.cs
│   │   │   │   └── RecycleSellSucceedResponse.cs
│   │   │   ├── SKU/
│   │   │   │   ├── SKUDetailRequest.cs
│   │   │   │   ├── SKUDetailResponse.cs
│   │   │   │   ├── SKUEditCodeRequest.cs
│   │   │   │   ├── SKUEditCodeResponse.cs
│   │   │   │   ├── SKUEditPriceRequest.cs
│   │   │   │   ├── SKUEditPriceResponse.cs
│   │   │   │   ├── SKUListRequest.cs
│   │   │   │   ├── SKUListResponse.cs
│   │   │   │   ├── SKUStockNumberRequest.cs
│   │   │   │   ├── SKUStockNumberResponse.cs
│   │   │   │   ├── SKUSyncStockBatchRequest.cs
│   │   │   │   ├── SKUSyncStockBatchResponse.cs
│   │   │   │   ├── SKUSyncStockRequest.cs
│   │   │   │   └── SKUSyncStockResponse.cs
│   │   │   ├── SPU/
│   │   │   │   ├── SPUAddShopSPURequest.cs
│   │   │   │   ├── SPUAddShopSPUResponse.cs
│   │   │   │   ├── SPUGetKeyPropertyByCategoryIdRequest.cs
│   │   │   │   ├── SPUGetKeyPropertyByCategoryIdResponse.cs
│   │   │   │   ├── SPUGetSPUInformationBySPUIdRequest.cs
│   │   │   │   ├── SPUGetSPUInformationBySPUIdResponse.cs
│   │   │   │   ├── SPUGetSPUTemplateRequest.cs
│   │   │   │   └── SPUGetSPUTemplateResponse.cs
│   │   │   ├── Shop/
│   │   │   │   ├── ShopBandListRequest.cs
│   │   │   │   ├── ShopBandListResponse.cs
│   │   │   │   ├── ShopGetShopCategoryRequest.cs
│   │   │   │   └── ShopGetShopCategoryResponse.cs
│   │   │   ├── Storage/
│   │   │   │   ├── StorageNotifySaleReturnStatusRequest.cs
│   │   │   │   └── StorageNotifySaleReturnStatusResponse.cs
│   │   │   ├── Token/
│   │   │   │   ├── TokenCreateRequest.cs
│   │   │   │   ├── TokenCreateResponse.cs
│   │   │   │   ├── TokenRefreshRequest.cs
│   │   │   │   └── TokenRefreshResponse.cs
│   │   │   ├── Warehouse/
│   │   │   │   ├── WarehouseAdjustInventoryRequest.cs
│   │   │   │   ├── WarehouseAdjustInventoryResponse.cs
│   │   │   │   ├── WarehouseCreateBatchRequest.cs
│   │   │   │   ├── WarehouseCreateBatchResponse.cs
│   │   │   │   ├── WarehouseCreateRequest.cs
│   │   │   │   ├── WarehouseCreateResponse.cs
│   │   │   │   ├── WarehouseEditRequest.cs
│   │   │   │   ├── WarehouseEditResponse.cs
│   │   │   │   ├── WarehouseInformationRequest.cs
│   │   │   │   ├── WarehouseInformationResponse.cs
│   │   │   │   ├── WarehouseListRequest.cs
│   │   │   │   ├── WarehouseListResponse.cs
│   │   │   │   ├── WarehouseRemoveAddressRequest.cs
│   │   │   │   ├── WarehouseRemoveAddressResponse.cs
│   │   │   │   ├── WarehouseSetAddressBatchRequest.cs
│   │   │   │   ├── WarehouseSetAddressBatchResponse.cs
│   │   │   │   ├── WarehouseSetAddressRequest.cs
│   │   │   │   ├── WarehouseSetAddressResponse.cs
│   │   │   │   ├── WarehouseSetPriorityRequest.cs
│   │   │   │   └── WarehouseSetPriorityResponse.cs
│   │   │   └── Yunc/
│   │   │       ├── ERP/
│   │   │       │   ├── YuncCancelOutboundOrderToBusinessRequest.cs
│   │   │       │   ├── YuncCancelOutboundOrderToBusinessResponse.cs
│   │   │       │   ├── YuncCreateOutboundOrderToBusinessRequest.cs
│   │   │       │   ├── YuncCreateOutboundOrderToBusinessResponse.cs
│   │   │       │   ├── YuncERPCargoSinglePushRequest.cs
│   │   │       │   ├── YuncERPCargoSinglePushResponse.cs
│   │   │       │   ├── YuncERPInboundCancelRequest.cs
│   │   │       │   ├── YuncERPInboundCancelResponse.cs
│   │   │       │   ├── YuncERPInboundCreateRequest.cs
│   │   │       │   ├── YuncERPInboundCreateResponse.cs
│   │   │       │   ├── YuncShopWarehouseRefQueryRequest.cs
│   │   │       │   └── YuncShopWarehouseRefQueryResponse.cs
│   │   │       └── WMS/
│   │   │           ├── YuncAdjustInventoryRequest.cs
│   │   │           ├── YuncAdjustInventoryResponse.cs
│   │   │           ├── YuncPushOutboundFeedbackRequest.cs
│   │   │           ├── YuncPushOutboundFeedbackResponse.cs
│   │   │           ├── YuncWMSInboundCallbackRequest.cs
│   │   │           └── YuncWMSInboundCallbackResponse.cs
│   │   ├── README.md
│   │   ├── SKIT.FlurlHttpClient.ByteDance.DouyinShop.csproj
│   │   ├── Settings/
│   │   │   └── Credentials.cs
│   │   └── Utilities/
│   │       ├── HMACUtility.cs
│   │       ├── Internal/
│   │       │   ├── FileHttpContentBuilder.cs
│   │       │   └── JsonUtility.cs
│   │       └── MD5Utility.cs
│   ├── SKIT.FlurlHttpClient.ByteDance.MicroApp/
│   │   ├── Converters/
│   │   │   └── [Internal]/
│   │   │       ├── Newtonsoft.Json/
│   │   │       │   └── DateTimeOffset/
│   │   │       │       └── CstDateTimeOffsetConverter.cs
│   │   │       └── System.Text.Json/
│   │   │           └── DateTimeOffset/
│   │   │               └── CstDateTimeOffsetConverter.cs
│   │   ├── DouyinMicroAppClient.cs
│   │   ├── DouyinMicroAppClientBuilder.cs
│   │   ├── DouyinMicroAppClientOptions.cs
│   │   ├── DouyinMicroAppEndpoints.cs
│   │   ├── DouyinMicroAppEvent.cs
│   │   ├── DouyinMicroAppException.cs
│   │   ├── DouyinMicroAppRequest.cs
│   │   ├── DouyinMicroAppResponse.cs
│   │   ├── Events/
│   │   │   └── Message/
│   │   │       ├── ImageMessageEvent.cs
│   │   │       └── TextMessageEvent.cs
│   │   ├── ExtendedSDK/
│   │   │   ├── OpenApi/
│   │   │   │   ├── DouyinMicroAppOpenApiClient.cs
│   │   │   │   ├── DouyinMicroAppOpenApiClientBuilder.cs
│   │   │   │   ├── DouyinMicroAppOpenApiClientOptions.cs
│   │   │   │   ├── DouyinMicroAppOpenApiEndpoints.cs
│   │   │   │   ├── DouyinMicroAppOpenApiEvent.cs
│   │   │   │   ├── DouyinMicroAppOpenApiRequest.cs
│   │   │   │   ├── DouyinMicroAppOpenApiResponse.cs
│   │   │   │   ├── Events/
│   │   │   │   │   ├── Auth/
│   │   │   │   │   │   ├── ComponentAuthorizedEvent.cs
│   │   │   │   │   │   ├── ComponentPushTicketEvent.cs
│   │   │   │   │   │   ├── ComponentUnauthorizedEvent.cs
│   │   │   │   │   │   └── ComponentUpdateAuthorizedEvent.cs
│   │   │   │   │   ├── MicroAppManagement/
│   │   │   │   │   │   ├── AppNameResetEvent.cs
│   │   │   │   │   │   ├── ModifyAppCategoryEvent.cs
│   │   │   │   │   │   ├── ModifyAppIconEvent.cs
│   │   │   │   │   │   ├── ModifyAppIntroductionEvent.cs
│   │   │   │   │   │   ├── ModifyAppNameEvent.cs
│   │   │   │   │   │   └── PackageAuditEvent.cs
│   │   │   │   │   └── MicroAppOperation/
│   │   │   │   │       ├── AliasAuditResultEvent.cs
│   │   │   │   │       ├── ApplyCapabilityEvent.cs
│   │   │   │   │       ├── ApplyLiveCapabilityEvent.cs
│   │   │   │   │       ├── ApplyPhoneNumberCapabilityEvent.cs
│   │   │   │   │       ├── ApplyShareTemplateEvent.cs
│   │   │   │   │       ├── ApplyVideoCapabilityEvent.cs
│   │   │   │   │       ├── AwemePermissionAuditResultEvent.cs
│   │   │   │   │       ├── AwemeVideoKeywordAuditResultEvent.cs
│   │   │   │   │       ├── BindAwemeUserEvent.cs
│   │   │   │   │       ├── CreateSubscribeNotificationTemplateResultEvent.cs
│   │   │   │   │       ├── ScopeQuotaAuditResultEvent.cs
│   │   │   │   │       ├── SearchTagAuditResultEvent.cs
│   │   │   │   │       └── SelfMountBindEvent.cs
│   │   │   │   ├── Extensions/
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientEventExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsBasicInfoExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsCategoryExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsCreditScoreExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsDomainExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsFileExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsICPRecordExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsMicroAppExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsPackageVersionExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteAppsTrialExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteLegacyAuthExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteLegacyMicroAppExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteLegacySettleExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteLegacyThirdPartyExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecutePlatformWebhookExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteTpAppAuthExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteTpAppDomainExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteTpAppFileExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppOpenApiClientExecuteTpAppTemplateExtensions.cs
│   │   │   │   │   └── DouyinMicroAppOpenApiClientParameterExtensions.cs
│   │   │   │   ├── Models/
│   │   │   │   │   ├── AppsBasicInfo/
│   │   │   │   │   │   ├── OpenAppsBasicInfoCheckAppNameV2Request.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoCheckAppNameV2Response.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoGetInfoV2Request.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoGetInfoV2Response.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoGetQrcodeV2Request.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoGetQrcodeV2Response.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoModifyAppIconV2Request.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoModifyAppIconV2Response.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoModifyAppIntroductionV2Request.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoModifyAppIntroductionV2Response.cs
│   │   │   │   │   │   ├── OpenAppsBasicInfoModifyAppNameV2Request.cs
│   │   │   │   │   │   └── OpenAppsBasicInfoModifyAppNameV2Response.cs
│   │   │   │   │   ├── AppsCategory/
│   │   │   │   │   │   ├── OpenAppsCategoryAddCategoriesV1Request.cs
│   │   │   │   │   │   ├── OpenAppsCategoryAddCategoriesV1Response.cs
│   │   │   │   │   │   ├── OpenAppsCategoryDeleteCategoriesV1Request.cs
│   │   │   │   │   │   ├── OpenAppsCategoryDeleteCategoriesV1Response.cs
│   │   │   │   │   │   ├── OpenAppsCategoryGetAllCategoriesV1Request.cs
│   │   │   │   │   │   ├── OpenAppsCategoryGetAllCategoriesV1Response.cs
│   │   │   │   │   │   ├── OpenAppsCategoryGetAuditCategoriesV1Request.cs
│   │   │   │   │   │   ├── OpenAppsCategoryGetAuditCategoriesV1Response.cs
│   │   │   │   │   │   ├── OpenAppsCategorySupplyCategoriesV1Request.cs
│   │   │   │   │   │   └── OpenAppsCategorySupplyCategoriesV1Response.cs
│   │   │   │   │   ├── AppsCreditScore/
│   │   │   │   │   │   ├── OpenAppsCreditScoreGetCreditScoreV2Request.cs
│   │   │   │   │   │   └── OpenAppsCreditScoreGetCreditScoreV2Response.cs
│   │   │   │   │   ├── AppsDomain/
│   │   │   │   │   │   ├── OpenAppsDomainModifyServerDomainV2Request.cs
│   │   │   │   │   │   ├── OpenAppsDomainModifyServerDomainV2Response.cs
│   │   │   │   │   │   ├── OpenAppsDomainModifyWebviewDomainV2Request.cs
│   │   │   │   │   │   └── OpenAppsDomainModifyWebviewDomainV2Response.cs
│   │   │   │   │   ├── AppsFile/
│   │   │   │   │   │   ├── OpenAppsFileUploadMaterialV2Request.cs
│   │   │   │   │   │   └── OpenAppsFileUploadMaterialV2Response.cs
│   │   │   │   │   ├── AppsICPRecord/
│   │   │   │   │   │   ├── OpenAppsICPRecordGetFacialRecognitionUrlV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordGetFacialRecognitionUrlV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryCorpTypeListV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryCorpTypeListV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryFacialRecognitionStatusV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryFacialRecognitionStatusV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryInchargePeopleCredentialsTypeListV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryInchargePeopleCredentialsTypeListV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryPreApprovalItemTypeListV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryPreApprovalItemTypeListV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryRecordStatusV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryRecordStatusV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryRegionListV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryRegionListV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryServiceContentTypeListV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordQueryServiceContentTypeListV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordSendFacialRecognitionNotifyV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordSendFacialRecognitionNotifyV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordSubmitRecordInfoV1Request.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordSubmitRecordInfoV1Response.cs
│   │   │   │   │   │   ├── OpenAppsICPRecordUploadImageV1Request.cs
│   │   │   │   │   │   └── OpenAppsICPRecordUploadImageV1Response.cs
│   │   │   │   │   ├── AppsMicroApp/
│   │   │   │   │   │   ├── OpenAppsMicroAppCode2SessionV1Request.cs
│   │   │   │   │   │   └── OpenAppsMicroAppCode2SessionV1Response.cs
│   │   │   │   │   ├── AppsPackageVersion/
│   │   │   │   │   │   ├── OpenAppsPackageVersionAuditV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionAuditV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionGetAuditHostsV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionGetAuditHostsV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionGetVersionsV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionGetVersionsV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionReleaseV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionReleaseV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionRevokeAuditV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionRevokeAuditV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionRollbackV1Request.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionRollbackV1Response.cs
│   │   │   │   │   │   ├── OpenAppsPackageVersionUploadV1Request.cs
│   │   │   │   │   │   └── OpenAppsPackageVersionUploadV1Response.cs
│   │   │   │   │   ├── AppsTrial/
│   │   │   │   │   │   ├── OpenAppsTrialGetTrialInfoV2Request.cs
│   │   │   │   │   │   └── OpenAppsTrialGetTrialInfoV2Response.cs
│   │   │   │   │   ├── Platform/
│   │   │   │   │   │   └── Webhook/
│   │   │   │   │   │       ├── OpenPlatformWebhookEventStatusListV1Request.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookEventStatusListV1Response.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookResetSecretV1Request.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookResetSecretV1Response.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookSaveCallbackUrlV1Request.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookSaveCallbackUrlV1Response.cs
│   │   │   │   │   │       ├── OpenPlatformWebhookUpdateEventStatusV1Request.cs
│   │   │   │   │   │       └── OpenPlatformWebhookUpdateEventStatusV1Response.cs
│   │   │   │   │   ├── TpAppAuth/
│   │   │   │   │   │   ├── OpenAuthThirdPartyTokenV2Request.cs
│   │   │   │   │   │   ├── OpenAuthThirdPartyTokenV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGenerateLinkV3Request.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGenerateLinkV3Response.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGetAuthAppListV2Request.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGetAuthAppListV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGetAuthTokenV2Request.cs
│   │   │   │   │   │   ├── OpenTpAppAuthGetAuthTokenV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppAuthRetrieveAuthCodeV2Request.cs
│   │   │   │   │   │   └── OpenTpAppAuthRetrieveAuthCodeV2Response.cs
│   │   │   │   │   ├── TpAppDomain/
│   │   │   │   │   │   ├── OpenTpAppDomainGetWebviewCheckFileInfoV2Request.cs
│   │   │   │   │   │   └── OpenTpAppDomainGetWebviewCheckFileInfoV2Response.cs
│   │   │   │   │   ├── TpAppFile/
│   │   │   │   │   │   ├── OpenTpAppFileUploadMaterialV2Request.cs
│   │   │   │   │   │   └── OpenTpAppFileUploadMaterialV2Response.cs
│   │   │   │   │   ├── TpAppTemplate/
│   │   │   │   │   │   ├── OpenTpAppTemplateAddTemplateV2Request.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateAddTemplateV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateDeleteTemplateV2Request.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateDeleteTemplateV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateGetTemplateAppListV2Request.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateGetTemplateAppListV2Response.cs
│   │   │   │   │   │   ├── OpenTpAppTemplateGetTemplateListV2Request.cs
│   │   │   │   │   │   └── OpenTpAppTemplateGetTemplateListV2Response.cs
│   │   │   │   │   └── _Legacy/
│   │   │   │   │       ├── Auth/
│   │   │   │   │       │   ├── OpenApiAuthGenerateLinkV2Request.cs
│   │   │   │   │       │   ├── OpenApiAuthGenerateLinkV2Response.cs
│   │   │   │   │       │   ├── OpenApiAuthPreAuthCodeV2Request.cs
│   │   │   │   │       │   ├── OpenApiAuthPreAuthCodeV2Response.cs
│   │   │   │   │       │   ├── OpenApiAuthRetrieveV1Request.cs
│   │   │   │   │       │   ├── OpenApiAuthRetrieveV1Response.cs
│   │   │   │   │       │   ├── OpenApiAuthThirdPartyTokenV1Request.cs
│   │   │   │   │       │   ├── OpenApiAuthThirdPartyTokenV1Response.cs
│   │   │   │   │       │   ├── OpenApiOAuthTokenV1Request.cs
│   │   │   │   │       │   └── OpenApiOAuthTokenV1Response.cs
│   │   │   │   │       ├── MicroApp/
│   │   │   │   │       │   ├── App/
│   │   │   │   │       │   │   ├── Category/
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppAddCategoriesV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppAddCategoriesV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppAllCategoriesV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppAllCategoriesV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppCategoriesV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppCategoriesV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppDeleteCategoriesV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppDeleteCategoriesV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppAppSupplyCategoriesV1Request.cs
│   │   │   │   │       │   │   │   └── OpenApiMicroAppAppSupplyCategoriesV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppCheckAppNameV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppCheckAppNameV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppCreditScoreV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppCreditScoreV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppInfoV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppInfoV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppIconV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppIconV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppIntroductionV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppIntroductionV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppNameV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyAppNameV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyServerDomainV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyServerDomainV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyWebviewDomainV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppModifyWebviewDomainV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppQrcodeV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppQrcodeV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiMicroAppAppQualityRatingV1Request.cs
│   │   │   │   │       │   │   └── OpenApiMicroAppAppQualityRatingV1Response.cs
│   │   │   │   │       │   ├── OpenApiMicroAppCode2SessionV1Request.cs
│   │   │   │   │       │   ├── OpenApiMicroAppCode2SessionV1Response.cs
│   │   │   │   │       │   ├── OpenApiMicroAppUploadMaterialV1Request.cs
│   │   │   │   │       │   ├── OpenApiMicroAppUploadMaterialV1Response.cs
│   │   │   │   │       │   ├── Operation/
│   │   │   │   │       │   │   ├── Application/
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationLiveApplicationStatusV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationLiveApplicationStatusV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationLiveApplicationV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationLiveApplicationV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationPhoneNumberApplicationV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationPhoneNumberApplicationV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationVideoApplicationStatusV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationVideoApplicationStatusV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationVideoApplicationV1Request.cs
│   │   │   │   │       │   │   │   └── OpenApiMicroAppOperationVideoApplicationV1Response.cs
│   │   │   │   │       │   │   ├── ShareTemplate/
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationAddShareTemplateV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationAddShareTemplateV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationDeleteShareTemplateV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationDeleteShareTemplateV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationModifyShareTemplateV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationModifyShareTemplateV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationSetDefaultShareTemplateV1Request.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationSetDefaultShareTemplateV1Response.cs
│   │   │   │   │       │   │   │   ├── OpenApiMicroAppOperationShareTemplateListV1Request.cs
│   │   │   │   │       │   │   │   └── OpenApiMicroAppOperationShareTemplateListV1Response.cs
│   │   │   │   │       │   │   └── ShopMaterial/
│   │   │   │   │       │   │       ├── OpenApiMicroAppOperationAddShopMaterialV1Request.cs
│   │   │   │   │       │   │       ├── OpenApiMicroAppOperationAddShopMaterialV1Response.cs
│   │   │   │   │       │   │       ├── OpenApiMicroAppOperationQueryShopMaterialV1Request.cs
│   │   │   │   │       │   │       └── OpenApiMicroAppOperationQueryShopMaterialV1Response.cs
│   │   │   │   │       │   └── Package/
│   │   │   │   │       │       ├── OpenApiMicroAppPackageAuditHostsV1Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageAuditHostsV1Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageAuditV2Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageAuditV2Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageReleaseV1Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageReleaseV1Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageRevokeAuditV1Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageRevokeAuditV1Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageRollbackV1Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageRollbackV1Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageUploadV1Request.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageUploadV1Response.cs
│   │   │   │   │       │       ├── OpenApiMicroAppPackageVersionsV1Request.cs
│   │   │   │   │       │       └── OpenApiMicroAppPackageVersionsV1Response.cs
│   │   │   │   │       ├── Settle/
│   │   │   │   │       │   ├── OpenApiSettleApplyV1Request.cs
│   │   │   │   │       │   ├── OpenApiSettleApplyV1Response.cs
│   │   │   │   │       │   ├── OpenApiSettleGetApplyStatusV1Request.cs
│   │   │   │   │       │   ├── OpenApiSettleGetApplyStatusV1Response.cs
│   │   │   │   │       │   ├── OpenApiSettlePreCheckV1Request.cs
│   │   │   │   │       │   └── OpenApiSettlePreCheckV1Response.cs
│   │   │   │   │       ├── ThirdParty/
│   │   │   │   │       │   ├── Domain/
│   │   │   │   │       │   │   ├── OpenApiThirdPartyDownloadWebviewFileV1Request.cs
│   │   │   │   │       │   │   └── OpenApiThirdPartyDownloadWebviewFileV1Response.cs
│   │   │   │   │       │   ├── OpenApiThirdPartyAuthAppListV1Request.cs
│   │   │   │   │       │   ├── OpenApiThirdPartyAuthAppListV1Response.cs
│   │   │   │   │       │   ├── OpenApiThirdPartyUploadPictureMaterialV1Request.cs
│   │   │   │   │       │   ├── OpenApiThirdPartyUploadPictureMaterialV1Response.cs
│   │   │   │   │       │   ├── POI/
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOIBaseQueryAMapV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOIBaseQueryAMapV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierMatchV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierMatchV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryMatchTaskV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryMatchTaskV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryMatchV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryMatchV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryV1Request.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierQueryV1Response.cs
│   │   │   │   │       │   │   ├── OpenApiThirdPartyPOISupplierSyncV1Request.cs
│   │   │   │   │       │   │   └── OpenApiThirdPartyPOISupplierSyncV1Response.cs
│   │   │   │   │       │   └── Template/
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateAddTemplateV1Request.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateAddTemplateV1Response.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateDeleteTemplateV1Request.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateDeleteTemplateV1Response.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateGetTemplateAppListV1Request.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateGetTemplateAppListV1Response.cs
│   │   │   │   │       │       ├── OpenApiThirdPartyTemplateGetTemplateListV1Request.cs
│   │   │   │   │       │       └── OpenApiThirdPartyTemplateGetTemplateListV1Response.cs
│   │   │   │   │       └── __Abstractions/
│   │   │   │   │           └── DouyinMicroAppOpenApiLegacyResponseBase.cs
│   │   │   │   └── Settings/
│   │   │   │       └── Credentials.cs
│   │   │   ├── ProductApi/
│   │   │   │   ├── DouyinMicroAppProductApiClient.cs
│   │   │   │   ├── DouyinMicroAppProductApiClientBuilder.cs
│   │   │   │   ├── DouyinMicroAppProductApiClientOptions.cs
│   │   │   │   ├── DouyinMicroAppProductApiEndpoints.cs
│   │   │   │   ├── DouyinMicroAppProductApiEvent.cs
│   │   │   │   ├── DouyinMicroAppProductApiRequest.cs
│   │   │   │   ├── DouyinMicroAppProductApiResponse.cs
│   │   │   │   ├── Events/
│   │   │   │   │   ├── ProductEvent.cs
│   │   │   │   │   ├── ProductFulfilmentEvent.cs
│   │   │   │   │   ├── ProductQualificationEvent.cs
│   │   │   │   │   └── ProductResourceEvent.cs
│   │   │   │   ├── Extensions/
│   │   │   │   │   ├── DouyinMicroAppProductApiClientEventExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppProductApiClientExecuteCallbackExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppProductApiClientExecuteProductExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppProductApiClientExecuteQualificationExtensions.cs
│   │   │   │   │   ├── DouyinMicroAppProductApiClientExecuteRefundRuleExtensions.cs
│   │   │   │   │   └── DouyinMicroAppProductApiClientExecuteResourceExtensions.cs
│   │   │   │   ├── Models/
│   │   │   │   │   ├── Callback/
│   │   │   │   │   │   ├── ProductSyncCallbackUrlRequest.cs
│   │   │   │   │   │   └── ProductSyncCallbackUrlResponse.cs
│   │   │   │   │   ├── Product/
│   │   │   │   │   │   ├── ProductAddRequest.cs
│   │   │   │   │   │   ├── ProductAddResponse.cs
│   │   │   │   │   │   ├── ProductModifyNoAuditRequest.cs
│   │   │   │   │   │   ├── ProductModifyNoAuditResponse.cs
│   │   │   │   │   │   ├── ProductModifyRequest.cs
│   │   │   │   │   │   ├── ProductModifyResponse.cs
│   │   │   │   │   │   ├── ProductModifyStatusRequest.cs
│   │   │   │   │   │   ├── ProductModifyStatusResponse.cs
│   │   │   │   │   │   ├── ProductQueryClassInfoRequest.cs
│   │   │   │   │   │   ├── ProductQueryClassInfoResponse.cs
│   │   │   │   │   │   ├── ProductQueryRequest.cs
│   │   │   │   │   │   ├── ProductQueryResponse.cs
│   │   │   │   │   │   ├── ProductQueryReviewRequest.cs
│   │   │   │   │   │   ├── ProductQueryReviewResponse.cs
│   │   │   │   │   │   ├── ProductQueryTemplateInfoRequest.cs
│   │   │   │   │   │   └── ProductQueryTemplateInfoResponse.cs
│   │   │   │   │   ├── Qualification/
│   │   │   │   │   │   ├── ProductAddQualificationRequest.cs
│   │   │   │   │   │   ├── ProductAddQualificationResponse.cs
│   │   │   │   │   │   ├── ProductModifyQualificationRequest.cs
│   │   │   │   │   │   ├── ProductModifyQualificationResponse.cs
│   │   │   │   │   │   ├── ProductQueryQualificationRequest.cs
│   │   │   │   │   │   └── ProductQueryQualificationResponse.cs
│   │   │   │   │   ├── RefundRule/
│   │   │   │   │   │   ├── ProductModifyRefundRuleRequest.cs
│   │   │   │   │   │   ├── ProductModifyRefundRuleResponse.cs
│   │   │   │   │   │   ├── ProductQueryRefundRuleMetaRequest.cs
│   │   │   │   │   │   └── ProductQueryRefundRuleMetaResponse.cs
│   │   │   │   │   └── Resource/
│   │   │   │   │       ├── ProductQueryResourceStatusRequest.cs
│   │   │   │   │       ├── ProductQueryResourceStatusResponse.cs
│   │   │   │   │       ├── ProductUploadResourceRequest.cs
│   │   │   │   │       └── ProductUploadResourceResponse.cs
│   │   │   │   └── Settings/
│   │   │   │       └── Credentials.cs
│   │   │   ├── RoleApi/
│   │   │   │   ├── DouyinMicroAppRoleApiClient.cs
│   │   │   │   ├── DouyinMicroAppRoleApiClientBuilder.cs
│   │   │   │   ├── DouyinMicroAppRoleApiClientOptions.cs
│   │   │   │   ├── DouyinMicroAppRoleApiEndpoints.cs
│   │   │   │   ├── DouyinMicroAppRoleApiRequest.cs
│   │   │   │   ├── DouyinMicroAppRoleApiResponse.cs
│   │   │   │   ├── Extensions/
│   │   │   │   │   └── DouyinMicroAppRoleApiClientExecuteRoleExtensions.cs
│   │   │   │   ├── Models/
│   │   │   │   │   ├── Auth/
│   │   │   │   │   │   ├── AuthEntityAddClassAuthRequest.cs
│   │   │   │   │   │   ├── AuthEntityAddClassAuthResponse.cs
│   │   │   │   │   │   ├── AuthEntityByPartnerRequest.cs
│   │   │   │   │   │   ├── AuthEntityByPartnerResponse.cs
│   │   │   │   │   │   ├── AuthEntityBySelfRequest.cs
│   │   │   │   │   │   ├── AuthEntityBySelfResponse.cs
│   │   │   │   │   │   ├── AuthEntityGetAuditDetailRequest.cs
│   │   │   │   │   │   ├── AuthEntityGetAuditDetailResponse.cs
│   │   │   │   │   │   ├── AuthEntityGetBasicAuthRequest.cs
│   │   │   │   │   │   ├── AuthEntityGetBasicAuthResponse.cs
│   │   │   │   │   │   ├── AuthEntityGetClassAuthRequest.cs
│   │   │   │   │   │   ├── AuthEntityGetClassAuthResponse.cs
│   │   │   │   │   │   ├── AuthEntityUpdateBasicAuthRequest.cs
│   │   │   │   │   │   ├── AuthEntityUpdateBasicAuthResponse.cs
│   │   │   │   │   │   ├── AuthEntityUpdateClassAuthRequest.cs
│   │   │   │   │   │   └── AuthEntityUpdateClassAuthResponse.cs
│   │   │   │   │   ├── AuthEntityQueryEntityInfoRequest.cs
│   │   │   │   │   ├── AuthEntityQueryEntityInfoResponse.cs
│   │   │   │   │   ├── AuthEntityUploadMaterialRequest.cs
│   │   │   │   │   ├── AuthEntityUploadMaterialResponse.cs
│   │   │   │   │   ├── Bind/
│   │   │   │   │   │   ├── AuthEntityEnableMountScopeRequest.cs
│   │   │   │   │   │   ├── AuthEntityEnableMountScopeResponse.cs
│   │   │   │   │   │   ├── AuthEntityQueryBindToCListRequest.cs
│   │   │   │   │   │   ├── AuthEntityQueryBindToCListResponse.cs
│   │   │   │   │   │   ├── AuthEntityQueryMountScopeRequest.cs
│   │   │   │   │   │   ├── AuthEntityQueryMountScopeResponse.cs
│   │   │   │   │   │   ├── AuthEntityUnbindAccountRequest.cs
│   │   │   │   │   │   └── AuthEntityUnbindAccountResponse.cs
│   │   │   │   │   ├── MerchantCode/
│   │   │   │   │   │   ├── AuthEntityActivateMerchantCodeRequest.cs
│   │   │   │   │   │   ├── AuthEntityActivateMerchantCodeResponse.cs
│   │   │   │   │   │   ├── AuthEntityQueryMerchantCodeStatusRequest.cs
│   │   │   │   │   │   └── AuthEntityQueryMerchantCodeStatusResponse.cs
│   │   │   │   │   └── Role/
│   │   │   │   │       ├── AuthEntityAddRoleRequest.cs
│   │   │   │   │       ├── AuthEntityAddRoleResponse.cs
│   │   │   │   │       ├── AuthEntityAuthRoleRequest.cs
│   │   │   │   │       ├── AuthEntityAuthRoleResponse.cs
│   │   │   │   │       ├── AuthEntityBindRoleRequest.cs
│   │   │   │   │       ├── AuthEntityBindRoleResponse.cs
│   │   │   │   │       ├── AuthEntityGetAppIdAuthRequest.cs
│   │   │   │   │       ├── AuthEntityGetAppIdAuthResponse.cs
│   │   │   │   │       ├── AuthEntityGetBindListRequest.cs
│   │   │   │   │       ├── AuthEntityGetBindListResponse.cs
│   │   │   │   │       ├── AuthEntityUnauthRoleRequest.cs
│   │   │   │   │       ├── AuthEntityUnauthRoleResponse.cs
│   │   │   │   │       ├── AuthEntityUnbindRoleRequest.cs
│   │   │   │   │       ├── AuthEntityUnbindRoleResponse.cs
│   │   │   │   │       ├── AuthEntityUpdateAuthLetterRequest.cs
│   │   │   │   │       └── AuthEntityUpdateAuthLetterResponse.cs
│   │   │   │   └── Settings/
│   │   │   │       └── Credentials.cs
│   │   │   └── Webcast/
│   │   │       ├── DouyinMicroAppWebcastClient.cs
│   │   │       ├── DouyinMicroAppWebcastClientBuilder.cs
│   │   │       ├── DouyinMicroAppWebcastClientOptions.cs
│   │   │       ├── DouyinMicroAppWebcastEndpoints.cs
│   │   │       ├── DouyinMicroAppWebcastRequest.cs
│   │   │       ├── DouyinMicroAppWebcastResponse.cs
│   │   │       ├── Extensions/
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteAudienceExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteBusinessExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteCardExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteFileExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteGamingConExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteGiftExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteLinkMicExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteLiveDataExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteQuizExtensions.cs
│   │   │       │   ├── DouyinMicroAppWebcastClientExecuteWebcastMateExtensions.cs
│   │   │       │   └── DouyinMicroAppWebcastClientResponseVerificationExtensions.cs
│   │   │       ├── Interceptors/
│   │   │       │   └── DouyinMicroAppWebcastRequestSigningInterceptor.cs
│   │   │       ├── Models/
│   │   │       │   ├── Audience/
│   │   │       │   │   ├── WebcastAudienceJoinGameRequest.cs
│   │   │       │   │   ├── WebcastAudienceJoinGameResponse.cs
│   │   │       │   │   ├── WebcastAudienceLeaveGameRequest.cs
│   │   │       │   │   └── WebcastAudienceLeaveGameResponse.cs
│   │   │       │   ├── Business/
│   │   │       │   │   ├── WebcastBusinessDiamondOrderAckRequest.cs
│   │   │       │   │   ├── WebcastBusinessDiamondOrderAckResponse.cs
│   │   │       │   │   ├── WebcastBusinessDiamondQueryRequest.cs
│   │   │       │   │   ├── WebcastBusinessDiamondQueryResponse.cs
│   │   │       │   │   ├── WebcastBusinessDiamondReconciliationRequest.cs
│   │   │       │   │   ├── WebcastBusinessDiamondReconciliationResponse.cs
│   │   │       │   │   ├── WebcastBusinessOrderPrecreateRequest.cs
│   │   │       │   │   └── WebcastBusinessOrderPrecreateResponse.cs
│   │   │       │   ├── Card/
│   │   │       │   │   ├── WebcastCardDefaultGetRequest.cs
│   │   │       │   │   ├── WebcastCardDefaultGetResponse.cs
│   │   │       │   │   ├── WebcastCardDefaultSetRequest.cs
│   │   │       │   │   ├── WebcastCardDefaultSetResponse.cs
│   │   │       │   │   ├── WebcastCardDeleteRequest.cs
│   │   │       │   │   ├── WebcastCardDeleteResponse.cs
│   │   │       │   │   ├── WebcastCardGetAllCardsForUserRequest.cs
│   │   │       │   │   ├── WebcastCardGetAllCardsForUserResponse.cs
│   │   │       │   │   ├── WebcastCardGetRequest.cs
│   │   │       │   │   ├── WebcastCardGetResponse.cs
│   │   │       │   │   ├── WebcastCardSetRequest.cs
│   │   │       │   │   ├── WebcastCardSetResponse.cs
│   │   │       │   │   ├── WebcastCardUpdateRequest.cs
│   │   │       │   │   └── WebcastCardUpdateResponse.cs
│   │   │       │   ├── File/
│   │   │       │   │   ├── WebcastFileCardImageDeleteRequest.cs
│   │   │       │   │   ├── WebcastFileCardImageDeleteResponse.cs
│   │   │       │   │   ├── WebcastFileCardImageGetRequest.cs
│   │   │       │   │   ├── WebcastFileCardImageGetResponse.cs
│   │   │       │   │   ├── WebcastFileCardImageUploadRequest.cs
│   │   │       │   │   └── WebcastFileCardImageUploadResponse.cs
│   │   │       │   ├── GamingCon/
│   │   │       │   │   ├── WebcastGamingConRoundCoGameUploadUserDataRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundCoGameUploadUserDataResponse.cs
│   │   │       │   │   ├── WebcastGamingConRoundCompleteUploadUserResultRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundCompleteUploadUserResultResponse.cs
│   │   │       │   │   ├── WebcastGamingConRoundSyncStatusRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundSyncStatusResponse.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadRankListRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadRankListResponse.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadUserGroupInfoRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadUserGroupInfoResponse.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadUserResultRequest.cs
│   │   │       │   │   ├── WebcastGamingConRoundUploadUserResultResponse.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankCompleteUploadUserResultRequest.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankCompleteUploadUserResultResponse.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankSetValidVersionRequest.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankSetValidVersionResponse.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankUploadRankListRequest.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankUploadRankListResponse.cs
│   │   │       │   │   ├── WebcastGamingConWorldRankUploadUserResultRequest.cs
│   │   │       │   │   └── WebcastGamingConWorldRankUploadUserResultResponse.cs
│   │   │       │   ├── Gift/
│   │   │       │   │   ├── WebcastGiftTopGiftRequest.cs
│   │   │       │   │   └── WebcastGiftTopGiftResponse.cs
│   │   │       │   ├── LinkMic/
│   │   │       │   │   ├── WebcastLinkMicQueryRequest.cs
│   │   │       │   │   └── WebcastLinkMicQueryResponse.cs
│   │   │       │   ├── LiveData/
│   │   │       │   │   ├── WebcastLiveDataTaskFailDataGetRequest.cs
│   │   │       │   │   ├── WebcastLiveDataTaskFailDataGetResponse.cs
│   │   │       │   │   ├── WebcastLiveDataTaskGetRequest.cs
│   │   │       │   │   ├── WebcastLiveDataTaskGetResponse.cs
│   │   │       │   │   ├── WebcastLiveDataTaskStartRequest.cs
│   │   │       │   │   ├── WebcastLiveDataTaskStartResponse.cs
│   │   │       │   │   ├── WebcastLiveDataTaskStopRequest.cs
│   │   │       │   │   └── WebcastLiveDataTaskStopResponse.cs
│   │   │       │   ├── Quiz/
│   │   │       │   │   ├── WebcastQuizGetRequest.cs
│   │   │       │   │   └── WebcastQuizGetResponse.cs
│   │   │       │   └── WebcastMate/
│   │   │       │       ├── WebcastWebcastMateInfoRequest.cs
│   │   │       │       └── WebcastWebcastMateInfoResponse.cs
│   │   │       └── Settings/
│   │   │           └── Credentials.cs
│   │   ├── Extensions/
│   │   │   ├── DouyinMicroAppClientEventExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsAdPlacementExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsAuthExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsCapacityExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsCategoryExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsCensorExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsDeveloperToolboxExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsDouyinExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsECPayExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsItemExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsLiveBookingExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsPlayletBusinessExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsPrivacySettingExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsQrcodeExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsSearchExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsShareExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsTaskExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsTradeExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsTrafficPermissionExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsUrlLinkExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsUrlSchemaExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsUserExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteAppsVideoExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteECommerceExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteGiftExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyAppsECPayExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyAppsExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyAppsGameExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyAppsStorageExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyAppsTradeExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyCommentExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLegacyTagsExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteLiveBookingExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteMatchTaskBoxExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteNotificationSubscriptionExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecutePlatformDataAnalysisExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteProductExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecutePromotionExtensions.cs
│   │   │   ├── DouyinMicroAppClientExecuteTradeAuthDeveloperExtensions.cs
│   │   │   └── DouyinMicroAppClientExecuteTradeBasicDeveloperExtensions.cs
│   │   ├── Models/
│   │   │   ├── AppsAdPlacement/
│   │   │   │   ├── AppsAdPlacementAddV1Request.cs
│   │   │   │   ├── AppsAdPlacementAddV1Response.cs
│   │   │   │   ├── AppsAdPlacementQueryV1Request.cs
│   │   │   │   ├── AppsAdPlacementQueryV1Response.cs
│   │   │   │   ├── AppsAdPlacementUpdateV1Request.cs
│   │   │   │   └── AppsAdPlacementUpdateV1Response.cs
│   │   │   ├── AppsAuth/
│   │   │   │   ├── AppsAuthGetRelatedIdV1Request.cs
│   │   │   │   └── AppsAuthGetRelatedIdV1Response.cs
│   │   │   ├── AppsCapacity/
│   │   │   │   ├── Ad/
│   │   │   │   │   ├── AppsCapacityQueryAdIncomeV3Request.cs
│   │   │   │   │   ├── AppsCapacityQueryAdIncomeV3Response.cs
│   │   │   │   │   ├── AppsCapacityQueryAdSettlementListV3Request.cs
│   │   │   │   │   └── AppsCapacityQueryAdSettlementListV3Response.cs
│   │   │   │   ├── AwemeBind/
│   │   │   │   │   ├── AppsCapacityBindAwemeRelationV1Request.cs
│   │   │   │   │   ├── AppsCapacityBindAwemeRelationV1Response.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeBindTemplateInfoV1Request.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeBindTemplateInfoV1Response.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeBindTemplateListV1Request.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeBindTemplateListV1Response.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeRelationBindQrcodeV1Request.cs
│   │   │   │   │   ├── AppsCapacityGetAwemeRelationBindQrcodeV1Response.cs
│   │   │   │   │   ├── AppsCapacityQueryAwemeRelationListV1Request.cs
│   │   │   │   │   ├── AppsCapacityQueryAwemeRelationListV1Response.cs
│   │   │   │   │   ├── AppsCapacityUnbindAwemeRelationV1Request.cs
│   │   │   │   │   └── AppsCapacityUnbindAwemeRelationV1Response.cs
│   │   │   │   ├── AwemeKeyword/
│   │   │   │   │   ├── AppsCapacityAddAwemeVideoKeywordV1Request.cs
│   │   │   │   │   ├── AppsCapacityAddAwemeVideoKeywordV1Response.cs
│   │   │   │   │   ├── AppsCapacityDeleteAwemeVideoKeywordV1Request.cs
│   │   │   │   │   ├── AppsCapacityDeleteAwemeVideoKeywordV1Response.cs
│   │   │   │   │   ├── AppsCapacityQueryAwemeVideoKeywordListV1Request.cs
│   │   │   │   │   └── AppsCapacityQueryAwemeVideoKeywordListV1Response.cs
│   │   │   │   ├── Delivery/
│   │   │   │   │   ├── AppsCapacityCreateAliasV1Request.cs
│   │   │   │   │   ├── AppsCapacityCreateAliasV1Response.cs
│   │   │   │   │   ├── AppsCapacityDeleteAliasV1Request.cs
│   │   │   │   │   ├── AppsCapacityDeleteAliasV1Response.cs
│   │   │   │   │   ├── AppsCapacityListAliasV1Request.cs
│   │   │   │   │   ├── AppsCapacityListAliasV1Response.cs
│   │   │   │   │   ├── AppsCapacityModifyAliasV1Request.cs
│   │   │   │   │   ├── AppsCapacityModifyAliasV1Response.cs
│   │   │   │   │   ├── AppsCapacityQuerySearchTagListV1Request.cs
│   │   │   │   │   ├── AppsCapacityQuerySearchTagListV1Response.cs
│   │   │   │   │   ├── AppsCapacitySetSearchTagV1Request.cs
│   │   │   │   │   └── AppsCapacitySetSearchTagV1Response.cs
│   │   │   │   ├── SimpleQrcode/
│   │   │   │   │   ├── AppsCapacityAddSimpleQrcodeBindV2Request.cs
│   │   │   │   │   ├── AppsCapacityAddSimpleQrcodeBindV2Response.cs
│   │   │   │   │   ├── AppsCapacityDeleteSimpleQrcodeBindV2Request.cs
│   │   │   │   │   ├── AppsCapacityDeleteSimpleQrcodeBindV2Response.cs
│   │   │   │   │   ├── AppsCapacityQuerySimpleQrcodeBindListV2Request.cs
│   │   │   │   │   ├── AppsCapacityQuerySimpleQrcodeBindListV2Response.cs
│   │   │   │   │   ├── AppsCapacityUpdateSimpleQrcodeBindStatusV2Request.cs
│   │   │   │   │   ├── AppsCapacityUpdateSimpleQrcodeBindStatusV2Response.cs
│   │   │   │   │   ├── AppsCapacityUpdateSimpleQrcodeBindV2Request.cs
│   │   │   │   │   └── AppsCapacityUpdateSimpleQrcodeBindV2Response.cs
│   │   │   │   └── SubService/
│   │   │   │       ├── AppsCapacityCreateMicroAppSubServiceV1Request.cs
│   │   │   │       ├── AppsCapacityCreateMicroAppSubServiceV1Response.cs
│   │   │   │       ├── AppsCapacityQueryMicroAppSubServiceV1Request.cs
│   │   │   │       └── AppsCapacityQueryMicroAppSubServiceV1Response.cs
│   │   │   ├── AppsCategory/
│   │   │   │   ├── AppsCategoryQueryAppCategoriesV1Request.cs
│   │   │   │   └── AppsCategoryQueryAppCategoriesV1Response.cs
│   │   │   ├── AppsCensor/
│   │   │   │   ├── AppsCensorImageV1Request.cs
│   │   │   │   └── AppsCensorImageV1Response.cs
│   │   │   ├── AppsDeveloperToolbox/
│   │   │   │   ├── AppsDeveloperToolboxImageMaterialFunctionConfigAddV1Request.cs
│   │   │   │   ├── AppsDeveloperToolboxImageMaterialFunctionConfigAddV1Response.cs
│   │   │   │   ├── AppsDeveloperToolboxImageMaterialFunctionConfigQueryStatusV1Request.cs
│   │   │   │   ├── AppsDeveloperToolboxImageMaterialFunctionConfigQueryStatusV1Response.cs
│   │   │   │   ├── AppsDeveloperToolboxImageMaterialUploadV1Request.cs
│   │   │   │   └── AppsDeveloperToolboxImageMaterialUploadV1Response.cs
│   │   │   ├── AppsDouyin/
│   │   │   │   ├── InteractTask/
│   │   │   │   │   ├── AppsDouyinCreateInteractTaskV1Request.cs
│   │   │   │   │   ├── AppsDouyinCreateInteractTaskV1Response.cs
│   │   │   │   │   ├── AppsDouyinQueryUserInteractTaskV1Request.cs
│   │   │   │   │   └── AppsDouyinQueryUserInteractTaskV1Response.cs
│   │   │   │   └── Task/
│   │   │   │       ├── AppsDouyinCreateTaskV1Request.cs
│   │   │   │       ├── AppsDouyinCreateTaskV1Response.cs
│   │   │   │       ├── AppsDouyinQueryUserTaskV1Request.cs
│   │   │   │       └── AppsDouyinQueryUserTaskV1Response.cs
│   │   │   ├── AppsECPay/
│   │   │   │   ├── Bill/
│   │   │   │   │   ├── AppsBillsV3Request.cs
│   │   │   │   │   ├── AppsBillsV3Response.cs
│   │   │   │   │   ├── AppsFundBillsV3Request.cs
│   │   │   │   │   └── AppsFundBillsV3Response.cs
│   │   │   │   └── SaaS/
│   │   │   │       ├── Applyment/
│   │   │   │       │   ├── AppsECPaySaaSCreateMerchantV3Request.cs
│   │   │   │       │   ├── AppsECPaySaaSCreateMerchantV3Response.cs
│   │   │   │       │   ├── AppsECPaySaaSImageUploadV3Request.cs
│   │   │   │       │   ├── AppsECPaySaaSImageUploadV3Response.cs
│   │   │   │       │   ├── AppsECPaySaaSQueryMerchantStatusV3Request.cs
│   │   │   │       │   └── AppsECPaySaaSQueryMerchantStatusV3Response.cs
│   │   │   │       ├── Links/
│   │   │   │       │   ├── AppsECPaySaaSAddMerchantV3Request.cs
│   │   │   │       │   ├── AppsECPaySaaSAddMerchantV3Response.cs
│   │   │   │       │   ├── AppsECPaySaaSAddSubMerchantV3Request.cs
│   │   │   │       │   ├── AppsECPaySaaSAddSubMerchantV3Response.cs
│   │   │   │       │   ├── AppsECPaySaaSAppAddSubMerchantV3Request.cs
│   │   │   │       │   ├── AppsECPaySaaSAppAddSubMerchantV3Response.cs
│   │   │   │       │   ├── AppsECPaySaaSGetAppMerchantV3Request.cs
│   │   │   │       │   └── AppsECPaySaaSGetAppMerchantV3Response.cs
│   │   │   │       └── Withdraw/
│   │   │   │           ├── AppsECPaySaaSMerchantWithdrawV3Request.cs
│   │   │   │           ├── AppsECPaySaaSMerchantWithdrawV3Response.cs
│   │   │   │           ├── AppsECPaySaaSQueryMerchantBalanceV3Request.cs
│   │   │   │           ├── AppsECPaySaaSQueryMerchantBalanceV3Response.cs
│   │   │   │           ├── AppsECPaySaaSQueryWithdrawOrderV3Request.cs
│   │   │   │           └── AppsECPaySaaSQueryWithdrawOrderV3Response.cs
│   │   │   ├── AppsItem/
│   │   │   │   ├── AppsItemBCGetBaseV1Request.cs
│   │   │   │   ├── AppsItemBCGetBaseV1Response.cs
│   │   │   │   ├── AppsItemBCGetCommentV1Request.cs
│   │   │   │   ├── AppsItemBCGetCommentV1Response.cs
│   │   │   │   ├── AppsItemBCGetLikeV1Request.cs
│   │   │   │   ├── AppsItemBCGetLikeV1Response.cs
│   │   │   │   ├── AppsItemBCGetPlayV1Request.cs
│   │   │   │   ├── AppsItemBCGetPlayV1Response.cs
│   │   │   │   ├── AppsItemBCGetShareV1Request.cs
│   │   │   │   ├── AppsItemBCGetShareV1Response.cs
│   │   │   │   ├── AppsItemGetBaseV1Request.cs
│   │   │   │   ├── AppsItemGetBaseV1Response.cs
│   │   │   │   ├── AppsItemGetCommentV1Request.cs
│   │   │   │   ├── AppsItemGetCommentV1Response.cs
│   │   │   │   ├── AppsItemGetLikeV1Request.cs
│   │   │   │   ├── AppsItemGetLikeV1Response.cs
│   │   │   │   ├── AppsItemGetPlayV1Request.cs
│   │   │   │   ├── AppsItemGetPlayV1Response.cs
│   │   │   │   ├── AppsItemGetShareV1Request.cs
│   │   │   │   ├── AppsItemGetShareV1Response.cs
│   │   │   │   └── Comment/
│   │   │   │       ├── AppsItemBCListCommentReplyV1Request.cs
│   │   │   │       ├── AppsItemBCListCommentReplyV1Response.cs
│   │   │   │       ├── AppsItemBCListCommentV1Request.cs
│   │   │   │       ├── AppsItemBCListCommentV1Response.cs
│   │   │   │       ├── AppsItemBCReplyCommentV1Request.cs
│   │   │   │       ├── AppsItemBCReplyCommentV1Response.cs
│   │   │   │       ├── AppsItemBCTopCommentV1Request.cs
│   │   │   │       ├── AppsItemBCTopCommentV1Response.cs
│   │   │   │       ├── AppsItemListCommentReplyV1Request.cs
│   │   │   │       ├── AppsItemListCommentReplyV1Response.cs
│   │   │   │       ├── AppsItemListCommentV1Request.cs
│   │   │   │       ├── AppsItemListCommentV1Response.cs
│   │   │   │       ├── AppsItemReplyCommentV1Request.cs
│   │   │   │       ├── AppsItemReplyCommentV1Response.cs
│   │   │   │       ├── AppsItemTopCommentV1Request.cs
│   │   │   │       └── AppsItemTopCommentV1Response.cs
│   │   │   ├── AppsLiveBooking/
│   │   │   │   ├── AppsLiveBookingVideoCancelV2Request.cs
│   │   │   │   ├── AppsLiveBookingVideoCancelV2Response.cs
│   │   │   │   ├── AppsLiveBookingVideoCreateV2Request.cs
│   │   │   │   └── AppsLiveBookingVideoCreateV2Response.cs
│   │   │   ├── AppsPlayletBusiness/
│   │   │   │   ├── AppsPlayletBusinessUploadV1Request.cs
│   │   │   │   └── AppsPlayletBusinessUploadV1Response.cs
│   │   │   ├── AppsPrivacySetting/
│   │   │   │   ├── AppsPrivacySettingAddV1Request.cs
│   │   │   │   ├── AppsPrivacySettingAddV1Response.cs
│   │   │   │   ├── AppsPrivacySettingQueryV1Request.cs
│   │   │   │   └── AppsPrivacySettingQueryV1Response.cs
│   │   │   ├── AppsQrcode/
│   │   │   │   ├── AppsQrcodeCreateV1Request.cs
│   │   │   │   └── AppsQrcodeCreateV1Response.cs
│   │   │   ├── AppsSearch/
│   │   │   │   ├── AppsSearchDeleteIndexV1Request.cs
│   │   │   │   ├── AppsSearchDeleteIndexV1Response.cs
│   │   │   │   ├── AppsSearchUploadSitemapV1Request.cs
│   │   │   │   └── AppsSearchUploadSitemapV1Response.cs
│   │   │   ├── AppsShare/
│   │   │   │   └── Task/
│   │   │   │       ├── AppsShareCreateTaskV1Request.cs
│   │   │   │       ├── AppsShareCreateTaskV1Response.cs
│   │   │   │       ├── AppsShareQueryUserTaskV1Request.cs
│   │   │   │       └── AppsShareQueryUserTaskV1Response.cs
│   │   │   ├── AppsTask/
│   │   │   │   ├── AppsTaskCreateLiveV2Request.cs
│   │   │   │   ├── AppsTaskCreateLiveV2Response.cs
│   │   │   │   ├── AppsTaskCreateVideoV2Request.cs
│   │   │   │   ├── AppsTaskCreateVideoV2Response.cs
│   │   │   │   ├── AppsTaskWriteoffLiveV2Request.cs
│   │   │   │   ├── AppsTaskWriteoffLiveV2Response.cs
│   │   │   │   ├── AppsTaskWriteoffVideoV2Request.cs
│   │   │   │   └── AppsTaskWriteoffVideoV2Response.cs
│   │   │   ├── AppsTrade/
│   │   │   │   ├── AppsTradeToolkitButtonWhiteSettingV2Request.cs
│   │   │   │   ├── AppsTradeToolkitButtonWhiteSettingV2Response.cs
│   │   │   │   ├── AppsTradeToolkitQueryTextV2Request.cs
│   │   │   │   ├── AppsTradeToolkitQueryTextV2Response.cs
│   │   │   │   ├── AppsTradeToolkitUpdateMerchantConfigV2Request.cs
│   │   │   │   ├── AppsTradeToolkitUpdateMerchantConfigV2Response.cs
│   │   │   │   ├── AppsTradeToolkitUpdateMerchantPathV2Request.cs
│   │   │   │   └── AppsTradeToolkitUpdateMerchantPathV2Response.cs
│   │   │   ├── AppsTrafficPermission/
│   │   │   │   ├── AppsTrafficPermissionOpenV1Request.cs
│   │   │   │   ├── AppsTrafficPermissionOpenV1Response.cs
│   │   │   │   ├── AppsTrafficPermissionQueryV1Request.cs
│   │   │   │   └── AppsTrafficPermissionQueryV1Response.cs
│   │   │   ├── AppsUrlLink/
│   │   │   │   ├── AppsUrlLinkGenerateV1Request.cs
│   │   │   │   ├── AppsUrlLinkGenerateV1Response.cs
│   │   │   │   ├── AppsUrlLinkQueryInfoV1Request.cs
│   │   │   │   ├── AppsUrlLinkQueryInfoV1Response.cs
│   │   │   │   ├── AppsUrlLinkQueryQuotaV1Request.cs
│   │   │   │   └── AppsUrlLinkQueryQuotaV1Response.cs
│   │   │   ├── AppsUrlSchema/
│   │   │   │   ├── AppsUrlGenerateSchemaV1Request.cs
│   │   │   │   ├── AppsUrlGenerateSchemaV1Response.cs
│   │   │   │   ├── AppsUrlQuerySchemaQuotaV1Request.cs
│   │   │   │   ├── AppsUrlQuerySchemaQuotaV1Response.cs
│   │   │   │   ├── AppsUrlQuerySchemaV1Request.cs
│   │   │   │   └── AppsUrlQuerySchemaV1Response.cs
│   │   │   ├── AppsUser/
│   │   │   │   ├── AppsUserBCGetCommentV1Request.cs
│   │   │   │   ├── AppsUserBCGetCommentV1Response.cs
│   │   │   │   ├── AppsUserBCGetFansV1Request.cs
│   │   │   │   ├── AppsUserBCGetFansV1Response.cs
│   │   │   │   ├── AppsUserBCGetItemV1Request.cs
│   │   │   │   ├── AppsUserBCGetItemV1Response.cs
│   │   │   │   ├── AppsUserBCGetLikeV1Request.cs
│   │   │   │   ├── AppsUserBCGetLikeV1Response.cs
│   │   │   │   ├── AppsUserBCGetProfileV1Request.cs
│   │   │   │   ├── AppsUserBCGetProfileV1Response.cs
│   │   │   │   ├── AppsUserBCGetShareV1Request.cs
│   │   │   │   ├── AppsUserBCGetShareV1Response.cs
│   │   │   │   ├── AppsUserGetCommentV1Request.cs
│   │   │   │   ├── AppsUserGetCommentV1Response.cs
│   │   │   │   ├── AppsUserGetFansV1Request.cs
│   │   │   │   ├── AppsUserGetFansV1Response.cs
│   │   │   │   ├── AppsUserGetItemV1Request.cs
│   │   │   │   ├── AppsUserGetItemV1Response.cs
│   │   │   │   ├── AppsUserGetLikeV1Request.cs
│   │   │   │   ├── AppsUserGetLikeV1Response.cs
│   │   │   │   ├── AppsUserGetProfileV1Request.cs
│   │   │   │   ├── AppsUserGetProfileV1Response.cs
│   │   │   │   ├── AppsUserGetShareV1Request.cs
│   │   │   │   └── AppsUserGetShareV1Response.cs
│   │   │   ├── AppsVideo/
│   │   │   │   ├── AppsConvertOpenItemIdToEncryptIdV1Request.cs
│   │   │   │   ├── AppsConvertOpenItemIdToEncryptIdV1Response.cs
│   │   │   │   ├── AppsConvertVideoIdToOpenItemIdV1Request.cs
│   │   │   │   ├── AppsConvertVideoIdToOpenItemIdV1Response.cs
│   │   │   │   ├── AppsVideoBCQueryV1Request.cs
│   │   │   │   ├── AppsVideoBCQueryV1Response.cs
│   │   │   │   ├── AppsVideoQueryV1Request.cs
│   │   │   │   └── AppsVideoQueryV1Response.cs
│   │   │   ├── ECommerce/
│   │   │   │   ├── ECommerceConfigLimitOperatePointV1Request.cs
│   │   │   │   ├── ECommerceConfigLimitOperatePointV1Response.cs
│   │   │   │   ├── ECommerceConfigRegisterMicroAppV1Request.cs
│   │   │   │   ├── ECommerceConfigRegisterMicroAppV1Response.cs
│   │   │   │   ├── ECommerceCustomizationQueryStatusV1Request.cs
│   │   │   │   ├── ECommerceCustomizationQueryStatusV1Response.cs
│   │   │   │   ├── ECommerceShopMemberLeaveV1Request.cs
│   │   │   │   └── ECommerceShopMemberLeaveV1Response.cs
│   │   │   ├── Gift/
│   │   │   │   ├── GiftReceiveRewardRequest.cs
│   │   │   │   └── GiftReceiveRewardResponse.cs
│   │   │   ├── LiveBooking/
│   │   │   │   ├── LiveBookingTextCloseRequest.cs
│   │   │   │   ├── LiveBookingTextCloseResponse.cs
│   │   │   │   ├── LiveBookingTextCreateRequest.cs
│   │   │   │   ├── LiveBookingTextCreateResponse.cs
│   │   │   │   ├── LiveBookingTextDetailRequest.cs
│   │   │   │   ├── LiveBookingTextDetailResponse.cs
│   │   │   │   ├── LiveBookingVideoListRequest.cs
│   │   │   │   └── LiveBookingVideoListResponse.cs
│   │   │   ├── MatchTaskBox/
│   │   │   │   ├── MatchTaskBoxAddRoomTaskV2Request.cs
│   │   │   │   ├── MatchTaskBoxAddRoomTaskV2Response.cs
│   │   │   │   ├── MatchTaskBoxAddTaskV2Request.cs
│   │   │   │   ├── MatchTaskBoxAddTaskV2Response.cs
│   │   │   │   ├── MatchTaskBoxQueryAppTaskIdV2Request.cs
│   │   │   │   ├── MatchTaskBoxQueryAppTaskIdV2Response.cs
│   │   │   │   ├── MatchTaskBoxQueryBillLinkV2Request.cs
│   │   │   │   ├── MatchTaskBoxQueryBillLinkV2Response.cs
│   │   │   │   ├── MatchTaskBoxQueryTaskInfoV2Request.cs
│   │   │   │   ├── MatchTaskBoxQueryTaskInfoV2Response.cs
│   │   │   │   ├── MatchTaskBoxQueryVideoSummaryDataV2Request.cs
│   │   │   │   ├── MatchTaskBoxQueryVideoSummaryDataV2Response.cs
│   │   │   │   ├── MatchTaskBoxUpdateStatusV2Request.cs
│   │   │   │   ├── MatchTaskBoxUpdateStatusV2Response.cs
│   │   │   │   ├── MatchTaskBoxUpdateTaskV2Request.cs
│   │   │   │   └── MatchTaskBoxUpdateTaskV2Response.cs
│   │   │   ├── NotificationSubscription/
│   │   │   │   ├── NotificationSubscriptionAddAppTemplateV2Request.cs
│   │   │   │   ├── NotificationSubscriptionAddAppTemplateV2Response.cs
│   │   │   │   ├── NotificationSubscriptionCreateTemplateV2Request.cs
│   │   │   │   ├── NotificationSubscriptionCreateTemplateV2Response.cs
│   │   │   │   ├── NotificationSubscriptionDeleteAppTemplateV2Request.cs
│   │   │   │   ├── NotificationSubscriptionDeleteAppTemplateV2Response.cs
│   │   │   │   ├── NotificationSubscriptionNotifyUserV2Request.cs
│   │   │   │   ├── NotificationSubscriptionNotifyUserV2Response.cs
│   │   │   │   ├── NotificationSubscriptionQueryAppTemplateV2Request.cs
│   │   │   │   ├── NotificationSubscriptionQueryAppTemplateV2Response.cs
│   │   │   │   ├── NotificationSubscriptionQueryCreatedTemplateListV2Request.cs
│   │   │   │   ├── NotificationSubscriptionQueryCreatedTemplateListV2Response.cs
│   │   │   │   ├── NotificationSubscriptionQueryTemplateListV2Request.cs
│   │   │   │   └── NotificationSubscriptionQueryTemplateListV2Response.cs
│   │   │   ├── PlatformDataAnalysis/
│   │   │   │   ├── Component/
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithDetailV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithDetailV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithOverviewV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithOverviewV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryComponentWithSourceV2Request.cs
│   │   │   │   │   └── PlatformDataAnalysisQueryComponentWithSourceV2Response.cs
│   │   │   │   ├── Live/
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveWithShortIdV2Request.cs
│   │   │   │   │   └── PlatformDataAnalysisQueryLiveWithShortIdV2Response.cs
│   │   │   │   ├── SmallRoom/
│   │   │   │   │   ├── PlatformDataAnalysisQuerySmallHomeOrderDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySmallHomeOrderDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySmallHomeOverviewDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySmallHomeOverviewDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySmallHomeRoomDataV2Request.cs
│   │   │   │   │   └── PlatformDataAnalysisQuerySmallHomeRoomDataV2Response.cs
│   │   │   │   ├── Transaction/
│   │   │   │   │   ├── PlatformDataAnalysisQueryDealDataWithConversionV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryDealDataWithConversionV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryDealOverviewDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryDealOverviewDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveDealDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveDealDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveRoomDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveRoomDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveRoomV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryLiveRoomV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryProductDealDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryProductDealDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryVideoDealDataV2Request.cs
│   │   │   │   │   └── PlatformDataAnalysisQueryVideoDealDataV2Response.cs
│   │   │   │   ├── User/
│   │   │   │   │   ├── PlatformDataAnalysisQueryBehaviorDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryBehaviorDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryClientDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryClientDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryPageDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryPageDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryRealTimeUserDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryRealTimeUserDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryRetentionDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryRetentionDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySceneDataV2Request.cs
│   │   │   │   │   ├── PlatformDataAnalysisQuerySceneDataV2Response.cs
│   │   │   │   │   ├── PlatformDataAnalysisQueryUserPortraitDataV2Request.cs
│   │   │   │   │   └── PlatformDataAnalysisQueryUserPortraitDataV2Response.cs
│   │   │   │   └── Video/
│   │   │   │       ├── PlatformDataAnalysisQueryShortLiveDataWithIdV2Request.cs
│   │   │   │       ├── PlatformDataAnalysisQueryShortLiveDataWithIdV2Response.cs
│   │   │   │       ├── PlatformDataAnalysisQueryShortLiveIdWithAwemeIdV2Request.cs
│   │   │   │       ├── PlatformDataAnalysisQueryShortLiveIdWithAwemeIdV2Response.cs
│   │   │   │       ├── PlatformDataAnalysisQueryVideoDataV2Request.cs
│   │   │   │       ├── PlatformDataAnalysisQueryVideoDataV2Response.cs
│   │   │   │       ├── PlatformDataAnalysisQueryVideoWithSourceV2Request.cs
│   │   │   │       └── PlatformDataAnalysisQueryVideoWithSourceV2Response.cs
│   │   │   ├── Product/
│   │   │   │   └── Region/
│   │   │   │       ├── ProductAppRegionAddV1Request.cs
│   │   │   │       ├── ProductAppRegionAddV1Response.cs
│   │   │   │       ├── ProductAppRegionDeleteV1Request.cs
│   │   │   │       ├── ProductAppRegionDeleteV1Response.cs
│   │   │   │       ├── ProductAppRegionModifyV1Request.cs
│   │   │   │       └── ProductAppRegionModifyV1Response.cs
│   │   │   ├── Promotion/
│   │   │   │   ├── Activity/
│   │   │   │   │   ├── PromotionActivityAddSelfTestAccountsV2Request.cs
│   │   │   │   │   ├── PromotionActivityAddSelfTestAccountsV2Response.cs
│   │   │   │   │   ├── PromotionActivityBindUserToSidebarActivityV2Request.cs
│   │   │   │   │   ├── PromotionActivityBindUserToSidebarActivityV2Response.cs
│   │   │   │   │   ├── PromotionActivityCreatePromotionActivityV2Request.cs
│   │   │   │   │   ├── PromotionActivityCreatePromotionActivityV2Response.cs
│   │   │   │   │   ├── PromotionActivityModifyPromotionActivityV2Request.cs
│   │   │   │   │   ├── PromotionActivityModifyPromotionActivityV2Response.cs
│   │   │   │   │   ├── PromotionActivityQueryBindedUserV2Request.cs
│   │   │   │   │   ├── PromotionActivityQueryBindedUserV2Response.cs
│   │   │   │   │   ├── PromotionActivityQueryPromotionActivityV2Request.cs
│   │   │   │   │   ├── PromotionActivityQueryPromotionActivityV2Response.cs
│   │   │   │   │   ├── PromotionActivityUpdatePromotionActivityStatusV2Request.cs
│   │   │   │   │   ├── PromotionActivityUpdatePromotionActivityStatusV2Response.cs
│   │   │   │   │   ├── PromotionActivityUploadPopupScreenshotV2Request.cs
│   │   │   │   │   └── PromotionActivityUploadPopupScreenshotV2Response.cs
│   │   │   │   ├── Coupon/
│   │   │   │   │   ├── DeveloperActivity/
│   │   │   │   │   │   ├── PromotionCouponCreateDeveloperActivityV1Request.cs
│   │   │   │   │   │   ├── PromotionCouponCreateDeveloperActivityV1Response.cs
│   │   │   │   │   │   ├── PromotionCouponDeleteDeveloperActivityV1Request.cs
│   │   │   │   │   │   └── PromotionCouponDeleteDeveloperActivityV1Response.cs
│   │   │   │   │   ├── PromotionCouponBatchConsumeCouponV1Request.cs
│   │   │   │   │   ├── PromotionCouponBatchConsumeCouponV1Response.cs
│   │   │   │   │   ├── PromotionCouponBatchRollbackConsumeCouponV1Request.cs
│   │   │   │   │   ├── PromotionCouponBatchRollbackConsumeCouponV1Response.cs
│   │   │   │   │   ├── PromotionCouponGetBillDownloadUrlV1Request.cs
│   │   │   │   │   ├── PromotionCouponGetBillDownloadUrlV1Response.cs
│   │   │   │   │   ├── PromotionCouponGetCouponReceiveInfoV1Request.cs
│   │   │   │   │   ├── PromotionCouponGetCouponReceiveInfoV1Response.cs
│   │   │   │   │   ├── PromotionCouponGetTalentCouponV1Request.cs
│   │   │   │   │   ├── PromotionCouponGetTalentCouponV1Response.cs
│   │   │   │   │   ├── PromotionCouponSendCouponToDesignatedUserV1Request.cs
│   │   │   │   │   ├── PromotionCouponSendCouponToDesignatedUserV1Response.cs
│   │   │   │   │   ├── PromotionCouponSetTalentCouponV1Request.cs
│   │   │   │   │   ├── PromotionCouponSetTalentCouponV1Response.cs
│   │   │   │   │   ├── PromotionCouponUpdateTalentCouponStatusV1Request.cs
│   │   │   │   │   ├── PromotionCouponUpdateTalentCouponStatusV1Response.cs
│   │   │   │   │   ├── PromotionCouponUpdateTalentCouponStockV1Request.cs
│   │   │   │   │   └── PromotionCouponUpdateTalentCouponStockV1Response.cs
│   │   │   │   └── CouponMeta/
│   │   │   │       ├── PromotionCouponCreateCouponMetaV2Request.cs
│   │   │   │       ├── PromotionCouponCreateCouponMetaV2Response.cs
│   │   │   │       ├── PromotionCouponDeleteCouponMetaV1Request.cs
│   │   │   │       ├── PromotionCouponDeleteCouponMetaV1Response.cs
│   │   │   │       ├── PromotionCouponGetCouponMetaStatisticsV1Request.cs
│   │   │   │       ├── PromotionCouponGetCouponMetaStatisticsV1Response.cs
│   │   │   │       ├── PromotionCouponModifyCouponMetaV2Request.cs
│   │   │   │       ├── PromotionCouponModifyCouponMetaV2Response.cs
│   │   │   │       ├── PromotionCouponQueryActivityMetaDataV1Request.cs
│   │   │   │       ├── PromotionCouponQueryActivityMetaDataV1Response.cs
│   │   │   │       ├── PromotionCouponQueryCouponMetaV2Request.cs
│   │   │   │       ├── PromotionCouponQueryCouponMetaV2Response.cs
│   │   │   │       ├── PromotionCouponUpdateCouponMetaStatusV1Request.cs
│   │   │   │       ├── PromotionCouponUpdateCouponMetaStatusV1Response.cs
│   │   │   │       ├── PromotionCouponUpdateCouponMetaStockV1Request.cs
│   │   │   │       └── PromotionCouponUpdateCouponMetaStockV1Response.cs
│   │   │   ├── TradeAuthDeveloper/
│   │   │   │   ├── AuthDeposit/
│   │   │   │   │   ├── Auth/
│   │   │   │   │   │   ├── TradeAuthDeveloperCancelAuthOrderV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperCancelAuthOrderV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperCreateAuthOrderV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperCreateAuthOrderV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperFinishAuthOrderV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperFinishAuthOrderV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperQueryAdmissibleAuthV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperQueryAdmissibleAuthV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperQueryAuthOrderV1Request.cs
│   │   │   │   │   │   └── TradeAuthDeveloperQueryAuthOrderV1Response.cs
│   │   │   │   │   ├── Pay/
│   │   │   │   │   │   ├── TradeAuthDeveloperClosePayOrderV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperClosePayOrderV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperCreatePayOrderV1Request.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperCreatePayOrderV1Response.cs
│   │   │   │   │   │   ├── TradeAuthDeveloperQueryPayOrderV1Request.cs
│   │   │   │   │   │   └── TradeAuthDeveloperQueryPayOrderV1Response.cs
│   │   │   │   │   └── Refund/
│   │   │   │   │       ├── TradeAuthDeveloperCreateRefundV1Request.cs
│   │   │   │   │       ├── TradeAuthDeveloperCreateRefundV1Response.cs
│   │   │   │   │       ├── TradeAuthDeveloperQueryRefundV1Request.cs
│   │   │   │   │       └── TradeAuthDeveloperQueryRefundV1Response.cs
│   │   │   │   └── PeriodicDeduction/
│   │   │   │       ├── Pay/
│   │   │   │       │   ├── TradeAuthDeveloperCreateSignPayV1Request.cs
│   │   │   │       │   ├── TradeAuthDeveloperCreateSignPayV1Response.cs
│   │   │   │       │   ├── TradeAuthDeveloperQuerySignPayV1Request.cs
│   │   │   │       │   └── TradeAuthDeveloperQuerySignPayV1Response.cs
│   │   │   │       ├── Refund/
│   │   │   │       │   ├── TradeAuthDeveloperCreateSignRefundV1Request.cs
│   │   │   │       │   ├── TradeAuthDeveloperCreateSignRefundV1Response.cs
│   │   │   │       │   ├── TradeAuthDeveloperQuerySignRefundV1Request.cs
│   │   │   │       │   └── TradeAuthDeveloperQuerySignRefundV1Response.cs
│   │   │   │       └── Sign/
│   │   │   │           ├── TradeAuthDeveloperQuerySignOrderV1Request.cs
│   │   │   │           ├── TradeAuthDeveloperQuerySignOrderV1Response.cs
│   │   │   │           ├── TradeAuthDeveloperTerminateSignV1Request.cs
│   │   │   │           └── TradeAuthDeveloperTerminateSignV1Response.cs
│   │   │   ├── TradeBasicDeveloper/
│   │   │   │   ├── TradeBasicDeveloperFulfillPushStatusV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperFulfillPushStatusV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperOrderQueryV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperOrderQueryV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperQueryCPSV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperQueryCPSV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperRefundAuditCallbackV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperRefundAuditCallbackV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperRefundCreateV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperRefundCreateV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperRefundQueryV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperRefundQueryV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperSettleCreateV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperSettleCreateV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperSettleQueryV1Request.cs
│   │   │   │   ├── TradeBasicDeveloperSettleQueryV1Response.cs
│   │   │   │   ├── TradeBasicDeveloperTagQueryV1Request.cs
│   │   │   │   └── TradeBasicDeveloperTagQueryV1Response.cs
│   │   │   └── _Legacy/
│   │   │       ├── Apps/
│   │   │       │   ├── AppsJsCode2SessionV2Request.cs
│   │   │       │   ├── AppsJsCode2SessionV2Response.cs
│   │   │       │   ├── AppsTokenV2Request.cs
│   │   │       │   ├── AppsTokenV2Response.cs
│   │   │       │   ├── Capacity/
│   │   │       │   │   ├── AppsCapacityUploadMaterialV1Request.cs
│   │   │       │   │   ├── AppsCapacityUploadMaterialV1Response.cs
│   │   │       │   │   ├── ClueComponent/
│   │   │       │   │   │   ├── AppsCapacityCreateClueComponentInfoV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityCreateClueComponentInfoV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityDeleteClueComponentInfoV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityDeleteClueComponentInfoV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityQueryClueComponentInfoV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityQueryClueComponentInfoV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityUpdateClueComponentInfoV1Request.cs
│   │   │       │   │   │   └── AppsCapacityUpdateClueComponentInfoV1Response.cs
│   │   │       │   │   ├── Doudian/
│   │   │       │   │   │   ├── AppsCapacityBindDoudianAccountV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityBindDoudianAccountV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityCreateDoudianAppV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityCreateDoudianAppV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityQueryBindDoudianAccountV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityQueryBindDoudianAccountV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityQueryDoudianAppV1Request.cs
│   │   │       │   │   │   ├── AppsCapacityQueryDoudianAppV1Response.cs
│   │   │       │   │   │   ├── AppsCapacityQueryDoudianShopInfoV1Request.cs
│   │   │       │   │   │   └── AppsCapacityQueryDoudianShopInfoV1Response.cs
│   │   │       │   │   └── Mount/
│   │   │       │   │       ├── AppsCapacityApplyCapacityV1Request.cs
│   │   │       │   │       ├── AppsCapacityApplyCapacityV1Response.cs
│   │   │       │   │       ├── AppsCapacityQueryApplyStatusV1Request.cs
│   │   │       │   │       └── AppsCapacityQueryApplyStatusV1Response.cs
│   │   │       │   ├── Censor/
│   │   │       │   │   ├── AppsCensorImageRequest.cs
│   │   │       │   │   └── AppsCensorImageResponse.cs
│   │   │       │   ├── Chat/
│   │   │       │   │   ├── AppsChatCustomerServiceUrlRequest.cs
│   │   │       │   │   └── AppsChatCustomerServiceUrlResponse.cs
│   │   │       │   ├── CustomerService/
│   │   │       │   │   ├── AppsCustomerServiceUrlRequest.cs
│   │   │       │   │   └── AppsCustomerServiceUrlResponse.cs
│   │   │       │   ├── Live/
│   │   │       │   │   ├── AppsLiveSetBlackWhiteListV1Request.cs
│   │   │       │   │   ├── AppsLiveSetBlackWhiteListV1Response.cs
│   │   │       │   │   ├── AppsUploadLiveImageRequest.cs
│   │   │       │   │   └── AppsUploadLiveImageResponse.cs
│   │   │       │   ├── Message/
│   │   │       │   │   ├── AppsMessageCustomSendRequest.cs
│   │   │       │   │   └── AppsMessageCustomSendResponse.cs
│   │   │       │   ├── Order/
│   │   │       │   │   ├── AppsOrderDeleteRequest.cs
│   │   │       │   │   ├── AppsOrderDeleteResponse.cs
│   │   │       │   │   ├── AppsOrderPushV2Request.cs
│   │   │       │   │   └── AppsOrderPushV2Response.cs
│   │   │       │   ├── Qrcode/
│   │   │       │   │   ├── AppsQrcodeRequest.cs
│   │   │       │   │   └── AppsQrcodeResponse.cs
│   │   │       │   ├── ShareConfig/
│   │   │       │   │   ├── AppsShareConfigRequest.cs
│   │   │       │   │   └── AppsShareConfigResponse.cs
│   │   │       │   ├── SubscribeNotification/
│   │   │       │   │   ├── AppsSubscribeNotificationDeveloperNotifyV1Request.cs
│   │   │       │   │   └── AppsSubscribeNotificationDeveloperNotifyV1Response.cs
│   │   │       │   ├── TaskBox/
│   │   │       │   │   ├── AppsTaskBoxAddTaskRequest.cs
│   │   │       │   │   ├── AppsTaskBoxAddTaskResponse.cs
│   │   │       │   │   ├── AppsTaskBoxQueryAppTaskIdRequest.cs
│   │   │       │   │   ├── AppsTaskBoxQueryAppTaskIdResponse.cs
│   │   │       │   │   ├── AppsTaskBoxQueryTaskVideoDataRequest.cs
│   │   │       │   │   ├── AppsTaskBoxQueryTaskVideoDataResponse.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateOrientTalentsRequest.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateOrientTalentsResponse.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateStatusRequest.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateStatusResponse.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateTaskRequest.cs
│   │   │       │   │   ├── AppsTaskBoxUpdateTaskResponse.cs
│   │   │       │   │   └── __Abstractions/
│   │   │       │   │       ├── AppsTaskBoxRequestBase.cs
│   │   │       │   │       └── AppsTaskBoxResponseBase.cs
│   │   │       │   └── Video/
│   │   │       │       ├── AppsConvertOpenItemIdToEncryptIdRequest.cs
│   │   │       │       ├── AppsConvertOpenItemIdToEncryptIdResponse.cs
│   │   │       │       ├── AppsConvertVideoIdToOpenItemIdRequest.cs
│   │   │       │       └── AppsConvertVideoIdToOpenItemIdResponse.cs
│   │   │       ├── AppsECPay/
│   │   │       │   ├── Bills/
│   │   │       │   │   ├── AppsBillsRequest.cs
│   │   │       │   │   ├── AppsBillsResponse.cs
│   │   │       │   │   ├── AppsFundBillsRequest.cs
│   │   │       │   │   └── AppsFundBillsResponse.cs
│   │   │       │   ├── Order/
│   │   │       │   │   ├── AppsECPayCreateOrderV1Request.cs
│   │   │       │   │   ├── AppsECPayCreateOrderV1Response.cs
│   │   │       │   │   ├── AppsECPayCreateRefundV1Request.cs
│   │   │       │   │   ├── AppsECPayCreateRefundV1Response.cs
│   │   │       │   │   ├── AppsECPayCreateReturnV1Request.cs
│   │   │       │   │   ├── AppsECPayCreateReturnV1Response.cs
│   │   │       │   │   ├── AppsECPayQueryOrderV1Request.cs
│   │   │       │   │   ├── AppsECPayQueryOrderV1Response.cs
│   │   │       │   │   ├── AppsECPayQueryPlatformOrderV1Request.cs
│   │   │       │   │   ├── AppsECPayQueryPlatformOrderV1Response.cs
│   │   │       │   │   ├── AppsECPayQueryRefundV1Request.cs
│   │   │       │   │   ├── AppsECPayQueryRefundV1Response.cs
│   │   │       │   │   ├── AppsECPayQueryReturnV1Request.cs
│   │   │       │   │   ├── AppsECPayQueryReturnV1Response.cs
│   │   │       │   │   ├── AppsECPayQuerySettleV1Request.cs
│   │   │       │   │   ├── AppsECPayQuerySettleV1Response.cs
│   │   │       │   │   ├── AppsECPaySettleV1Request.cs
│   │   │       │   │   └── AppsECPaySettleV1Response.cs
│   │   │       │   └── SaaS/
│   │   │       │       ├── Apply/
│   │   │       │       │   ├── AppsECPaySaaSCreateMerchantRequest.cs
│   │   │       │       │   ├── AppsECPaySaaSCreateMerchantResponse.cs
│   │   │       │       │   ├── AppsECPaySaaSImageUploadRequest.cs
│   │   │       │       │   ├── AppsECPaySaaSImageUploadResponse.cs
│   │   │       │       │   ├── AppsECPaySaaSQueryMerchantStatusRequest.cs
│   │   │       │       │   └── AppsECPaySaaSQueryMerchantStatusResponse.cs
│   │   │       │       ├── PageLinks/
│   │   │       │       │   ├── AppsECPaySaaSAddMerchantRequest.cs
│   │   │       │       │   ├── AppsECPaySaaSAddMerchantResponse.cs
│   │   │       │       │   ├── AppsECPaySaaSAddSubMerchantRequest.cs
│   │   │       │       │   ├── AppsECPaySaaSAddSubMerchantResponse.cs
│   │   │       │       │   ├── AppsECPaySaaSAppAddSubMerchantRequest.cs
│   │   │       │       │   ├── AppsECPaySaaSAppAddSubMerchantResponse.cs
│   │   │       │       │   ├── AppsECPaySaaSGetAppMerchantRequest.cs
│   │   │       │       │   └── AppsECPaySaaSGetAppMerchantResponse.cs
│   │   │       │       └── Withdraw/
│   │   │       │           ├── AppsECPaySaaSMerchantWithdrawRequest.cs
│   │   │       │           ├── AppsECPaySaaSMerchantWithdrawResponse.cs
│   │   │       │           ├── AppsECPaySaaSQueryMerchantBalanceRequest.cs
│   │   │       │           ├── AppsECPaySaaSQueryMerchantBalanceResponse.cs
│   │   │       │           ├── AppsECPaySaaSQueryWithdrawOrderRequest.cs
│   │   │       │           └── AppsECPaySaaSQueryWithdrawOrderResponse.cs
│   │   │       ├── AppsGame/
│   │   │       │   ├── AppsGameWalletAddCoinRequest.cs
│   │   │       │   ├── AppsGameWalletAddCoinResponse.cs
│   │   │       │   ├── AppsGameWalletGamePayRequest.cs
│   │   │       │   ├── AppsGameWalletGamePayResponse.cs
│   │   │       │   ├── AppsGameWalletGetBalanceRequest.cs
│   │   │       │   ├── AppsGameWalletGetBalanceResponse.cs
│   │   │       │   └── __Abstractions/
│   │   │       │       ├── AppsGameWalletRequestBase.cs
│   │   │       │       └── AppsGameWalletResponseBase.cs
│   │   │       ├── AppsStorage/
│   │   │       │   ├── AppsRemoveUserStorageRequest.cs
│   │   │       │   ├── AppsRemoveUserStorageResponse.cs
│   │   │       │   ├── AppsSetUserStorageRequest.cs
│   │   │       │   └── AppsSetUserStorageResponse.cs
│   │   │       ├── AppsTrade/
│   │   │       │   ├── PreOrder/
│   │   │       │   │   ├── AppsTradeCreateOrderV2Request.cs
│   │   │       │   │   ├── AppsTradeCreateOrderV2Response.cs
│   │   │       │   │   ├── AppsTradeQueryCPSV2Request.cs
│   │   │       │   │   ├── AppsTradeQueryCPSV2Response.cs
│   │   │       │   │   ├── AppsTradeQueryOrderV2Request.cs
│   │   │       │   │   └── AppsTradeQueryOrderV2Response.cs
│   │   │       │   ├── Refund/
│   │   │       │   │   ├── AppsTradeCreateRefundV2Request.cs
│   │   │       │   │   ├── AppsTradeCreateRefundV2Response.cs
│   │   │       │   │   ├── AppsTradeMerchantAuditCallbackV2Request.cs
│   │   │       │   │   ├── AppsTradeMerchantAuditCallbackV2Response.cs
│   │   │       │   │   ├── AppsTradeQueryRefundV2Request.cs
│   │   │       │   │   └── AppsTradeQueryRefundV2Response.cs
│   │   │       │   ├── Settlement/
│   │   │       │   │   ├── AppsTradeCreateSettleV2Request.cs
│   │   │       │   │   ├── AppsTradeCreateSettleV2Response.cs
│   │   │       │   │   ├── AppsTradeQuerySettleV2Request.cs
│   │   │       │   │   └── AppsTradeQuerySettleV2Response.cs
│   │   │       │   └── WriteOff/
│   │   │       │       ├── AppsTradeDeliveryPrepareV2Request.cs
│   │   │       │       ├── AppsTradeDeliveryPrepareV2Response.cs
│   │   │       │       ├── AppsTradeDeliveryVerifyV2Request.cs
│   │   │       │       ├── AppsTradeDeliveryVerifyV2Response.cs
│   │   │       │       ├── AppsTradePushDeliveryV2Request.cs
│   │   │       │       ├── AppsTradePushDeliveryV2Response.cs
│   │   │       │       ├── AppsTradeQueryItemOrderInfoV2Request.cs
│   │   │       │       └── AppsTradeQueryItemOrderInfoV2Response.cs
│   │   │       ├── Comment/
│   │   │       │   ├── CommentDeveloperDeleteRequest.cs
│   │   │       │   ├── CommentDeveloperDeleteResponse.cs
│   │   │       │   ├── CommentDeveloperReplyRequest.cs
│   │   │       │   ├── CommentDeveloperReplyResponse.cs
│   │   │       │   ├── CommentOpenGetRequest.cs
│   │   │       │   └── CommentOpenGetResponse.cs
│   │   │       └── Tags/
│   │   │           ├── TagsImageV2Request.cs
│   │   │           ├── TagsImageV2Response.cs
│   │   │           ├── TagsTextAntiDirtV2Request.cs
│   │   │           └── TagsTextAntiDirtV2Response.cs
│   │   ├── README.md
│   │   ├── SKIT.FlurlHttpClient.ByteDance.MicroApp.csproj
│   │   ├── Settings/
│   │   │   └── Credentials.cs
│   │   └── Utilities/
│   │       ├── AESUtility.cs
│   │       ├── HMACUtility.cs
│   │       ├── MD5Utility.cs
│   │       ├── RSAUtility.cs
│   │       ├── SHA1Utility.cs
│   │       └── [Internal]/
│   │           ├── DyMsgCryptor.cs
│   │           ├── HttpContentBuilder.cs
│   │           └── XmlHelper.cs
│   ├── SKIT.FlurlHttpClient.ByteDance.OceanEngine/
│   │   ├── Extensions/
│   │   │   ├── OceanEngineClientExecuteAdvertiserExtensions.cs
│   │   │   ├── OceanEngineClientExecuteAdvertisingExtensions.cs
│   │   │   ├── OceanEngineClientExecuteAgentExtensions.cs
│   │   │   ├── OceanEngineClientExecuteBusinessPlatformExtensions.cs
│   │   │   ├── OceanEngineClientExecuteCampaignExtensions.cs
│   │   │   ├── OceanEngineClientExecuteCreativeExtensions.cs
│   │   │   ├── OceanEngineClientExecuteCustomerCenterExtensions.cs
│   │   │   ├── OceanEngineClientExecuteEnterpriseExtensions.cs
│   │   │   ├── OceanEngineClientExecuteFileExtensions.cs
│   │   │   ├── OceanEngineClientExecuteFundExtensions.cs
│   │   │   ├── OceanEngineClientExecuteMajordomoExtensions.cs
│   │   │   ├── OceanEngineClientExecuteOAuth2Extensions.cs
│   │   │   ├── OceanEngineClientExecuteToolsExtensions.cs
│   │   │   └── OceanEngineClientExecuteUserExtensions.cs
│   │   ├── Models/
│   │   │   ├── Advertiser/
│   │   │   │   ├── AdvertiserInfoRequest.cs
│   │   │   │   ├── AdvertiserInfoResponse.cs
│   │   │   │   ├── AdvertiserPublicInfoRequest.cs
│   │   │   │   ├── AdvertiserPublicInfoResponse.cs
│   │   │   │   ├── Avatar/
│   │   │   │   │   ├── AdvertiserAvatarGetRequest.cs
│   │   │   │   │   ├── AdvertiserAvatarGetResponse.cs
│   │   │   │   │   ├── AdvertiserAvatarSubmitRequest.cs
│   │   │   │   │   └── AdvertiserAvatarSubmitResponse.cs
│   │   │   │   ├── Budget/
│   │   │   │   │   ├── AdvertiserBudgetGetRequest.cs
│   │   │   │   │   ├── AdvertiserBudgetGetResponse.cs
│   │   │   │   │   ├── AdvertiserUpdateBudgetRequest.cs
│   │   │   │   │   └── AdvertiserUpdateBudgetResponse.cs
│   │   │   │   ├── Fund/
│   │   │   │   │   ├── AdvertiserFundDailyStatisticsRequest.cs
│   │   │   │   │   ├── AdvertiserFundDailyStatisticsResponse.cs
│   │   │   │   │   ├── AdvertiserFundGetRequest.cs
│   │   │   │   │   ├── AdvertiserFundGetResponse.cs
│   │   │   │   │   ├── AdvertiserFundTransactionGetRequest.cs
│   │   │   │   │   └── AdvertiserFundTransactionGetResponse.cs
│   │   │   │   └── Qualification/
│   │   │   │       ├── AdvertiserQualificationCreateV2Request.cs
│   │   │   │       ├── AdvertiserQualificationCreateV2Response.cs
│   │   │   │       ├── AdvertiserQualificationGetRequest.cs
│   │   │   │       ├── AdvertiserQualificationGetResponse.cs
│   │   │   │       ├── AdvertiserQualificationSelectV2Request.cs
│   │   │   │       ├── AdvertiserQualificationSelectV2Response.cs
│   │   │   │       ├── AdvertiserQualificationSubmitRequest.cs
│   │   │   │       └── AdvertiserQualificationSubmitResponse.cs
│   │   │   ├── Advertising/
│   │   │   │   ├── AdvertisingCostProtectStatusGetRequest.cs
│   │   │   │   ├── AdvertisingCostProtectStatusGetResponse.cs
│   │   │   │   ├── AdvertisingCreateRequest.cs
│   │   │   │   ├── AdvertisingCreateResponse.cs
│   │   │   │   ├── AdvertisingGetRequest.cs
│   │   │   │   ├── AdvertisingGetResponse.cs
│   │   │   │   ├── AdvertisingRejectReasonRequest.cs
│   │   │   │   ├── AdvertisingRejectReasonResponse.cs
│   │   │   │   ├── AdvertisingUpdateBidRequest.cs
│   │   │   │   ├── AdvertisingUpdateBidResponse.cs
│   │   │   │   ├── AdvertisingUpdateBudgetRequest.cs
│   │   │   │   ├── AdvertisingUpdateBudgetResponse.cs
│   │   │   │   ├── AdvertisingUpdateRequest.cs
│   │   │   │   ├── AdvertisingUpdateResponse.cs
│   │   │   │   ├── AdvertisingUpdateStatusRequest.cs
│   │   │   │   └── AdvertisingUpdateStatusResponse.cs
│   │   │   ├── Agent/
│   │   │   │   ├── Advertiser/
│   │   │   │   │   ├── AgentAdvertiserCreateV2Request.cs
│   │   │   │   │   ├── AgentAdvertiserCreateV2Response.cs
│   │   │   │   │   ├── AgentAdvertiserRechargeRequest.cs
│   │   │   │   │   ├── AgentAdvertiserRechargeResponse.cs
│   │   │   │   │   ├── AgentAdvertiserRefundRequest.cs
│   │   │   │   │   ├── AgentAdvertiserRefundResponse.cs
│   │   │   │   │   ├── AgentAdvertiserSelectRequest.cs
│   │   │   │   │   ├── AgentAdvertiserSelectResponse.cs
│   │   │   │   │   ├── AgentAdvertiserUpdateRequest.cs
│   │   │   │   │   └── AgentAdvertiserUpdateResponse.cs
│   │   │   │   ├── AgentChildAgentSelectRequest.cs
│   │   │   │   ├── AgentChildAgentSelectResponse.cs
│   │   │   │   ├── AgentInfoRequest.cs
│   │   │   │   └── AgentInfoResponse.cs
│   │   │   ├── BusinessPlatform/
│   │   │   │   ├── BusinessPlatformPartnerOrganizationListRequest.cs
│   │   │   │   └── BusinessPlatformPartnerOrganizationListResponse.cs
│   │   │   ├── Campaign/
│   │   │   │   ├── CampaignCreateRequest.cs
│   │   │   │   ├── CampaignCreateResponse.cs
│   │   │   │   ├── CampaignGetRequest.cs
│   │   │   │   ├── CampaignGetResponse.cs
│   │   │   │   ├── CampaignUpdateRequest.cs
│   │   │   │   ├── CampaignUpdateResponse.cs
│   │   │   │   ├── CampaignUpdateStatusRequest.cs
│   │   │   │   └── CampaignUpdateStatusResponse.cs
│   │   │   ├── Creative/
│   │   │   │   ├── CreativeCreateV2Request.cs
│   │   │   │   ├── CreativeCreateV2Response.cs
│   │   │   │   ├── CreativeGetRequest.cs
│   │   │   │   └── CreativeGetResponse.cs
│   │   │   ├── CustomerCenter/
│   │   │   │   └── Advertiser/
│   │   │   │       ├── CustomerCenterAdvertiserListRequest.cs
│   │   │   │       └── CustomerCenterAdvertiserListResponse.cs
│   │   │   ├── Enterprise/
│   │   │   │   ├── EnterpriseInfoRequest.cs
│   │   │   │   └── EnterpriseInfoResponse.cs
│   │   │   ├── File/
│   │   │   │   ├── FileImageAdvertiserGetRequest.cs
│   │   │   │   ├── FileImageAdvertiserGetResponse.cs
│   │   │   │   ├── FileImageAdvertiserRequest.cs
│   │   │   │   ├── FileImageAdvertiserResponse.cs
│   │   │   │   ├── FileImageAdvertisingRequest.cs
│   │   │   │   ├── FileImageAdvertisingResponse.cs
│   │   │   │   ├── FileImageGetRequest.cs
│   │   │   │   ├── FileImageGetResponse.cs
│   │   │   │   ├── FileMaterialBindRequest.cs
│   │   │   │   ├── FileMaterialBindResponse.cs
│   │   │   │   ├── FileVideoAdvertiserGetRequest.cs
│   │   │   │   ├── FileVideoAdvertiserGetResponse.cs
│   │   │   │   ├── FileVideoAdvertisingRequest.cs
│   │   │   │   ├── FileVideoAdvertisingResponse.cs
│   │   │   │   ├── FileVideoDeleteRequest.cs
│   │   │   │   ├── FileVideoDeleteResponse.cs
│   │   │   │   ├── FileVideoGetRequest.cs
│   │   │   │   ├── FileVideoGetResponse.cs
│   │   │   │   ├── FileVideoUpdateRequest.cs
│   │   │   │   └── FileVideoUpdateResponse.cs
│   │   │   ├── Fund/
│   │   │   │   ├── FundSharedWalletBalanceGetRequest.cs
│   │   │   │   └── FundSharedWalletBalanceGetResponse.cs
│   │   │   ├── Majordomo/
│   │   │   │   └── Advertiser/
│   │   │   │       ├── MajordomoAdvertiserSelectRequest.cs
│   │   │   │       └── MajordomoAdvertiserSelectResponse.cs
│   │   │   ├── OAuth2/
│   │   │   │   ├── OAuth2AccessTokenRequest.cs
│   │   │   │   ├── OAuth2AccessTokenResponse.cs
│   │   │   │   ├── OAuth2AdvertiserGetRequest.cs
│   │   │   │   ├── OAuth2AdvertiserGetResponse.cs
│   │   │   │   ├── OAuth2AppAccessTokenRequest.cs
│   │   │   │   ├── OAuth2AppAccessTokenResponse.cs
│   │   │   │   ├── OAuth2RefreshTokenRequest.cs
│   │   │   │   └── OAuth2RefreshTokenResponse.cs
│   │   │   ├── Tools/
│   │   │   │   └── VideoCover/
│   │   │   │       ├── ToolsVideoCoverSuggestRequest.cs
│   │   │   │       └── ToolsVideoCoverSuggestResponse.cs
│   │   │   └── User/
│   │   │       ├── UserInfoRequest.cs
│   │   │       └── UserInfoResponse.cs
│   │   ├── OceanEngineClient.cs
│   │   ├── OceanEngineClientOptions.cs
│   │   ├── OceanEngineEndpoints.cs
│   │   ├── OceanEngineException.cs
│   │   ├── OceanEngineRequest.cs
│   │   ├── OceanEngineResponse.cs
│   │   ├── README.md
│   │   ├── SKIT.FlurlHttpClient.ByteDance.OceanEngine.csproj
│   │   ├── Settings/
│   │   │   └── Credentials.cs
│   │   └── Utilities/
│   │       └── MD5Utility.cs
│   ├── SKIT.FlurlHttpClient.ByteDance.TikTokGlobal/
│   │   ├── Extensions/
│   │   │   ├── TikTokV2ClientExecuteOAuthExtensions.cs
│   │   │   ├── TikTokV2ClientExecutePostExtensions.cs
│   │   │   ├── TikTokV2ClientExecuteResearchExtensions.cs
│   │   │   ├── TikTokV2ClientExecuteUserExtensions.cs
│   │   │   └── TikTokV2ClientExecuteVideoExtensions.cs
│   │   ├── Models/
│   │   │   ├── OAuth/
│   │   │   │   ├── OAuthAccessTokenRequest.cs
│   │   │   │   ├── OAuthAccessTokenResponse.cs
│   │   │   │   ├── OAuthRefreshTokenRequest.cs
│   │   │   │   ├── OAuthRefreshTokenResponse.cs
│   │   │   │   ├── OAuthRevokeTokenRequest.cs
│   │   │   │   ├── OAuthRevokeTokenResponse.cs
│   │   │   │   └── Qrcode/
│   │   │   │       ├── OAuthCheckQrcodeRequest.cs
│   │   │   │       ├── OAuthCheckQrcodeResponse.cs
│   │   │   │       ├── OAuthGetQrcodeRequest.cs
│   │   │   │       └── OAuthGetQrcodeResponse.cs
│   │   │   ├── Post/
│   │   │   │   ├── PostPublishContentInitRequest.cs
│   │   │   │   ├── PostPublishContentInitResponse.cs
│   │   │   │   ├── PostPublishCreatorInfoQueryRequest.cs
│   │   │   │   ├── PostPublishCreatorInfoQueryResponse.cs
│   │   │   │   ├── PostPublishInboxVideoInitRequest.cs
│   │   │   │   ├── PostPublishInboxVideoInitResponse.cs
│   │   │   │   ├── PostPublishStatusFetchRequest.cs
│   │   │   │   ├── PostPublishStatusFetchResponse.cs
│   │   │   │   ├── PostPublishVideoInitRequest.cs
│   │   │   │   ├── PostPublishVideoInitResponse.cs
│   │   │   │   ├── PostUploadVideoRequest.cs
│   │   │   │   └── PostUploadVideoResponse.cs
│   │   │   ├── Research/
│   │   │   │   ├── Adlib/
│   │   │   │   │   ├── ResearchAdlibAdDetailRequest.cs
│   │   │   │   │   ├── ResearchAdlibAdDetailResponse.cs
│   │   │   │   │   ├── ResearchAdlibAdQueryRequest.cs
│   │   │   │   │   ├── ResearchAdlibAdQueryResponse.cs
│   │   │   │   │   ├── ResearchAdlibAdReportRequest.cs
│   │   │   │   │   ├── ResearchAdlibAdReportResponse.cs
│   │   │   │   │   ├── ResearchAdlibAdvertiserQueryRequest.cs
│   │   │   │   │   ├── ResearchAdlibAdvertiserQueryResponse.cs
│   │   │   │   │   ├── ResearchAdlibCommercialContentQueryRequest.cs
│   │   │   │   │   └── ResearchAdlibCommercialContentQueryResponse.cs
│   │   │   │   ├── Playlist/
│   │   │   │   │   ├── ResearchPlaylistInfoRequest.cs
│   │   │   │   │   └── ResearchPlaylistInfoResponse.cs
│   │   │   │   ├── User/
│   │   │   │   │   ├── ResearchUserFollowersRequest.cs
│   │   │   │   │   ├── ResearchUserFollowersResponse.cs
│   │   │   │   │   ├── ResearchUserFollowingRequest.cs
│   │   │   │   │   ├── ResearchUserFollowingResponse.cs
│   │   │   │   │   ├── ResearchUserInfoRequest.cs
│   │   │   │   │   ├── ResearchUserInfoResponse.cs
│   │   │   │   │   ├── ResearchUserLikedVideosRequest.cs
│   │   │   │   │   ├── ResearchUserLikedVideosResponse.cs
│   │   │   │   │   ├── ResearchUserPinnedVideosRequest.cs
│   │   │   │   │   ├── ResearchUserPinnedVideosResponse.cs
│   │   │   │   │   ├── ResearchUserRepostedVideosRequest.cs
│   │   │   │   │   └── ResearchUserRepostedVideosResponse.cs
│   │   │   │   └── Video/
│   │   │   │       ├── ResearchVideoCommentListRequest.cs
│   │   │   │       ├── ResearchVideoCommentListResponse.cs
│   │   │   │       ├── ResearchVideoQueryRequest.cs
│   │   │   │       └── ResearchVideoQueryResponse.cs
│   │   │   ├── User/
│   │   │   │   ├── Data/
│   │   │   │   │   ├── UserDataAddRequest.cs
│   │   │   │   │   ├── UserDataAddResponse.cs
│   │   │   │   │   ├── UserDataCancelRequest.cs
│   │   │   │   │   ├── UserDataCancelResponse.cs
│   │   │   │   │   ├── UserDataCheckRequest.cs
│   │   │   │   │   ├── UserDataCheckResponse.cs
│   │   │   │   │   ├── UserDataDownloadRequest.cs
│   │   │   │   │   └── UserDataDownloadResponse.cs
│   │   │   │   ├── UserInfoRequest.cs
│   │   │   │   └── UserInfoResponse.cs
│   │   │   └── Video/
│   │   │       ├── VideoListRequest.cs
│   │   │       ├── VideoListResponse.cs
│   │   │       ├── VideoQueryRequest.cs
│   │   │       └── VideoQueryResponse.cs
│   │   ├── README.md
│   │   ├── SKIT.FlurlHttpClient.ByteDance.TikTokGlobal.csproj
│   │   ├── Settings/
│   │   │   └── Credentials.cs
│   │   ├── TikTokV2Client.cs
│   │   ├── TikTokV2ClientBuilder.cs
│   │   ├── TikTokV2ClientOptions.cs
│   │   ├── TikTokV2Endpoints.cs
│   │   ├── TikTokV2Exception.cs
│   │   ├── TikTokV2Request.cs
│   │   ├── TikTokV2Response.cs
│   │   └── Utilities/
│   │       └── [Internal]/
│   │           └── HttpContentBuilder.cs
│   └── SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/
│       ├── Events/
│       │   ├── CancellationStatusChangeEvent.cs
│       │   ├── OrderStatusChangeEvent.cs
│       │   ├── PackageUpdateEvent.cs
│       │   ├── ProductCreationEvent.cs
│       │   ├── ProductInformationChangeEvent.cs
│       │   ├── ProductStatusChangeEvent.cs
│       │   ├── RecipientAddressUpdateEvent.cs
│       │   ├── ReturnStatusChangeEvent.cs
│       │   ├── SellerDeauthorizationEvent.cs
│       │   └── UpcomingAuthorizationExpirationEvent.cs
│       ├── Extensions/
│       │   ├── TikTokShopClientEventExtensions.cs
│       │   ├── TikTokShopClientExecuteAuthExtensions.cs
│       │   ├── TikTokShopClientExecuteAuthorizationExtensions.cs
│       │   ├── TikTokShopClientExecuteCustomerServiceExtensions.cs
│       │   ├── TikTokShopClientExecuteEventExtensions.cs
│       │   ├── TikTokShopClientExecuteFBTExtensions.cs
│       │   ├── TikTokShopClientExecuteFinanceExtensions.cs
│       │   ├── TikTokShopClientExecuteFulfillmentExtensions.cs
│       │   ├── TikTokShopClientExecuteLogisticsExtensions.cs
│       │   ├── TikTokShopClientExecuteOrderExtensions.cs
│       │   ├── TikTokShopClientExecuteProductExtensions.cs
│       │   ├── TikTokShopClientExecutePromotionExtensions.cs
│       │   ├── TikTokShopClientExecuteReturnRefundExtensions.cs
│       │   ├── TikTokShopClientExecuteSellerExtensions.cs
│       │   └── TikTokShopClientExecuteSupplyChainExtensions.cs
│       ├── Interceptors/
│       │   └── TikTokShopRequestSigningInterceptor.cs
│       ├── Models/
│       │   ├── Auth/
│       │   │   ├── AuthGetTokenRequest.cs
│       │   │   ├── AuthGetTokenResponse.cs
│       │   │   ├── AuthRefreshTokenRequest.cs
│       │   │   └── AuthRefreshTokenResponse.cs
│       │   ├── Authorization/
│       │   │   ├── AuthorizationGetCategoryAssetsRequest.cs
│       │   │   ├── AuthorizationGetCategoryAssetsResponse.cs
│       │   │   ├── AuthorizationGetShopsRequest.cs
│       │   │   └── AuthorizationGetShopsResponse.cs
│       │   ├── CustomerService/
│       │   │   ├── Agents/
│       │   │   │   ├── CustomerServiceGetAgentSettingsRequest.cs
│       │   │   │   ├── CustomerServiceGetAgentSettingsResponse.cs
│       │   │   │   ├── CustomerServiceUpdateAgentSettingsRequest.cs
│       │   │   │   └── CustomerServiceUpdateAgentSettingsResponse.cs
│       │   │   ├── CustomerServiceCreateConversationMessageRequest.cs
│       │   │   ├── CustomerServiceCreateConversationMessageResponse.cs
│       │   │   ├── CustomerServiceCreateConversationRequest.cs
│       │   │   ├── CustomerServiceCreateConversationResponse.cs
│       │   │   ├── CustomerServiceGetConversationMessagesRequest.cs
│       │   │   ├── CustomerServiceGetConversationMessagesResponse.cs
│       │   │   ├── CustomerServiceGetConversationsRequest.cs
│       │   │   ├── CustomerServiceGetConversationsResponse.cs
│       │   │   ├── CustomerServiceReadConversationMessageRequest.cs
│       │   │   ├── CustomerServiceReadConversationMessageResponse.cs
│       │   │   ├── CustomerServiceUploadImageRequest.cs
│       │   │   ├── CustomerServiceUploadImageResponse.cs
│       │   │   └── Performance/
│       │   │       ├── CustomerServiceGetPerformanceRequest.cs
│       │   │       └── CustomerServiceGetPerformanceResponse.cs
│       │   ├── Event/
│       │   │   ├── EventDeleteWebhookRequest.cs
│       │   │   ├── EventDeleteWebhookResponse.cs
│       │   │   ├── EventGetWebhooksRequest.cs
│       │   │   ├── EventGetWebhooksResponse.cs
│       │   │   ├── EventUpdateWebhookRequest.cs
│       │   │   └── EventUpdateWebhookResponse.cs
│       │   ├── FBT/
│       │   │   ├── FBTGetGoodsRequest.cs
│       │   │   ├── FBTGetGoodsResponse.cs
│       │   │   ├── FBTGetInboundOrdersRequest.cs
│       │   │   ├── FBTGetInboundOrdersResponse.cs
│       │   │   ├── FBTGetInventoriesRequest.cs
│       │   │   ├── FBTGetInventoriesResponse.cs
│       │   │   ├── FBTGetInventoryRecordsRequest.cs
│       │   │   ├── FBTGetInventoryRecordsResponse.cs
│       │   │   ├── FBTGetMerchantOnboardedRegionsRequest.cs
│       │   │   ├── FBTGetMerchantOnboardedRegionsResponse.cs
│       │   │   ├── FBTGetWarehousesRequest.cs
│       │   │   └── FBTGetWarehousesResponse.cs
│       │   ├── Finance/
│       │   │   ├── FinanceGetOrderStatementTransactionsRequest.cs
│       │   │   ├── FinanceGetOrderStatementTransactionsResponse.cs
│       │   │   ├── FinanceGetPaymentsRequest.cs
│       │   │   ├── FinanceGetPaymentsResponse.cs
│       │   │   ├── FinanceGetStatementTransactionsRequest.cs
│       │   │   ├── FinanceGetStatementTransactionsResponse.cs
│       │   │   ├── FinanceGetStatementsRequest.cs
│       │   │   ├── FinanceGetStatementsResponse.cs
│       │   │   ├── FinanceGetWithdrawalsRequest.cs
│       │   │   └── FinanceGetWithdrawalsResponse.cs
│       │   ├── Fulfillment/
│       │   │   ├── Bundle/
│       │   │   │   ├── FulfillmentCreateBundleRequest.cs
│       │   │   │   └── FulfillmentCreateBundleResponse.cs
│       │   │   ├── Orders/
│       │   │   │   ├── FulfillmentGetOrderSplitAttributesRequest.cs
│       │   │   │   ├── FulfillmentGetOrderSplitAttributesResponse.cs
│       │   │   │   ├── FulfillmentGetOrderTrackingRequest.cs
│       │   │   │   ├── FulfillmentGetOrderTrackingResponse.cs
│       │   │   │   ├── FulfillmentSearchOrderShippingServicesRequest.cs
│       │   │   │   ├── FulfillmentSearchOrderShippingServicesResponse.cs
│       │   │   │   ├── FulfillmentSplitOrderRequest.cs
│       │   │   │   ├── FulfillmentSplitOrderResponse.cs
│       │   │   │   ├── FulfillmentUpdateOrderPackagesRequest.cs
│       │   │   │   ├── FulfillmentUpdateOrderPackagesResponse.cs
│       │   │   │   ├── FulfillmentUpdateOrderShippingInfoRequest.cs
│       │   │   │   └── FulfillmentUpdateOrderShippingInfoResponse.cs
│       │   │   ├── Packages/
│       │   │   │   ├── Combine/
│       │   │   │   │   ├── FulfillmentCombinePackageRequest.cs
│       │   │   │   │   ├── FulfillmentCombinePackageResponse.cs
│       │   │   │   │   ├── FulfillmentSearchCombinablePackagesRequest.cs
│       │   │   │   │   ├── FulfillmentSearchCombinablePackagesResponse.cs
│       │   │   │   │   ├── FulfillmentUncombinePackageRequest.cs
│       │   │   │   │   └── FulfillmentUncombinePackageResponse.cs
│       │   │   │   ├── FulfillmentBatchShipPackagesRequest.cs
│       │   │   │   ├── FulfillmentBatchShipPackagesResponse.cs
│       │   │   │   ├── FulfillmentBatchUpdatePackagesDeliveryStatusRequest.cs
│       │   │   │   ├── FulfillmentBatchUpdatePackagesDeliveryStatusResponse.cs
│       │   │   │   ├── FulfillmentCreatePackageRequest.cs
│       │   │   │   ├── FulfillmentCreatePackageResponse.cs
│       │   │   │   ├── FulfillmentGetPackageDetailRequest.cs
│       │   │   │   ├── FulfillmentGetPackageDetailResponse.cs
│       │   │   │   ├── FulfillmentGetPackageHandoverTimeSlotsRequest.cs
│       │   │   │   ├── FulfillmentGetPackageHandoverTimeSlotsResponse.cs
│       │   │   │   ├── FulfillmentGetPackageShippingDocumentsRequest.cs
│       │   │   │   ├── FulfillmentGetPackageShippingDocumentsResponse.cs
│       │   │   │   ├── FulfillmentSearchPackagesRequest.cs
│       │   │   │   ├── FulfillmentSearchPackagesResponse.cs
│       │   │   │   ├── FulfillmentShipPackageRequest.cs
│       │   │   │   ├── FulfillmentShipPackageResponse.cs
│       │   │   │   ├── FulfillmentUpdatePackageShippingInfoRequest.cs
│       │   │   │   └── FulfillmentUpdatePackageShippingInfoResponse.cs
│       │   │   └── Upload/
│       │   │       ├── FulfillmentUploadFileRequest.cs
│       │   │       ├── FulfillmentUploadFileResponse.cs
│       │   │       ├── FulfillmentUploadImageRequest.cs
│       │   │       └── FulfillmentUploadImageResponse.cs
│       │   ├── Logistics/
│       │   │   ├── LogisticsGetDeliveryOptionShippingProvidersRequest.cs
│       │   │   ├── LogisticsGetDeliveryOptionShippingProvidersResponse.cs
│       │   │   ├── LogisticsGetGlobalWarehousesRequest.cs
│       │   │   ├── LogisticsGetGlobalWarehousesResponse.cs
│       │   │   ├── LogisticsGetWarehouseDeliveryOptionsRequest.cs
│       │   │   ├── LogisticsGetWarehouseDeliveryOptionsResponse.cs
│       │   │   ├── LogisticsGetWarehousesRequest.cs
│       │   │   └── LogisticsGetWarehousesResponse.cs
│       │   ├── Order/
│       │   │   ├── ExternalOrder/
│       │   │   │   ├── OrderCreateExternalOrderRequest.cs
│       │   │   │   ├── OrderCreateExternalOrderResponse.cs
│       │   │   │   ├── OrderGetExternalOrdersRequest.cs
│       │   │   │   ├── OrderGetExternalOrdersResponse.cs
│       │   │   │   ├── OrderSearchExternalOrdersRequest.cs
│       │   │   │   └── OrderSearchExternalOrdersResponse.cs
│       │   │   ├── OrderBatchGetOrderDetailRequest.cs
│       │   │   ├── OrderBatchGetOrderDetailResponse.cs
│       │   │   ├── OrderGetOrderPriceDetailRequest.cs
│       │   │   ├── OrderGetOrderPriceDetailResponse.cs
│       │   │   ├── OrderSearchOrdersRequest.cs
│       │   │   └── OrderSearchOrdersResponse.cs
│       │   ├── Product/
│       │   │   ├── Brand/
│       │   │   │   ├── ProductCreateBrandRequest.cs
│       │   │   │   ├── ProductCreateBrandResponse.cs
│       │   │   │   ├── ProductGetBrandsRequest.cs
│       │   │   │   └── ProductGetBrandsResponse.cs
│       │   │   ├── Category/
│       │   │   │   ├── ProductGetCategoriesRequest.cs
│       │   │   │   ├── ProductGetCategoriesResponse.cs
│       │   │   │   ├── ProductGetCategoryAttributesRequest.cs
│       │   │   │   ├── ProductGetCategoryAttributesResponse.cs
│       │   │   │   ├── ProductGetCategoryRulesRequest.cs
│       │   │   │   ├── ProductGetCategoryRulesResponse.cs
│       │   │   │   ├── ProductRecommendCategoriesRequest.cs
│       │   │   │   └── ProductRecommendCategoriesResponse.cs
│       │   │   ├── Compliance/
│       │   │   │   ├── ProductCreateComplianceManufacturerRequest.cs
│       │   │   │   ├── ProductCreateComplianceManufacturerResponse.cs
│       │   │   │   ├── ProductCreateComplianceResponsiblePersonRequest.cs
│       │   │   │   ├── ProductCreateComplianceResponsiblePersonResponse.cs
│       │   │   │   ├── ProductSearchComplianceManufacturersRequest.cs
│       │   │   │   ├── ProductSearchComplianceManufacturersResponse.cs
│       │   │   │   ├── ProductSearchComplianceResponsiblePersonsRequest.cs
│       │   │   │   ├── ProductSearchComplianceResponsiblePersonsResponse.cs
│       │   │   │   ├── ProductUpdateComplianceManufacturerPartiallyRequest.cs
│       │   │   │   ├── ProductUpdateComplianceManufacturerPartiallyResponse.cs
│       │   │   │   ├── ProductUpdateComplianceResponsiblePersonPartiallyRequest.cs
│       │   │   │   └── ProductUpdateComplianceResponsiblePersonPartiallyResponse.cs
│       │   │   ├── Global/
│       │   │   │   ├── Category/
│       │   │   │   │   ├── ProductGetGlobalCategoriesRequest.cs
│       │   │   │   │   ├── ProductGetGlobalCategoriesResponse.cs
│       │   │   │   │   ├── ProductGetGlobalCategoryAttributesRequest.cs
│       │   │   │   │   ├── ProductGetGlobalCategoryAttributesResponse.cs
│       │   │   │   │   ├── ProductGetGlobalCategoryRulesRequest.cs
│       │   │   │   │   ├── ProductGetGlobalCategoryRulesResponse.cs
│       │   │   │   │   ├── ProductRecommendGlobalCategoriesRequest.cs
│       │   │   │   │   └── ProductRecommendGlobalCategoriesResponse.cs
│       │   │   │   ├── ProductCreateGlobalProductRequest.cs
│       │   │   │   ├── ProductCreateGlobalProductResponse.cs
│       │   │   │   ├── ProductDeleteGlobalProductsRequest.cs
│       │   │   │   ├── ProductDeleteGlobalProductsResponse.cs
│       │   │   │   ├── ProductGetGlobalProductDetailRequest.cs
│       │   │   │   ├── ProductGetGlobalProductDetailResponse.cs
│       │   │   │   ├── ProductPublishGlobalProductRequest.cs
│       │   │   │   ├── ProductPublishGlobalProductResponse.cs
│       │   │   │   ├── ProductSearchGlobalProductsRequest.cs
│       │   │   │   ├── ProductSearchGlobalProductsResponse.cs
│       │   │   │   ├── ProductUpdateGlobalProductInventoryRequest.cs
│       │   │   │   ├── ProductUpdateGlobalProductInventoryResponse.cs
│       │   │   │   ├── ProductUpdateGlobalProductRequest.cs
│       │   │   │   └── ProductUpdateGlobalProductResponse.cs
│       │   │   ├── ProductActivateProductsRequest.cs
│       │   │   ├── ProductActivateProductsResponse.cs
│       │   │   ├── ProductCreateProductCategoryUpgradeTaskRequest.cs
│       │   │   ├── ProductCreateProductCategoryUpgradeTaskResponse.cs
│       │   │   ├── ProductCreateProductListingCheckRequest.cs
│       │   │   ├── ProductCreateProductListingCheckResponse.cs
│       │   │   ├── ProductCreateProductRequest.cs
│       │   │   ├── ProductCreateProductResponse.cs
│       │   │   ├── ProductDeactivateProductsRequest.cs
│       │   │   ├── ProductDeactivateProductsResponse.cs
│       │   │   ├── ProductDeleteProductsRequest.cs
│       │   │   ├── ProductDeleteProductsResponse.cs
│       │   │   ├── ProductGetInventoriesRequest.cs
│       │   │   ├── ProductGetInventoriesResponse.cs
│       │   │   ├── ProductGetListingSchemasRequest.cs
│       │   │   ├── ProductGetListingSchemasResponse.cs
│       │   │   ├── ProductGetPrerequisitesRequest.cs
│       │   │   ├── ProductGetPrerequisitesResponse.cs
│       │   │   ├── ProductGetProductDetailRequest.cs
│       │   │   ├── ProductGetProductDetailResponse.cs
│       │   │   ├── ProductGetProductDiagnosesRequest.cs
│       │   │   ├── ProductGetProductDiagnosesResponse.cs
│       │   │   ├── ProductGetProductSEOWordsRequest.cs
│       │   │   ├── ProductGetProductSEOWordsResponse.cs
│       │   │   ├── ProductGetProductSuggestionsRequest.cs
│       │   │   ├── ProductGetProductSuggestionsResponse.cs
│       │   │   ├── ProductRecoverProductsRequest.cs
│       │   │   ├── ProductRecoverProductsResponse.cs
│       │   │   ├── ProductSearchProductsRequest.cs
│       │   │   ├── ProductSearchProductsResponse.cs
│       │   │   ├── ProductUpdateProductInventoryRequest.cs
│       │   │   ├── ProductUpdateProductInventoryResponse.cs
│       │   │   ├── ProductUpdateProductPartiallyRequest.cs
│       │   │   ├── ProductUpdateProductPartiallyResponse.cs
│       │   │   ├── ProductUpdateProductPriceRequest.cs
│       │   │   ├── ProductUpdateProductPriceResponse.cs
│       │   │   ├── ProductUpdateProductRequest.cs
│       │   │   ├── ProductUpdateProductResponse.cs
│       │   │   ├── SizeChart/
│       │   │   │   ├── ProductSearchSizeChartsRequest.cs
│       │   │   │   └── ProductSearchSizeChartsResponse.cs
│       │   │   └── Upload/
│       │   │       ├── ProductOptimizeImagesRequest.cs
│       │   │       ├── ProductOptimizeImagesResponse.cs
│       │   │       ├── ProductUploadFileRequest.cs
│       │   │       ├── ProductUploadFileResponse.cs
│       │   │       ├── ProductUploadImageRequest.cs
│       │   │       └── ProductUploadImageResponse.cs
│       │   ├── Promotion/
│       │   │   ├── Activity/
│       │   │   │   ├── PromotionCreateActivityRequest.cs
│       │   │   │   ├── PromotionCreateActivityResponse.cs
│       │   │   │   ├── PromotionDeactivateActivityRequest.cs
│       │   │   │   ├── PromotionDeactivateActivityResponse.cs
│       │   │   │   ├── PromotionDeleteActivityProductsRequest.cs
│       │   │   │   ├── PromotionDeleteActivityProductsResponse.cs
│       │   │   │   ├── PromotionGetActivityDetailRequest.cs
│       │   │   │   ├── PromotionGetActivityDetailResponse.cs
│       │   │   │   ├── PromotionSearchActivitiesRequest.cs
│       │   │   │   ├── PromotionSearchActivitiesResponse.cs
│       │   │   │   ├── PromotionUpdateActivityProductsRequest.cs
│       │   │   │   ├── PromotionUpdateActivityProductsResponse.cs
│       │   │   │   ├── PromotionUpdateActivityRequest.cs
│       │   │   │   └── PromotionUpdateActivityResponse.cs
│       │   │   └── Coupon/
│       │   │       ├── PromotionGetCouponDetailRequest.cs
│       │   │       ├── PromotionGetCouponDetailResponse.cs
│       │   │       ├── PromotionSearchCouponsRequest.cs
│       │   │       └── PromotionSearchCouponsResponse.cs
│       │   ├── ReturnRefund/
│       │   │   ├── Cancellations/
│       │   │   │   ├── ReturnRefundApproveCancellationRequest.cs
│       │   │   │   ├── ReturnRefundApproveCancellationResponse.cs
│       │   │   │   ├── ReturnRefundCreateCancellationRequest.cs
│       │   │   │   ├── ReturnRefundCreateCancellationResponse.cs
│       │   │   │   ├── ReturnRefundRejectCancellationRequest.cs
│       │   │   │   ├── ReturnRefundRejectCancellationResponse.cs
│       │   │   │   ├── ReturnRefundSearchCancellationsRequest.cs
│       │   │   │   └── ReturnRefundSearchCancellationsResponse.cs
│       │   │   ├── Orders/
│       │   │   │   ├── ReturnRefundGetOrderAftersaleEligibilityRequest.cs
│       │   │   │   └── ReturnRefundGetOrderAftersaleEligibilityResponse.cs
│       │   │   ├── Refunds/
│       │   │   │   ├── ReturnRefundCalculateRefundRequest.cs
│       │   │   │   └── ReturnRefundCalculateRefundResponse.cs
│       │   │   ├── ReturnRefundGetRejectReasonsRequest.cs
│       │   │   ├── ReturnRefundGetRejectReasonsResponse.cs
│       │   │   └── Returns/
│       │   │       ├── ReturnRefundApproveReturnRequest.cs
│       │   │       ├── ReturnRefundApproveReturnResponse.cs
│       │   │       ├── ReturnRefundCreateReturnRequest.cs
│       │   │       ├── ReturnRefundCreateReturnResponse.cs
│       │   │       ├── ReturnRefundGetReturnRecordsRequest.cs
│       │   │       ├── ReturnRefundGetReturnRecordsResponse.cs
│       │   │       ├── ReturnRefundRejectReturnRequest.cs
│       │   │       ├── ReturnRefundRejectReturnResponse.cs
│       │   │       ├── ReturnRefundSearchReturnsRequest.cs
│       │   │       └── ReturnRefundSearchReturnsResponse.cs
│       │   ├── Seller/
│       │   │   ├── SellerGetPermissionsRequest.cs
│       │   │   ├── SellerGetPermissionsResponse.cs
│       │   │   ├── SellerGetShopsRequest.cs
│       │   │   └── SellerGetShopsResponse.cs
│       │   └── SupplyChain/
│       │       ├── SupplyChainSyncPackagesRequest.cs
│       │       └── SupplyChainSyncPackagesResponse.cs
│       ├── README.md
│       ├── SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.csproj
│       ├── Settings/
│       │   └── Credentials.cs
│       ├── TikTokShopClient.cs
│       ├── TikTokShopClientBuilder.cs
│       ├── TikTokShopClientOptions.cs
│       ├── TikTokShopEndpoints.cs
│       ├── TikTokShopEvent.cs
│       ├── TikTokShopException.cs
│       ├── TikTokShopRequest.cs
│       ├── TikTokShopResponse.cs
│       └── Utilities/
│           ├── HMACUtility.cs
│           └── [Internal]/
│               └── HttpContentBuilder.cs
└── test/
    ├── NuGet.config
    ├── SKIT.FlurlHttpClient.ByteDance.DouyinOpen.UnitTests/
    │   ├── .gitignore
    │   ├── EventSamples/
    │   │   ├── GoodLife/
    │   │   │   ├── LifeMemberJoinEvent.json
    │   │   │   ├── LifeMemberLeaveEvent.json
    │   │   │   ├── LifeProductAuditEvent.json
    │   │   │   ├── LifeTradeCertificateNotifyEvent.json
    │   │   │   └── LifeTradeOrderNotifyEvent.json
    │   │   ├── IM/
    │   │   │   ├── EnterGroupAuditChangeEvent.json
    │   │   │   ├── GroupFansEventEvent.json
    │   │   │   ├── IMAuthorizeEvent.json
    │   │   │   ├── IMEnterDirectMessageEvent.json
    │   │   │   ├── IMGroupReceiveMessageEvent.json
    │   │   │   └── IMReceiveMessageEvent.json
    │   │   ├── Interaction/
    │   │   │   ├── NewFollowActionEvent.json
    │   │   │   └── NewVideoDiggEvent.json
    │   │   ├── UnionAuth/
    │   │   │   ├── UnionAuthInfoForBEvent.json
    │   │   │   └── UnionAuthInfoForCEvent.json
    │   │   └── Webhook/
    │   │       ├── AuthorizeEvent.json
    │   │       ├── CreateVideoEvent.json
    │   │       ├── DialogPhoneEvent.json
    │   │       ├── ItemCommentReplyEvent.json
    │   │       ├── PersonalTabContactEvent.json
    │   │       ├── ReceiveMessageEvent.json
    │   │       ├── UnauthorizeEvent.json
    │   │       ├── VerifyWebhookEvent.json
    │   │       └── WebsiteContactEvent.json
    │   ├── IMPORTANT_CodeAnalyzeTests.cs
    │   ├── ModelSamples/
    │   │   ├── ApiAppsAuth/
    │   │   │   ├── AppsAuthGetOpenIdByCV1Request.json
    │   │   │   └── AppsAuthGetOpenIdByCV1Response.json
    │   │   ├── ApiAppsTrade/
    │   │   │   ├── AppsTradeBookCreateBookV2Request.json
    │   │   │   ├── AppsTradeBookCreateBookV2Response.json
    │   │   │   ├── AppsTradeBookMerchantCancelBookV2Request.json
    │   │   │   ├── AppsTradeBookQueryBookV2Request.json
    │   │   │   ├── AppsTradeBookQueryBookV2Response.json
    │   │   │   ├── AppsTradeBookResultCallbackV2Request.json
    │   │   │   ├── AppsTradeBookUserCancelBookV2Request.json
    │   │   │   ├── AppsTradeFulfillmentDeliveryPrepareV2Request.json
    │   │   │   ├── AppsTradeFulfillmentDeliveryPrepareV2Response.json
    │   │   │   ├── AppsTradeFulfillmentDeliveryVerifyV2Request.json
    │   │   │   ├── AppsTradeFulfillmentDeliveryVerifyV2Response.json
    │   │   │   ├── AppsTradeFulfillmentOrderCanUseV2Request.json
    │   │   │   ├── AppsTradeFulfillmentOrderCanUseV2Response.json
    │   │   │   ├── AppsTradeFulfillmentPushDeliveryV2Request.json
    │   │   │   ├── AppsTradeFulfillmentPushDeliveryV2Response.json
    │   │   │   ├── AppsTradeFulfillmentQueryUserCertificatesV2Request.json
    │   │   │   ├── AppsTradeFulfillmentQueryUserCertificatesV2Response.json
    │   │   │   ├── AppsTradeFulfillmentVerifyCancelV2Request.json
    │   │   │   ├── AppsTradeOrderCloseOrderV2Request.json
    │   │   │   ├── AppsTradeOrderCreateOrderV2Request.json
    │   │   │   ├── AppsTradeOrderCreateOrderV2Response.json
    │   │   │   ├── AppsTradeOrderQueryCPSV2Request.json
    │   │   │   ├── AppsTradeOrderQueryCPSV2Response.json
    │   │   │   ├── AppsTradeOrderQueryItemOrderInfoV2Request.json
    │   │   │   ├── AppsTradeOrderQueryItemOrderInfoV2Response.json
    │   │   │   ├── AppsTradeOrderQueryOrderV2Request.json
    │   │   │   ├── AppsTradeOrderQueryOrderV2Response.json
    │   │   │   ├── AppsTradeRefundCreateRefundV2Request.json
    │   │   │   ├── AppsTradeRefundCreateRefundV2Response.json
    │   │   │   ├── AppsTradeRefundMerchantAuditCallbackV2Request.json
    │   │   │   ├── AppsTradeRefundQueryRefundV2Request.json
    │   │   │   ├── AppsTradeRefundQueryRefundV2Response.json
    │   │   │   ├── AppsTradeSettleCreateSettleV2Request.json
    │   │   │   ├── AppsTradeSettleCreateSettleV2Response.json
    │   │   │   ├── AppsTradeSettleQuerySettleV2Request.json
    │   │   │   └── AppsTradeSettleQuerySettleV2Response.json
    │   │   ├── ApiDouyinAuth/
    │   │   │   ├── DouyinAuthGetOpenIdByBV1Request.json
    │   │   │   ├── DouyinAuthGetOpenIdByBV1Response.json
    │   │   │   ├── DouyinAuthGetOpenIdByCV1Request.json
    │   │   │   ├── DouyinAuthGetOpenIdByCV1Response.json
    │   │   │   ├── DouyinAuthGetRelatedIdV1Request.json
    │   │   │   └── DouyinAuthGetRelatedIdV1Response.json
    │   │   ├── ApiDouyinIM/
    │   │   │   ├── DouyinIMGetAppletTemplateV1Request.json
    │   │   │   ├── DouyinIMGetAppletTemplateV1Response.json
    │   │   │   ├── DouyinIMSetAppletTemplateV1Request.json
    │   │   │   └── DouyinIMSetAppletTemplateV1Response.json
    │   │   ├── ApiDouyinInteractive/
    │   │   │   └── DouyinInteractiveIntentionLogListV1Response.json
    │   │   ├── ApiDouyinRole/
    │   │   │   ├── DouyinRoleCheckV1Request.json
    │   │   │   └── DouyinRoleCheckV1Response.json
    │   │   ├── ApiDouyinSchema/
    │   │   │   ├── DouyinSchemaGetChatV1Request.json
    │   │   │   ├── DouyinSchemaGetChatV1Response.json
    │   │   │   ├── DouyinSchemaGetItemInfoV1Request.json
    │   │   │   ├── DouyinSchemaGetItemInfoV1Response.json
    │   │   │   ├── DouyinSchemaGetLiveV1Request.json
    │   │   │   ├── DouyinSchemaGetLiveV1Response.json
    │   │   │   ├── DouyinSchemaGetShareV1Request.json
    │   │   │   ├── DouyinSchemaGetShareV1Response.json
    │   │   │   ├── DouyinSchemaGetUserProfileV1Request.json
    │   │   │   └── DouyinSchemaGetUserProfileV1Response.json
    │   │   ├── ApiDouyinUser/
    │   │   │   └── DouyinUserFansDataV1Response.json
    │   │   ├── ApiDouyinVideo/
    │   │   │   ├── DouyinVideoBasicInfoV1Request.json
    │   │   │   ├── DouyinVideoBasicInfoV1Response.json
    │   │   │   ├── DouyinVideoCreateVideoV1Response.json
    │   │   │   ├── DouyinVideoDataV1Response.json
    │   │   │   ├── DouyinVideoListV1Response.json
    │   │   │   ├── DouyinVideoUploadVideoV1Response.json
    │   │   │   ├── Iframe/
    │   │   │   │   ├── DouyinVideoGetIframeByItemV1Response.json
    │   │   │   │   └── DouyinVideoGetIframeByVideoV1Response.json
    │   │   │   ├── Image/
    │   │   │   │   ├── DouyinVideoCreateImageTextV1Request.json
    │   │   │   │   ├── DouyinVideoCreateImageTextV1Response.json
    │   │   │   │   └── DouyinVideoUploadImageV1Response.json
    │   │   │   └── Part/
    │   │   │       ├── DouyinVideoCompleteVideoPartUploadV1Response.json
    │   │   │       └── DouyinVideoInitVideoPartUploadV1Response.json
    │   │   ├── ApiIM/
    │   │   │   └── IMMessageResourcesResponse.json
    │   │   ├── ApiIndustry/
    │   │   │   ├── AppTestRelation/
    │   │   │   │   ├── IndustrySolutionAddAppTestRelationV1Request.json
    │   │   │   │   ├── IndustrySolutionAddAppTestRelationV1Response.json
    │   │   │   │   ├── IndustrySolutionDeleteAppTestRelationV1Request.json
    │   │   │   │   ├── IndustrySolutionDeleteAppTestRelationV1Response.json
    │   │   │   │   ├── IndustrySolutionQueryAppTestRelationV1Request.json
    │   │   │   │   └── IndustrySolutionQueryAppTestRelationV1Response.json
    │   │   │   └── Implementation/
    │   │   │       ├── IndustrySolutionQueryImplementationV1Request.json
    │   │   │       └── IndustrySolutionQueryImplementationV1Response.json
    │   │   ├── ApiMatch/
    │   │   │   ├── MatchTaskboxAgencyQueryBillLinkV2Request.json
    │   │   │   ├── MatchTaskboxAgencyQueryBillLinkV2Response.json
    │   │   │   ├── MatchTaskboxAgencyQueryVideoSummaryDataV2Request.json
    │   │   │   ├── MatchTaskboxAgencyQueryVideoSummaryDataV2Response.json
    │   │   │   ├── MatchTaskboxChangeUserBindAgentV1Request.json
    │   │   │   ├── MatchTaskboxGenerateAgentLinkV1Request.json
    │   │   │   ├── MatchTaskboxGenerateAgentLinkV1Response.json
    │   │   │   ├── MatchTaskboxGetAgencyUserBindRecordV1Request.json
    │   │   │   ├── MatchTaskboxGetAgencyUserBindRecordV1Response.json
    │   │   │   ├── MatchTaskboxQueryAppTaskIdV1Request.json
    │   │   │   ├── MatchTaskboxQueryAppTaskIdV1Response.json
    │   │   │   ├── MatchTaskboxQueryTaskInfoV1Request.json
    │   │   │   ├── MatchTaskboxQueryTaskInfoV1Response.json
    │   │   │   ├── MatchTaskboxQueryTaskVideoStatusV2Request.json
    │   │   │   ├── MatchTaskboxQueryTaskVideoStatusV2Response.json
    │   │   │   ├── MatchTaskboxQueryViolateTalentListV2Response.json
    │   │   │   ├── MatchTaskboxSaveAgentV1Request.json
    │   │   │   └── MatchTaskboxSaveAgentV1Response.json
    │   │   ├── DataExternal/
    │   │   │   ├── Anchor/
    │   │   │   │   └── DataExternalAnchorMpItemClickDistributionResponse.json
    │   │   │   ├── Billboard/
    │   │   │   │   ├── HotVideo/
    │   │   │   │   │   └── DataExternalBillboardHotVideoResponse.json
    │   │   │   │   ├── Live/
    │   │   │   │   │   └── DataExternalBillboardLiveResponse.json
    │   │   │   │   ├── Music/
    │   │   │   │   │   └── DataExternalBillboardMusicHotResponse.json
    │   │   │   │   ├── Prop/
    │   │   │   │   │   └── DataExternalBillboardPropResponse.json
    │   │   │   │   ├── Sport/
    │   │   │   │   │   ├── DataExternalBillboardSportBasketballResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportComprehensiveResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportCultureResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportFitnessResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportOutdoorsResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportOverallResponse.json
    │   │   │   │   │   ├── DataExternalBillboardSportSoccerResponse.json
    │   │   │   │   │   └── DataExternalBillboardSportTableTennisResponse.json
    │   │   │   │   ├── Stars/
    │   │   │   │   │   └── DataExternalBillboardStarsResponse.json
    │   │   │   │   └── Topic/
    │   │   │   │       └── DataExternalBillboardTopicResponse.json
    │   │   │   ├── Fans/
    │   │   │   │   ├── DataExternalFansFavouriteResponse.json
    │   │   │   │   └── DataExternalFansSourceResponse.json
    │   │   │   ├── Item/
    │   │   │   │   ├── DataExternalItemBaseResponse.json
    │   │   │   │   ├── DataExternalItemCommentResponse.json
    │   │   │   │   ├── DataExternalItemLikeResponse.json
    │   │   │   │   ├── DataExternalItemPlayResponse.json
    │   │   │   │   └── DataExternalItemShareResponse.json
    │   │   │   ├── POI/
    │   │   │   │   ├── DataExternalPOIBaseResponse.json
    │   │   │   │   ├── DataExternalPOIBillboardResponse.json
    │   │   │   │   ├── DataExternalPOIClaimListResponse.json
    │   │   │   │   ├── DataExternalPOIServiceBaseResponse.json
    │   │   │   │   ├── DataExternalPOIServiceUserResponse.json
    │   │   │   │   └── DataExternalPOIUserResponse.json
    │   │   │   └── User/
    │   │   │       ├── DataExternalUserCommentResponse.json
    │   │   │       ├── DataExternalUserFansResponse.json
    │   │   │       ├── DataExternalUserItemResponse.json
    │   │   │       ├── DataExternalUserLikeResponse.json
    │   │   │       ├── DataExternalUserProfileResponse.json
    │   │   │       └── DataExternalUserShareResponse.json
    │   │   ├── DevTool/
    │   │   │   └── DevToolMicroAppIsLegalResponse.json
    │   │   ├── Discovery/
    │   │   │   ├── DiscoveryEntertainmentRankItemResponse.json
    │   │   │   └── DiscoveryEntertainmentRankVersionResponse.json
    │   │   ├── Enterprise/
    │   │   │   └── Media/
    │   │   │       ├── EnterpriseMediaDeleteResponse.json
    │   │   │       ├── EnterpriseMediaListResponse.json
    │   │   │       ├── EnterpriseMediaTempUploadResponse.json
    │   │   │       └── EnterpriseMediaUploadResponse.json
    │   │   ├── Event/
    │   │   │   ├── EventStatusListResponse.json
    │   │   │   └── EventStatusUpdateResponse.json
    │   │   ├── Fans/
    │   │   │   └── FansCheckResponse.json
    │   │   ├── GoodLife/
    │   │   │   ├── Aftersale/
    │   │   │   │   ├── Audit/
    │   │   │   │   │   └── GoodLifeAftersaleAuditNotifyV1Request.json
    │   │   │   │   └── Order/
    │   │   │   │       ├── GoodLifeAftersaleOrderApplyRefundV1Request.json
    │   │   │   │       └── GoodLifeAftersaleOrderMerchantRejectV1Request.json
    │   │   │   ├── Fulfilment/
    │   │   │   │   ├── Certificate/
    │   │   │   │   │   ├── GoodLifeFulfilmentCertificateGetV1Response.json
    │   │   │   │   │   ├── GoodLifeFulfilmentCertificateQueryV1Response.json
    │   │   │   │   │   ├── GoodLifeFulfilmentCertificateVerifyRecordQueryV1Response.json
    │   │   │   │   │   ├── GoodLifeFulfilmentCertificateVerifyV1Request.json
    │   │   │   │   │   └── GoodLifeFulfilmentCertificateVerifyV1Response.json
    │   │   │   │   ├── Distribution/
    │   │   │   │   │   └── GoodLifeFulfilmentDistributionOrderSyncStatusV1Request.json
    │   │   │   │   └── ReserveCode/
    │   │   │   │       ├── GoodLifeFulfilmentReserveCodeBatchImportV1Request.json
    │   │   │   │       ├── GoodLifeFulfilmentReserveCodeBindOrderInfoV1Request.json
    │   │   │   │       └── GoodLifeFulfilmentReserveCodeBindOrderInfoV1Response.json
    │   │   │   ├── Goods/
    │   │   │   │   ├── Calendar/
    │   │   │   │   │   ├── GoodLifeGoodsCalendarAmountGroupSaveV1Request.json
    │   │   │   │   │   ├── GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Request.json
    │   │   │   │   │   └── GoodLifeGoodsCalendarStockGroupSaveV1Request.json
    │   │   │   │   ├── Product/
    │   │   │   │   │   ├── GoodLifeGoodsProductDraftGetV1Response.json
    │   │   │   │   │   ├── GoodLifeGoodsProductDraftQueryV1Response.json
    │   │   │   │   │   ├── GoodLifeGoodsProductFreeAuditV1Request.json
    │   │   │   │   │   ├── GoodLifeGoodsProductOnlineGetV1Response.json
    │   │   │   │   │   ├── GoodLifeGoodsProductOnlineQueryV1Response.json
    │   │   │   │   │   ├── GoodLifeGoodsProductOperateV1Request.json
    │   │   │   │   │   ├── GoodLifeGoodsProductSaveV1Request.json
    │   │   │   │   │   └── GoodLifeGoodsProductSaveV1Response.json
    │   │   │   │   ├── SKU/
    │   │   │   │   │   └── GoodLifeGoodsSKUBatchSaveV1Request.json
    │   │   │   │   ├── SPU/
    │   │   │   │   │   ├── GoodLifeGoodsSPUSaveV1Request.json
    │   │   │   │   │   └── GoodLifeGoodsSPUSaveV1Response.json
    │   │   │   │   ├── Stock/
    │   │   │   │   │   └── GoodLifeGoodsStockSyncV1Request.json
    │   │   │   │   └── Template/
    │   │   │   │       └── GoodLifeGoodsTemplateGetV1Response.json
    │   │   │   ├── Member/
    │   │   │   │   ├── GoodLifeMemberUnionIdGetV1Request.json
    │   │   │   │   ├── GoodLifeMemberUnionIdGetV1Response.json
    │   │   │   │   └── GoodLifeMemberUserUpdateV1Request.json
    │   │   │   ├── POI/
    │   │   │   │   ├── Crowd/
    │   │   │   │   │   └── GoodLifePOICrowdSaveV1Request.json
    │   │   │   │   ├── GoodLifePOIClaimV1Request.json
    │   │   │   │   ├── GoodLifePOIClaimV1Response.json
    │   │   │   │   ├── GoodLifePOIMatchRelationQueryV1Response.json
    │   │   │   │   ├── GoodLifePOIMatchTaskQueryV1Response.json
    │   │   │   │   ├── GoodLifePOIMatchTaskSubmitV1Request.json
    │   │   │   │   ├── GoodLifePOIMatchTaskSubmitV1Response.json
    │   │   │   │   ├── GoodLifePOISyncV1Request.json
    │   │   │   │   └── GoodLifePOISyncV1Response.json
    │   │   │   ├── Partner/
    │   │   │   │   ├── Commission/
    │   │   │   │   │   ├── GoodLifePartnerCommissionRecordGetV1Response.json
    │   │   │   │   │   ├── GoodLifePartnerCommissionRecordQueryV1Response.json
    │   │   │   │   │   ├── GoodLifePartnerProductCommissionQueryV1Response.json
    │   │   │   │   │   ├── GoodLifePartnerProductCommissionSaveV1Request.json
    │   │   │   │   │   └── GoodLifePartnerProductCommissionSaveV1Response.json
    │   │   │   │   └── Order/
    │   │   │   │       ├── GoodLifePartnerOrderCreateV1Request.json
    │   │   │   │       ├── GoodLifePartnerOrderCreateV1Response.json
    │   │   │   │       ├── GoodLifePartnerOrderGetV1Response.json
    │   │   │   │       └── GoodLifePartnerOrderQueryV1Response.json
    │   │   │   ├── Settle/
    │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryByOrderV1Response.json
    │   │   │   │   ├── GoodLifeSettleLedgerDetailedQueryV1Response.json
    │   │   │   │   ├── GoodLifeSettleLedgerQueryByOrderV1Response.json
    │   │   │   │   ├── GoodLifeSettleLedgerQueryRecordByCertificateV1Response.json
    │   │   │   │   └── GoodLifeSettleLedgerQueryV1Response.json
    │   │   │   ├── Shop/
    │   │   │   │   └── GoodLifeShopPOIQueryV1Response.json
    │   │   │   └── Trade/
    │   │   │       ├── GoodLifeTradeBookGetV1Response.json
    │   │   │       ├── GoodLifeTradeBuyMerchantConfirmOrderV1Request.json
    │   │   │       └── GoodLifeTradeOrderQueryV1Response.json
    │   │   ├── HotSearch/
    │   │   │   ├── HotSearchSentencesResponse.json
    │   │   │   ├── HotSearchTrendingSentencesResponse.json
    │   │   │   └── HotSearchVideosResponse.json
    │   │   ├── IM/
    │   │   │   ├── Authorize/
    │   │   │   │   ├── IMAuthorizeStatusRequest.json
    │   │   │   │   ├── IMAuthorizeStatusResponse.json
    │   │   │   │   ├── IMAuthorizeUserListRequest.json
    │   │   │   │   
Download .txt
Showing preview only (1,170K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (9141 symbols across 2757 files)

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenClient.cs
  class DouyinOpenClient (line 12) | public class DouyinOpenClient : CommonClientBase, ICommonClient
    method DouyinOpenClient (line 23) | public DouyinOpenClient(DouyinOpenClientOptions options)
    method DouyinOpenClient (line 34) | internal protected DouyinOpenClient(DouyinOpenClientOptions options, H...
    method CreateFlurlRequest (line 52) | public IFlurlRequest CreateFlurlRequest(DouyinOpenRequest request, Htt...
    method SendFlurlRequestAsync (line 67) | public async Task<T> SendFlurlRequestAsync<T>(IFlurlRequest flurlReque...
    method SendFlurlRequestAsJsonAsync (line 84) | public async Task<T> SendFlurlRequestAsJsonAsync<T>(IFlurlRequest flur...
    method SendFlurlRequestAsFormUrlEncodedAsync (line 110) | public async Task<T> SendFlurlRequestAsFormUrlEncodedAsync<T>(IFlurlRe...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenClientBuilder.cs
  class DouyinOpenClientBuilder (line 10) | public partial class DouyinOpenClientBuilder : ICommonClientBuilder<Douy...
    method DouyinOpenClientBuilder (line 18) | private DouyinOpenClientBuilder(DouyinOpenClientOptions options)
    method ConfigureSettings (line 25) | ICommonClientBuilder<DouyinOpenClient> ICommonClientBuilder<DouyinOpen...
    method UseInterceptor (line 30) | ICommonClientBuilder<DouyinOpenClient> ICommonClientBuilder<DouyinOpen...
    method UseHttpClient (line 35) | ICommonClientBuilder<DouyinOpenClient> ICommonClientBuilder<DouyinOpen...
    method ConfigureSettings (line 40) | public DouyinOpenClientBuilder ConfigureSettings(Action<CommonClientSe...
    method UseInterceptor (line 48) | public DouyinOpenClientBuilder UseInterceptor(HttpInterceptor intercep...
    method UseHttpClient (line 56) | public DouyinOpenClientBuilder UseHttpClient(HttpClient httpClient, bo...
    method Build (line 65) | public DouyinOpenClient Build()
    method Create (line 87) | public static DouyinOpenClientBuilder Create(DouyinOpenClientOptions o...
  class DouyinOpenClientBuilder (line 85) | partial class DouyinOpenClientBuilder
    method DouyinOpenClientBuilder (line 18) | private DouyinOpenClientBuilder(DouyinOpenClientOptions options)
    method ConfigureSettings (line 25) | ICommonClientBuilder<DouyinOpenClient> ICommonClientBuilder<DouyinOpen...
    method UseInterceptor (line 30) | ICommonClientBuilder<DouyinOpenClient> ICommonClientBuilder<DouyinOpen...
    method UseHttpClient (line 35) | ICommonClientBuilder<DouyinOpenClient> ICommonClientBuilder<DouyinOpen...
    method ConfigureSettings (line 40) | public DouyinOpenClientBuilder ConfigureSettings(Action<CommonClientSe...
    method UseInterceptor (line 48) | public DouyinOpenClientBuilder UseInterceptor(HttpInterceptor intercep...
    method UseHttpClient (line 56) | public DouyinOpenClientBuilder UseHttpClient(HttpClient httpClient, bo...
    method Build (line 65) | public DouyinOpenClient Build()
    method Create (line 87) | public static DouyinOpenClientBuilder Create(DouyinOpenClientOptions o...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenClientOptions.cs
  class DouyinOpenClientOptions (line 6) | public class DouyinOpenClientOptions

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenEndpoints.cs
  class DouyinOpenEndpoints (line 6) | public static class DouyinOpenEndpoints

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenEvent.cs
  class DouyinOpenEvent (line 6) | public class DouyinOpenEvent : ICommonWebhookEvent
  class DouyinOpenEvent (line 47) | public abstract class DouyinOpenEvent<TContent> : DouyinOpenEvent

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenException.cs
  class DouyinOpenException (line 8) | public class DouyinOpenException : CommonException
    method DouyinOpenException (line 11) | public DouyinOpenException()
    method DouyinOpenException (line 16) | public DouyinOpenException(string message)
    method DouyinOpenException (line 22) | public DouyinOpenException(string message, Exception innerException)

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenRequest.cs
  class DouyinOpenRequest (line 6) | public abstract class DouyinOpenRequest : CommonRequestBase, ICommonRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenResponse.cs
  class DouyinOpenResponse (line 6) | public abstract class DouyinOpenResponse : CommonResponseBase, ICommonRe...
    method IsSuccessful (line 37) | public override bool IsSuccessful()
    method IsSuccessful (line 142) | public override bool IsSuccessful()
  class DouyinOpenResponseData (line 49) | public abstract class DouyinOpenResponseData
  class DouyinOpenResponseExtra (line 70) | public sealed class DouyinOpenResponseExtra
  class DouyinOpenResponse (line 121) | public abstract class DouyinOpenResponse<TData> : DouyinOpenResponse
    method IsSuccessful (line 37) | public override bool IsSuccessful()
    method IsSuccessful (line 142) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeMemberJoinEvent.cs
  class LifeMemberJoinEvent (line 10) | public class LifeMemberJoinEvent : DouyinOpenEvent<LifeMemberJoinEvent.T...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeMemberLeaveEvent.cs
  class LifeMemberLeaveEvent (line 10) | public class LifeMemberLeaveEvent : DouyinOpenEvent<LifeMemberLeaveEvent...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content : LifeMemberJoinEvent.Types.Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeProductAuditEvent.cs
  class LifeProductAuditEvent (line 10) | public class LifeProductAuditEvent : DouyinOpenEvent<LifeProductAuditEve...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeTradeCertificateNotifyEvent.cs
  class LifeTradeCertificateNotifyEvent (line 10) | public class LifeTradeCertificateNotifyEvent : DouyinOpenEvent<LifeTrade...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content
        class Types (line 16) | public static class Types
          class Certificate (line 18) | public class Certificate

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeTradeOrderNotifyEvent.cs
  class LifeTradeOrderNotifyEvent (line 10) | public class LifeTradeOrderNotifyEvent : DouyinOpenEvent<LifeTradeOrderN...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content
        class Types (line 16) | public static class Types
          class Order (line 18) | public class Order

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/EnterGroupAuditChangeEvent.cs
  class EnterGroupAuditChangeEvent (line 11) | public class EnterGroupAuditChangeEvent : DouyinOpenEvent<EnterGroupAudi...
    class Types (line 13) | public static class Types
      class Content (line 15) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/GroupFansEventEvent.cs
  class GroupFansEventEvent (line 11) | public class GroupFansEventEvent : DouyinOpenEvent<GroupFansEventEvent.T...
    class Types (line 13) | public static class Types
      class Content (line 15) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMAuthorizeEvent.cs
  class IMAuthorizeEvent (line 10) | public class IMAuthorizeEvent : DouyinOpenEvent<IMAuthorizeEvent.Types.C...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMEnterDirectMessageEvent.cs
  class IMEnterDirectMessageEvent (line 11) | public class IMEnterDirectMessageEvent : DouyinOpenEvent<IMEnterDirectMe...
    class Types (line 13) | public static class Types
      class Content (line 15) | public class Content
        class Types (line 17) | public static class Types
          class UserInfo (line 19) | public class UserInfo
          class AdInfo (line 43) | public class AdInfo

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMGroupReceiveMessageEvent.cs
  class IMGroupReceiveMessageEvent (line 11) | public class IMGroupReceiveMessageEvent : DouyinOpenEvent<IMGroupReceive...
    class Types (line 13) | public static class Types
      class Content (line 15) | public class Content
        class Types (line 17) | public static class Types
          class UserInfo (line 19) | public class UserInfo : IMReceiveMessageEvent.Types.Content.Type...
          class CardData (line 23) | public class CardData : IMReceiveMessageEvent.Types.Content.Type...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMGroupSendMessageEvent.cs
  class IMGroupSendMessageEvent (line 11) | public class IMGroupSendMessageEvent : DouyinOpenEvent<IMGroupSendMessag...
    class Types (line 13) | public static class Types
      class Content (line 15) | public class Content : IMGroupReceiveMessageEvent.Types.Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMReceiveMessageEvent.cs
  class IMReceiveMessageEvent (line 11) | public class IMReceiveMessageEvent : DouyinOpenEvent<IMReceiveMessageEve...
    class Types (line 13) | public static class Types
      class Content (line 15) | public class Content
        class Types (line 17) | public static class Types
          class UserInfo (line 19) | public class UserInfo : IMEnterDirectMessageEvent.Types.Content....
          class CardData (line 23) | public class CardData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMSendMessageEvent.cs
  class IMSendMessageEvent (line 11) | public class IMSendMessageEvent : DouyinOpenEvent<IMSendMessageEvent.Typ...
    class Types (line 13) | public static class Types
      class Content (line 15) | public class Content : IMReceiveMessageEvent.Types.Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Interaction/NewFollowActionEvent.cs
  class NewFollowActionEvent (line 10) | public class NewFollowActionEvent : DouyinOpenEvent<NewFollowActionEvent...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Interaction/NewVideoDiggEvent.cs
  class NewVideoDiggEvent (line 10) | public class NewVideoDiggEvent : DouyinOpenEvent<NewVideoDiggEvent.Types...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/UnionAuth/UnionAuthInfoForBEvent.cs
  class UnionAuthInfoForBEvent (line 10) | public class UnionAuthInfoForBEvent : DouyinOpenEvent<UnionAuthInfoForBE...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/UnionAuth/UnionAuthInfoForCEvent.cs
  class UnionAuthInfoForCEvent (line 11) | public class UnionAuthInfoForCEvent : DouyinOpenEvent<UnionAuthInfoForCE...
    class Types (line 13) | public static class Types
      class Content (line 15) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/AuthorizeEvent.cs
  class AuthorizeEvent (line 10) | public class AuthorizeEvent : DouyinOpenEvent<AuthorizeEvent.Types.Content>
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/CreateVideoEvent.cs
  class CreateVideoEvent (line 10) | public class CreateVideoEvent : DouyinOpenEvent<CreateVideoEvent.Types.C...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/DialogPhoneEvent.cs
  class DialogPhoneEvent (line 10) | public class DialogPhoneEvent : DouyinOpenEvent

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/ItemCommentReplyEvent.cs
  class ItemCommentReplyEvent (line 10) | public class ItemCommentReplyEvent : DouyinOpenEvent<ItemCommentReplyEve...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/PersonalTabContactEvent.cs
  class PersonalTabContactEvent (line 10) | public class PersonalTabContactEvent : DouyinOpenEvent

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/ReceiveMessageEvent.cs
  class ReceiveMessageEvent (line 12) | public class ReceiveMessageEvent : DouyinOpenEvent<ReceiveMessageEvent.T...
    class Types (line 14) | public static class Types
      class Content (line 16) | public class Content
        class Types (line 18) | public static class Types
          class Action (line 20) | public class Action

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/UnauthorizeEvent.cs
  class UnauthorizeEvent (line 10) | public class UnauthorizeEvent : DouyinOpenEvent<UnauthorizeEvent.Types.C...
    class Types (line 12) | public static class Types
      class Content (line 14) | public class Content : AuthorizeEvent.Types.Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/VerifyWebhookEvent.cs
  class VerifyWebhookEvent (line 11) | public class VerifyWebhookEvent : DouyinOpenEvent<VerifyWebhookEvent.Typ...
    class Types (line 13) | public static class Types
      class Content (line 15) | public class Content

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/WebsiteContactEvent.cs
  class WebsiteContactEvent (line 10) | public class WebsiteContactEvent : DouyinOpenEvent

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientDecryptionExtensions.cs
  class DouyinOpenClientDecryptionExtensions (line 9) | public static class DouyinOpenClientDecryptionExtensions
    method DecryptOAuthUserInfoMobileNumber (line 21) | public static string DecryptOAuthUserInfoMobileNumber(this DouyinOpenC...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientEventExtensions.cs
  class DouyinOpenClientEventExtensions (line 10) | public static class DouyinOpenClientEventExtensions
    method DeserializeEvent (line 19) | public static TEvent DeserializeEvent<TEvent>(this DouyinOpenClient cl...
    method VerifyEventSignature (line 46) | public static ErroredResult VerifyEventSignature(this DouyinOpenClient...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiAppsAuthExtensions.cs
  class DouyinOpenClientExecuteApiAppsAuthExtensions (line 9) | public static class DouyinOpenClientExecuteApiAppsAuthExtensions
    method ExecuteAppsAuthGetOpenIdByCV1Async (line 22) | public static async Task<Models.AppsAuthGetOpenIdByCV1Response> Execut...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiAppsTradeExtensions.cs
  class DouyinOpenClientExecuteApiAppsTradeExtensions (line 10) | public static class DouyinOpenClientExecuteApiAppsTradeExtensions
    method ExecuteAppsTradeOrderQueryItemOrderInfoV2Async (line 24) | public static async Task<Models.AppsTradeOrderQueryItemOrderInfoV2Resp...
    method ExecuteAppsTradeOrderQueryOrderV2Async (line 48) | public static async Task<Models.AppsTradeOrderQueryOrderV2Response> Ex...
    method ExecuteAppsTradeOrderQueryCPSV2Async (line 72) | public static async Task<Models.AppsTradeOrderQueryCPSV2Response> Exec...
    method ExecuteAppsTradeOrderCreateOrderV2Async (line 96) | public static async Task<Models.AppsTradeOrderCreateOrderV2Response> E...
    method ExecuteAppsTradeOrderCloseOrderV2Async (line 119) | public static async Task<Models.AppsTradeOrderCloseOrderV2Response> Ex...
    method ExecuteAppsTradeFulfillmentDeliveryPrepareV2Async (line 143) | public static async Task<Models.AppsTradeFulfillmentDeliveryPrepareV2R...
    method ExecuteAppsTradeFulfillmentDeliveryVerifyV2Async (line 167) | public static async Task<Models.AppsTradeFulfillmentDeliveryVerifyV2Re...
    method ExecuteAppsTradeFulfillmentVerifyCancelV2Async (line 191) | public static async Task<Models.AppsTradeFulfillmentVerifyCancelV2Resp...
    method ExecuteAppsTradeFulfillmentPushDeliveryV2Async (line 215) | public static async Task<Models.AppsTradeFulfillmentPushDeliveryV2Resp...
    method ExecuteAppsTradeFulfillmentQueryUserCertificatesV2Async (line 238) | public static async Task<Models.AppsTradeFulfillmentQueryUserCertifica...
    method ExecuteAppsTradeFulfillmentOrderCanUseV2Async (line 261) | public static async Task<Models.AppsTradeFulfillmentOrderCanUseV2Respo...
    method ExecuteAppsTradeSettleCreateSettleV2Async (line 284) | public static async Task<Models.AppsTradeSettleCreateSettleV2Response>...
    method ExecuteAppsTradeSettleQuerySettleV2Async (line 308) | public static async Task<Models.AppsTradeSettleQuerySettleV2Response> ...
    method ExecuteAppsTradeRefundCreateRefundV2Async (line 332) | public static async Task<Models.AppsTradeRefundCreateRefundV2Response>...
    method ExecuteAppsTradeRefundQueryRefundV2Async (line 356) | public static async Task<Models.AppsTradeRefundQueryRefundV2Response> ...
    method ExecuteAppsTradeRefundMerchantAuditCallbackV2Async (line 380) | public static async Task<Models.AppsTradeRefundMerchantAuditCallbackV2...
    method ExecuteAppsTradeBookCreateBookV2Async (line 403) | public static async Task<Models.AppsTradeBookCreateBookV2Response> Exe...
    method ExecuteAppsTradeBookResultCallbackV2Async (line 426) | public static async Task<Models.AppsTradeBookResultCallbackV2Response>...
    method ExecuteAppsTradeBookMerchantCancelBookV2Async (line 449) | public static async Task<Models.AppsTradeBookMerchantCancelBookV2Respo...
    method ExecuteAppsTradeBookUserCancelBookV2Async (line 472) | public static async Task<Models.AppsTradeBookUserCancelBookV2Response>...
    method ExecuteAppsTradeBookQueryBookV2Async (line 495) | public static async Task<Models.AppsTradeBookQueryBookV2Response> Exec...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinAuthExtensions.cs
  class DouyinOpenClientExecuteApiDouyinAuthExtensions (line 9) | public static class DouyinOpenClientExecuteApiDouyinAuthExtensions
    method ExecuteDouyinAuthGetRelatedIdV1Async (line 22) | public static async Task<Models.DouyinAuthGetRelatedIdV1Response> Exec...
    method ExecuteDouyinAuthGetOpenIdByCV1Async (line 45) | public static async Task<Models.DouyinAuthGetOpenIdByCV1Response> Exec...
    method ExecuteDouyinAuthGetOpenIdByBV1Async (line 68) | public static async Task<Models.DouyinAuthGetOpenIdByBV1Response> Exec...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinIMExtensions.cs
  class DouyinOpenClientExecuteApiDouyinIMExtensions (line 9) | public static class DouyinOpenClientExecuteApiDouyinIMExtensions
    method ExecuteDouyinIMSetAppletTemplateV1Async (line 23) | public static async Task<Models.DouyinIMSetAppletTemplateV1Response> E...
    method ExecuteDouyinIMGetAppletTemplateV1Async (line 47) | public static async Task<Models.DouyinIMGetAppletTemplateV1Response> E...
    method ExecuteDouyinIMDeleteAppletTemplateV1Async (line 71) | public static async Task<Models.DouyinIMDeleteAppletTemplateV1Response...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinInteractiveExtensions.cs
  class DouyinOpenClientExecuteApiDouyinInteractiveExtensions (line 9) | public static class DouyinOpenClientExecuteApiDouyinInteractiveExtensions
    method ExecuteDouyinInteractiveIntentionLogListV1Async (line 22) | public static async Task<Models.DouyinInteractiveIntentionLogListV1Res...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinRoleExtensions.cs
  class DouyinOpenClientExecuteApiDouyinRoleExtensions (line 9) | public static class DouyinOpenClientExecuteApiDouyinRoleExtensions
    method ExecuteDouyinRoleCheckV1Async (line 22) | public static async Task<Models.DouyinRoleCheckV1Response> ExecuteDouy...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinSchemaExtensions.cs
  class DouyinOpenClientExecuteApiDouyinSchemaExtensions (line 9) | public static class DouyinOpenClientExecuteApiDouyinSchemaExtensions
    method ExecuteDouyinSchemaGetShareV1Async (line 22) | public static async Task<Models.DouyinSchemaGetShareV1Response> Execut...
    method ExecuteDouyinSchemaGetUserProfileV1Async (line 45) | public static async Task<Models.DouyinSchemaGetUserProfileV1Response> ...
    method ExecuteDouyinSchemaGetChatV1Async (line 68) | public static async Task<Models.DouyinSchemaGetChatV1Response> Execute...
    method ExecuteDouyinSchemaGetItemInfoV1Async (line 91) | public static async Task<Models.DouyinSchemaGetItemInfoV1Response> Exe...
    method ExecuteDouyinSchemaGetLiveV1Async (line 114) | public static async Task<Models.DouyinSchemaGetLiveV1Response> Execute...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinUserExtensions.cs
  class DouyinOpenClientExecuteApiDouyinUserExtensions (line 10) | public static class DouyinOpenClientExecuteApiDouyinUserExtensions
    method ExecuteDouyinUserFansDataV1Async (line 23) | public static async Task<Models.DouyinUserFansDataV1Response> ExecuteD...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinVideoExtensions.cs
  class DouyinOpenClientExecuteApiDouyinVideoExtensions (line 10) | public static class DouyinOpenClientExecuteApiDouyinVideoExtensions
    method ExecuteDouyinVideoUploadVideoV1Async (line 23) | public static async Task<Models.DouyinVideoUploadVideoV1Response> Exec...
    method ExecuteDouyinVideoCreateVideoV1Async (line 54) | public static async Task<Models.DouyinVideoCreateVideoV1Response> Exec...
    method ExecuteDouyinVideoListV1Async (line 78) | public static async Task<Models.DouyinVideoListV1Response> ExecuteDouy...
    method ExecuteDouyinVideoDataV1Async (line 104) | public static async Task<Models.DouyinVideoDataV1Response> ExecuteDouy...
    method ExecuteDouyinVideoBasicInfoV1Async (line 128) | public static async Task<Models.DouyinVideoBasicInfoV1Response> Execut...
    method ExecuteDouyinVideoGetIframeByVideoV1Async (line 153) | public static async Task<Models.DouyinVideoGetIframeByVideoV1Response>...
    method ExecuteDouyinVideoGetIframeByItemV1Async (line 176) | public static async Task<Models.DouyinVideoGetIframeByItemV1Response> ...
    method ExecuteDouyinVideoUploadImageV1Async (line 205) | public static async Task<Models.DouyinVideoUploadImageV1Response> Exec...
    method ExecuteDouyinVideoCreateImageTextV1Async (line 236) | public static async Task<Models.DouyinVideoCreateImageTextV1Response> ...
    method ExecuteDouyinVideoInitVideoPartUploadV1Async (line 262) | public static async Task<Models.DouyinVideoInitVideoPartUploadV1Respon...
    method ExecuteDouyinVideoUploadVideoPartV1Async (line 286) | public static async Task<Models.DouyinVideoUploadVideoPartV1Response> ...
    method ExecuteDouyinVideoCompleteVideoPartUploadV1Async (line 319) | public static async Task<Models.DouyinVideoCompleteVideoPartUploadV1Re...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiIMExtensions.cs
  class DouyinOpenClientExecuteApiIMExtensions (line 9) | public static class DouyinOpenClientExecuteApiIMExtensions
    method ExecuteIMMessageResourcesAsync (line 22) | public static async Task<Models.IMMessageResourcesResponse> ExecuteIMM...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiIndustryExtensions.cs
  class DouyinOpenClientExecuteApiIndustryExtensions (line 9) | public static class DouyinOpenClientExecuteApiIndustryExtensions
    method ExecuteIndustrySolutionQueryAppTestRelationV1Async (line 23) | public static async Task<Models.IndustrySolutionQueryAppTestRelationV1...
    method ExecuteIndustrySolutionAddAppTestRelationV1Async (line 46) | public static async Task<Models.IndustrySolutionAddAppTestRelationV1Re...
    method ExecuteIndustrySolutionDeleteAppTestRelationV1Async (line 69) | public static async Task<Models.IndustrySolutionDeleteAppTestRelationV...
    method ExecuteIndustrySolutionSetImplementationV1Async (line 94) | public static async Task<Models.IndustrySolutionSetImplementationV1Res...
    method ExecuteIndustrySolutionQueryImplementationV1Async (line 117) | public static async Task<Models.IndustrySolutionQueryImplementationV1R...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiMatchExtensions.cs
  class DouyinOpenClientExecuteApiMatchExtensions (line 9) | public static class DouyinOpenClientExecuteApiMatchExtensions
    method ExecuteMatchTaskboxQueryViolateTalentListV2Async (line 22) | public static async Task<Models.MatchTaskboxQueryViolateTalentListV2Re...
    method ExecuteMatchTaskboxAgencyQueryBillLinkV2Async (line 45) | public static async Task<Models.MatchTaskboxAgencyQueryBillLinkV2Respo...
    method ExecuteMatchTaskboxAgencyQueryVideoSummaryDataV2Async (line 68) | public static async Task<Models.MatchTaskboxAgencyQueryVideoSummaryDat...
    method ExecuteMatchTaskboxGenerateAgentLinkV1Async (line 91) | public static async Task<Models.MatchTaskboxGenerateAgentLinkV1Respons...
    method ExecuteMatchTaskboxChangeUserBindAgentV1Async (line 114) | public static async Task<Models.MatchTaskboxChangeUserBindAgentV1Respo...
    method ExecuteMatchTaskboxGetAgencyUserBindRecordV1Async (line 137) | public static async Task<Models.MatchTaskboxGetAgencyUserBindRecordV1R...
    method ExecuteMatchTaskboxSaveAgentV1Async (line 160) | public static async Task<Models.MatchTaskboxSaveAgentV1Response> Execu...
    method ExecuteMatchTaskboxQueryTaskInfoV1Async (line 183) | public static async Task<Models.MatchTaskboxQueryTaskInfoV1Response> E...
    method ExecuteMatchTaskboxQueryAppTaskIdV1Async (line 206) | public static async Task<Models.MatchTaskboxQueryAppTaskIdV1Response> ...
    method ExecuteMatchTaskboxQueryTaskVideoStatusV2Async (line 229) | public static async Task<Models.MatchTaskboxQueryTaskVideoStatusV2Resp...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteDataExternalExtensions.cs
  class DouyinOpenClientExecuteDataExternalExtensions (line 10) | public static class DouyinOpenClientExecuteDataExternalExtensions
    method ExecuteDataExternalAnchorMpItemClickDistributionAsync (line 24) | public static async Task<Models.DataExternalAnchorMpItemClickDistribut...
    method ExecuteDataExternalBillboardHotVideoAsync (line 53) | public static async Task<Models.DataExternalBillboardHotVideoResponse>...
    method ExecuteDataExternalBillboardSportOverallAsync (line 78) | public static async Task<Models.DataExternalBillboardSportOverallRespo...
    method ExecuteDataExternalBillboardSportBasketballAsync (line 101) | public static async Task<Models.DataExternalBillboardSportBasketballRe...
    method ExecuteDataExternalBillboardSportSoccerAsync (line 124) | public static async Task<Models.DataExternalBillboardSportSoccerRespon...
    method ExecuteDataExternalBillboardSportComprehensiveAsync (line 147) | public static async Task<Models.DataExternalBillboardSportComprehensiv...
    method ExecuteDataExternalBillboardSportFitnessAsync (line 170) | public static async Task<Models.DataExternalBillboardSportFitnessRespo...
    method ExecuteDataExternalBillboardSportOutdoorsAsync (line 193) | public static async Task<Models.DataExternalBillboardSportOutdoorsResp...
    method ExecuteDataExternalBillboardSportTableTennisAsync (line 216) | public static async Task<Models.DataExternalBillboardSportTableTennisR...
    method ExecuteDataExternalBillboardSportCultureAsync (line 239) | public static async Task<Models.DataExternalBillboardSportCultureRespo...
    method ExecuteDataExternalBillboardAmusementOverallAsync (line 264) | public static async Task<Models.DataExternalBillboardAmusementOverallR...
    method ExecuteDataExternalBillboardAmusementNewAsync (line 287) | public static async Task<Models.DataExternalBillboardAmusementNewRespo...
    method ExecuteDataExternalBillboardGameConsoleAsync (line 312) | public static async Task<Models.DataExternalBillboardGameConsoleRespon...
    method ExecuteDataExternalBillboardGameInformationAsync (line 335) | public static async Task<Models.DataExternalBillboardGameInformationRe...
    method ExecuteDataExternalBillboardFoodOverallAsync (line 360) | public static async Task<Models.DataExternalBillboardFoodOverallRespon...
    method ExecuteDataExternalBillboardFoodNewAsync (line 383) | public static async Task<Models.DataExternalBillboardFoodNewResponse> ...
    method ExecuteDataExternalBillboardFoodTutorialAsync (line 406) | public static async Task<Models.DataExternalBillboardFoodTutorialRespo...
    method ExecuteDataExternalBillboardFoodShopAsync (line 429) | public static async Task<Models.DataExternalBillboardFoodShopResponse>...
    method ExecuteDataExternalBillboardDramaOverallAsync (line 454) | public static async Task<Models.DataExternalBillboardDramaOverallRespo...
    method ExecuteDataExternalBillboardCarOverallAsync (line 479) | public static async Task<Models.DataExternalBillboardCarOverallRespons...
    method ExecuteDataExternalBillboardCarCommentAsync (line 502) | public static async Task<Models.DataExternalBillboardCarCommentRespons...
    method ExecuteDataExternalBillboardCarPlayAsync (line 525) | public static async Task<Models.DataExternalBillboardCarPlayResponse> ...
    method ExecuteDataExternalBillboardCarUseAsync (line 548) | public static async Task<Models.DataExternalBillboardCarUseResponse> E...
    method ExecuteDataExternalBillboardCarDriverAsync (line 571) | public static async Task<Models.DataExternalBillboardCarDriverResponse...
    method ExecuteDataExternalBillboardTravelOverallAsync (line 596) | public static async Task<Models.DataExternalBillboardTravelOverallResp...
    method ExecuteDataExternalBillboardTravelNewAsync (line 619) | public static async Task<Models.DataExternalBillboardTravelNewResponse...
    method ExecuteDataExternalBillboardCospaOverallAsync (line 644) | public static async Task<Models.DataExternalBillboardCospaOverallRespo...
    method ExecuteDataExternalBillboardCospaQingmanAsync (line 667) | public static async Task<Models.DataExternalBillboardCospaQingmanRespo...
    method ExecuteDataExternalBillboardCospaOutshotAsync (line 690) | public static async Task<Models.DataExternalBillboardCospaOutshotRespo...
    method ExecuteDataExternalBillboardCospaPaintingAsync (line 713) | public static async Task<Models.DataExternalBillboardCospaPaintingResp...
    method ExecuteDataExternalBillboardCospaVoiceAsync (line 736) | public static async Task<Models.DataExternalBillboardCospaVoiceRespons...
    method ExecuteDataExternalBillboardCospaBrainCavityAsync (line 759) | public static async Task<Models.DataExternalBillboardCospaBrainCavityR...
    method ExecuteDataExternalBillboardCospaNewAsync (line 782) | public static async Task<Models.DataExternalBillboardCospaNewResponse>...
    method ExecuteDataExternalBillboardStarsAsync (line 807) | public static async Task<Models.DataExternalBillboardStarsResponse> Ex...
    method ExecuteDataExternalBillboardLiveAsync (line 832) | public static async Task<Models.DataExternalBillboardLiveResponse> Exe...
    method ExecuteDataExternalBillboardMusicHotAsync (line 857) | public static async Task<Models.DataExternalBillboardMusicHotResponse>...
    method ExecuteDataExternalBillboardMusicSoarAsync (line 880) | public static async Task<Models.DataExternalBillboardMusicSoarResponse...
    method ExecuteDataExternalBillboardMusicOriginalAsync (line 903) | public static async Task<Models.DataExternalBillboardMusicOriginalResp...
    method ExecuteDataExternalBillboardTopicAsync (line 928) | public static async Task<Models.DataExternalBillboardTopicResponse> Ex...
    method ExecuteDataExternalBillboardPropAsync (line 953) | public static async Task<Models.DataExternalBillboardPropResponse> Exe...
    method ExecuteDataExternalFansSourceAsync (line 979) | public static async Task<Models.DataExternalFansSourceResponse> Execut...
    method ExecuteDataExternalFansFavouriteAsync (line 1003) | public static async Task<Models.DataExternalFansFavouriteResponse> Exe...
    method ExecuteDataExternalFansCommentAsync (line 1027) | public static async Task<Models.DataExternalFansCommentResponse> Execu...
    method ExecuteDataExternalItemBaseAsync (line 1053) | public static async Task<Models.DataExternalItemBaseResponse> ExecuteD...
    method ExecuteDataExternalItemLikeAsync (line 1078) | public static async Task<Models.DataExternalItemLikeResponse> ExecuteD...
    method ExecuteDataExternalItemCommentAsync (line 1103) | public static async Task<Models.DataExternalItemCommentResponse> Execu...
    method ExecuteDataExternalItemPlayAsync (line 1128) | public static async Task<Models.DataExternalItemPlayResponse> ExecuteD...
    method ExecuteDataExternalItemShareAsync (line 1153) | public static async Task<Models.DataExternalItemShareResponse> Execute...
    method ExecuteDataExternalPOIBaseAsync (line 1180) | public static async Task<Models.DataExternalPOIBaseResponse> ExecuteDa...
    method ExecuteDataExternalPOIUserAsync (line 1206) | public static async Task<Models.DataExternalPOIUserResponse> ExecuteDa...
    method ExecuteDataExternalPOIServiceBaseAsync (line 1231) | public static async Task<Models.DataExternalPOIServiceBaseResponse> Ex...
    method ExecuteDataExternalPOIServiceUserAsync (line 1258) | public static async Task<Models.DataExternalPOIServiceUserResponse> Ex...
    method ExecuteDataExternalPOIBillboardAsync (line 1284) | public static async Task<Models.DataExternalPOIBillboardResponse> Exec...
    method ExecuteDataExternalPOIClaimListAsync (line 1308) | public static async Task<Models.DataExternalPOIClaimListResponse> Exec...
    method ExecuteDataExternalUserItemAsync (line 1336) | public static async Task<Models.DataExternalUserItemResponse> ExecuteD...
    method ExecuteDataExternalUserFansAsync (line 1361) | public static async Task<Models.DataExternalUserFansResponse> ExecuteD...
    method ExecuteDataExternalUserLikeAsync (line 1386) | public static async Task<Models.DataExternalUserLikeResponse> ExecuteD...
    method ExecuteDataExternalUserCommentAsync (line 1411) | public static async Task<Models.DataExternalUserCommentResponse> Execu...
    method ExecuteDataExternalUserShareAsync (line 1436) | public static async Task<Models.DataExternalUserShareResponse> Execute...
    method ExecuteDataExternalUserProfileAsync (line 1461) | public static async Task<Models.DataExternalUserProfileResponse> Execu...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteDevToolExtensions.cs
  class DouyinOpenClientExecuteDevToolExtensions (line 10) | public static class DouyinOpenClientExecuteDevToolExtensions
    method ExecuteDevToolMicroAppIsLegalAsync (line 23) | public static async Task<Models.DevToolMicroAppIsLegalResponse> Execut...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteDiscoveryExtensions.cs
  class DouyinOpenClientExecuteDiscoveryExtensions (line 10) | public static class DouyinOpenClientExecuteDiscoveryExtensions
    method ExecuteDiscoveryEntertainmentRankItemAsync (line 23) | public static async Task<Models.DiscoveryEntertainmentRankItemResponse...
    method ExecuteDiscoveryEntertainmentRankVersionAsync (line 48) | public static async Task<Models.DiscoveryEntertainmentRankVersionRespo...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteEnterpriseExtensions.cs
  class DouyinOpenClientExecuteEnterpriseExtensions (line 10) | public static class DouyinOpenClientExecuteEnterpriseExtensions
    method ExecuteEnterpriseMediaUploadAsync (line 24) | public static async Task<Models.EnterpriseMediaUploadResponse> Execute...
    method ExecuteEnterpriseMediaTempUploadAsync (line 55) | public static async Task<Models.EnterpriseMediaTempUploadResponse> Exe...
    method ExecuteEnterpriseMediaListAsync (line 86) | public static async Task<Models.EnterpriseMediaListResponse> ExecuteEn...
    method ExecuteEnterpriseMediaDeleteAsync (line 112) | public static async Task<Models.EnterpriseMediaDeleteResponse> Execute...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteEventExtensions.cs
  class DouyinOpenClientExecuteEventExtensions (line 10) | public static class DouyinOpenClientExecuteEventExtensions
    method ExecuteEventStatusListAsync (line 23) | public static async Task<Models.EventStatusListResponse> ExecuteEventS...
    method ExecuteEventStatusUpdateAsync (line 46) | public static async Task<Models.EventStatusUpdateResponse> ExecuteEven...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteFansExtensions.cs
  class DouyinOpenClientExecuteFansExtensions (line 10) | public static class DouyinOpenClientExecuteFansExtensions
    method ExecuteFansCheckAsync (line 23) | public static async Task<Models.FansCheckResponse> ExecuteFansCheckAsy...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteGoodLifeExtensions.cs
  class DouyinOpenClientExecuteGoodLifeExtensions (line 11) | public static class DouyinOpenClientExecuteGoodLifeExtensions
    method ExecuteGoodLifeAftersaleAuditNotifyV1Async (line 26) | public static async Task<Models.GoodLifeAftersaleAuditNotifyV1Response...
    method ExecuteGoodLifeAftersaleOrderMerchantRejectV1Async (line 51) | public static async Task<Models.GoodLifeAftersaleOrderMerchantRejectV1...
    method ExecuteGoodLifeAftersaleOrderApplyRefundV1Async (line 74) | public static async Task<Models.GoodLifeAftersaleOrderApplyRefundV1Res...
    method ExecuteGoodLifeFulfilmentCertificatePrepareV1Async (line 101) | public static async Task<Models.GoodLifeFulfilmentCertificatePrepareV1...
    method ExecuteGoodLifeFulfilmentCertificateGetV1Async (line 126) | public static async Task<Models.GoodLifeFulfilmentCertificateGetV1Resp...
    method ExecuteGoodLifeFulfilmentCertificateCancelV1Async (line 152) | public static async Task<Models.GoodLifeFulfilmentCertificateCancelV1R...
    method ExecuteGoodLifeFulfilmentCertificateVerifyV1Async (line 175) | public static async Task<Models.GoodLifeFulfilmentCertificateVerifyV1R...
    method ExecuteGoodLifeFulfilmentCertificateQueryV1Async (line 198) | public static async Task<Models.GoodLifeFulfilmentCertificateQueryV1Re...
    method ExecuteGoodLifeFulfilmentCertificateVerifyRecordQueryV1Async (line 223) | public static async Task<Models.GoodLifeFulfilmentCertificateVerifyRec...
    method ExecuteGoodLifeFulfilmentDistributionOrderSyncStatusV1Async (line 254) | public static async Task<Models.GoodLifeFulfilmentDistributionOrderSyn...
    method ExecuteGoodLifeFulfilmentReserveCodeBatchImportV1Async (line 279) | public static async Task<Models.GoodLifeFulfilmentReserveCodeBatchImpo...
    method ExecuteGoodLifeFulfilmentReserveCodeBindOrderInfoV1Async (line 302) | public static async Task<Models.GoodLifeFulfilmentReserveCodeBindOrder...
    method ExecuteGoodLifeGoodsCalendarStaticAttributeGroupSaveV1Async (line 329) | public static async Task<Models.GoodLifeGoodsCalendarStaticAttributeGr...
    method ExecuteGoodLifeGoodsCalendarStockGroupSaveV1Async (line 352) | public static async Task<Models.GoodLifeGoodsCalendarStockGroupSaveV1R...
    method ExecuteGoodLifeGoodsCalendarAmountGroupSaveV1Async (line 375) | public static async Task<Models.GoodLifeGoodsCalendarAmountGroupSaveV1...
    method ExecuteGoodLifeGoodsCategoryGetV1Async (line 400) | public static async Task<Models.GoodLifeGoodsCategoryGetV1Response> Ex...
    method ExecuteGoodLifeGoodsProductSaveV1Async (line 428) | public static async Task<Models.GoodLifeGoodsProductSaveV1Response> Ex...
    method ExecuteGoodLifeGoodsProductFreeAuditV1Async (line 451) | public static async Task<Models.GoodLifeGoodsProductFreeAuditV1Respons...
    method ExecuteGoodLifeGoodsProductOperateV1Async (line 474) | public static async Task<Models.GoodLifeGoodsProductOperateV1Response>...
    method ExecuteGoodLifeGoodsProductDraftQueryV1Async (line 497) | public static async Task<Models.GoodLifeGoodsProductDraftQueryV1Respon...
    method ExecuteGoodLifeGoodsProductDraftGetV1Async (line 524) | public static async Task<Models.GoodLifeGoodsProductDraftGetV1Response...
    method ExecuteGoodLifeGoodsProductOnlineQueryV1Async (line 550) | public static async Task<Models.GoodLifeGoodsProductOnlineQueryV1Respo...
    method ExecuteGoodLifeGoodsProductOnlineGetV1Async (line 577) | public static async Task<Models.GoodLifeGoodsProductOnlineGetV1Respons...
    method ExecuteGoodLifeGoodsSKUBatchSaveV1Async (line 605) | public static async Task<Models.GoodLifeGoodsSKUBatchSaveV1Response> E...
    method ExecuteGoodLifeGoodsSPUSaveV1Async (line 630) | public static async Task<Models.GoodLifeGoodsSPUSaveV1Response> Execut...
    method ExecuteGoodLifeGoodsStockSyncV1Async (line 655) | public static async Task<Models.GoodLifeGoodsStockSyncV1Response> Exec...
    method ExecuteGoodLifeGoodsTemplateGetV1Async (line 680) | public static async Task<Models.GoodLifeGoodsTemplateGetV1Response> Ex...
    method ExecuteGoodLifeMemberUserUpdateV1Async (line 708) | public static async Task<Models.GoodLifeMemberUserUpdateV1Response> Ex...
    method ExecuteGoodLifeMemberUnionIdGetV1Async (line 731) | public static async Task<Models.GoodLifeMemberUnionIdGetV1Response> Ex...
    method ExecuteGoodLifePartnerProductCommissionSaveV1Async (line 757) | public static async Task<Models.GoodLifePartnerProductCommissionSaveV1...
    method ExecuteGoodLifePartnerProductCommissionQueryV1Async (line 780) | public static async Task<Models.GoodLifePartnerProductCommissionQueryV...
    method ExecuteGoodLifePartnerCommissionRecordQueryV1Async (line 806) | public static async Task<Models.GoodLifePartnerCommissionRecordQueryV1...
    method ExecuteGoodLifePartnerCommissionRecordGetV1Async (line 832) | public static async Task<Models.GoodLifePartnerCommissionRecordGetV1Re...
    method ExecuteGoodLifePartnerOrderCreateV1Async (line 859) | public static async Task<Models.GoodLifePartnerOrderCreateV1Response> ...
    method ExecuteGoodLifePartnerOrderQueryV1Async (line 882) | public static async Task<Models.GoodLifePartnerOrderQueryV1Response> E...
    method ExecuteGoodLifePartnerOrderGetV1Async (line 913) | public static async Task<Models.GoodLifePartnerOrderGetV1Response> Exe...
    method ExecuteGoodLifePOISyncV1Async (line 941) | public static async Task<Models.GoodLifePOISyncV1Response> ExecuteGood...
    method ExecuteGoodLifePOIUpdateV1Async (line 964) | public static async Task<Models.GoodLifePOIUpdateV1Response> ExecuteGo...
    method ExecuteGoodLifePOIClaimV1Async (line 987) | public static async Task<Models.GoodLifePOIClaimV1Response> ExecuteGoo...
    method ExecuteGoodLifePOIDecorateV1Async (line 1010) | public static async Task<Models.GoodLifePOIDecorateV1Response> Execute...
    method ExecuteGoodLifePOITaskQueryV1Async (line 1033) | public static async Task<Models.GoodLifePOITaskQueryV1Response> Execut...
    method ExecuteGoodLifePOIMatchTaskSubmitV1Async (line 1057) | public static async Task<Models.GoodLifePOIMatchTaskSubmitV1Response> ...
    method ExecuteGoodLifePOIMatchTaskQueryV1Async (line 1080) | public static async Task<Models.GoodLifePOIMatchTaskQueryV1Response> E...
    method ExecuteGoodLifePOIMatchRelationQueryV1Async (line 1104) | public static async Task<Models.GoodLifePOIMatchRelationQueryV1Respons...
    method ExecuteGoodLifePOICrowdSaveV1Async (line 1129) | public static async Task<Models.GoodLifePOICrowdSaveV1Response> Execut...
    method ExecuteGoodLifeSettleLedgerQueryRecordByCertificateV1Async (line 1155) | public static async Task<Models.GoodLifeSettleLedgerQueryRecordByCerti...
    method ExecuteGoodLifeSettleLedgerDetailedQueryV1Async (line 1179) | public static async Task<Models.GoodLifeSettleLedgerDetailedQueryV1Res...
    method ExecuteGoodLifeSettleLedgerDetailedQueryByOrderV1Async (line 1206) | public static async Task<Models.GoodLifeSettleLedgerDetailedQueryByOrd...
    method ExecuteGoodLifeSettleLedgerQueryV1Async (line 1231) | public static async Task<Models.GoodLifeSettleLedgerQueryV1Response> E...
    method ExecuteGoodLifeSettleLedgerQueryByOrderV1Async (line 1258) | public static async Task<Models.GoodLifeSettleLedgerQueryByOrderV1Resp...
    method ExecuteGoodLifeShopPOIQueryV1Async (line 1285) | public static async Task<Models.GoodLifeShopPOIQueryV1Response> Execut...
    method ExecuteGoodLifeTradeOrderQueryV1Async (line 1314) | public static async Task<Models.GoodLifeTradeOrderQueryV1Response> Exe...
    method ExecuteGoodLifeTradeBookGetV1Async (line 1349) | public static async Task<Models.GoodLifeTradeBookGetV1Response> Execut...
    method ExecuteGoodLifeTradeBuyMerchantConfirmOrderV1Async (line 1375) | public static async Task<Models.GoodLifeTradeBuyMerchantConfirmOrderV1...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteHotSearchExtensions.cs
  class DouyinOpenClientExecuteHotSearchExtensions (line 10) | public static class DouyinOpenClientExecuteHotSearchExtensions
    method ExecuteHotSearchSentencesAsync (line 23) | public static async Task<Models.HotSearchSentencesResponse> ExecuteHot...
    method ExecuteHotSearchTrendingSentencesAsync (line 46) | public static async Task<Models.HotSearchTrendingSentencesResponse> Ex...
    method ExecuteHotSearchVideosAsync (line 71) | public static async Task<Models.HotSearchVideosResponse> ExecuteHotSea...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteIMExtensions.cs
  class DouyinOpenClientExecuteIMExtensions (line 10) | public static class DouyinOpenClientExecuteIMExtensions
    method ExecuteIMAuthorizeUserListAsync (line 25) | public static async Task<Models.IMAuthorizeUserListResponse> ExecuteIM...
    method ExecuteIMAuthorizeStatusAsync (line 49) | public static async Task<Models.IMAuthorizeStatusResponse> ExecuteIMAu...
    method ExecuteIMSaveRetainConsultCardAsync (line 75) | public static async Task<Models.IMSaveRetainConsultCardResponse> Execu...
    method ExecuteIMGetRetainConsultCardAsync (line 99) | public static async Task<Models.IMGetRetainConsultCardResponse> Execut...
    method ExecuteIMDeleteRetainConsultCardAsync (line 123) | public static async Task<Models.IMDeleteRetainConsultCardResponse> Exe...
    method ExecuteIMGroupFansCreateAsync (line 151) | public static async Task<Models.IMGroupFansCreateResponse> ExecuteIMGr...
    method ExecuteIMGroupFansListAsync (line 176) | public static async Task<Models.IMGroupFansListResponse> ExecuteIMGrou...
    method ExecuteIMGroupFansCountAsync (line 201) | public static async Task<Models.IMGroupFansCountResponse> ExecuteIMGro...
    method ExecuteIMGroupEnterAuditSetAsync (line 226) | public static async Task<Models.IMGroupEnterAuditSetResponse> ExecuteI...
    method ExecuteIMGroupEnterAuditGetAsync (line 251) | public static async Task<Models.IMGroupEnterAuditGetResponse> ExecuteI...
    method ExecuteIMGroupSettingSetAsync (line 278) | public static async Task<Models.IMGroupSettingSetResponse> ExecuteIMGr...
    method ExecuteIMGroupSettingDisableAsync (line 303) | public static async Task<Models.IMGroupSettingDisableResponse> Execute...
    method ExecuteIMSendMessageAsync (line 330) | public static async Task<Models.IMSendMessageResponse> ExecuteIMSendMe...
    method ExecuteIMSendMessageGroupAsync (line 355) | public static async Task<Models.IMSendMessageGroupResponse> ExecuteIMS...
    method ExecuteIMRecallMessageAsync (line 382) | public static async Task<Models.IMRecallMessageResponse> ExecuteIMReca...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteImageExtensions.cs
  class DouyinOpenClientExecuteImageExtensions (line 10) | public static class DouyinOpenClientExecuteImageExtensions
    method ExecuteImageUploadAsync (line 23) | [Obsolete("相关接口或字段于 2023-07-06 下线。")]
    method ExecuteImageCreateAsync (line 55) | [Obsolete("相关接口或字段于 2023-07-06 下线。")]

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteItemExtensions.cs
  class DouyinOpenClientExecuteItemExtensions (line 10) | public static class DouyinOpenClientExecuteItemExtensions
    method ExecuteItemCommentListAsync (line 24) | public static async Task<Models.ItemCommentListResponse> ExecuteItemCo...
    method ExecuteItemCommentReplyListAsync (line 52) | public static async Task<Models.ItemCommentReplyListResponse> ExecuteI...
    method ExecuteItemCommentReplyAsync (line 81) | public static async Task<Models.ItemCommentReplyResponse> ExecuteItemC...
    method ExecuteItemCommentTopAsync (line 105) | public static async Task<Models.ItemCommentTopResponse> ExecuteItemCom...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteJSExtensions.cs
  class DouyinOpenClientExecuteJSExtensions (line 9) | public static class DouyinOpenClientExecuteJSExtensions
    method ExecuteJSGetTicketAsync (line 22) | public static async Task<Models.JSGetTicketResponse> ExecuteJSGetTicke...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteMarketServiceExtensions.cs
  class DouyinOpenClientExecuteMarketServiceExtensions (line 10) | public static class DouyinOpenClientExecuteMarketServiceExtensions
    method ExecuteMarketServiceUserPurchaseListAsync (line 23) | public static async Task<Models.MarketServiceUserPurchaseListResponse>...
    method ExecuteMarketServiceUserRemainTimesDecreaseAsync (line 49) | public static async Task<Models.MarketServiceUserRemainTimesDecreaseRe...
    method ExecuteMarketServiceUserInsertPurchaseInfoAsync (line 72) | public static async Task<Models.MarketServiceUserInsertPurchaseInfoRes...
    method ExecuteMarketServiceUserDeletePurchaseInfoAsync (line 95) | public static async Task<Models.MarketServiceUserDeletePurchaseInfoRes...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteMessageExtensions.cs
  class DouyinOpenClientExecuteMessageExtensions (line 10) | public static class DouyinOpenClientExecuteMessageExtensions
    method ExecuteMessageOnceSendAsync (line 23) | public static async Task<Models.MessageOnceSendResponse> ExecuteMessag...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteNamekExtensions.cs
  class DouyinOpenClientExecuteNamekExtensions (line 11) | public static class DouyinOpenClientExecuteNamekExtensions
    method ExecuteNamekFulfilmentPrepareAsync (line 24) | public static async Task<Models.NamekFulfilmentPrepareResponse> Execut...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteOAuthExtensions.cs
  class DouyinOpenClientExecuteOAuthExtensions (line 10) | public static class DouyinOpenClientExecuteOAuthExtensions
    method ExecuteOAuthClientTokenAsync (line 24) | public static async Task<Models.OAuthClientTokenResponse> ExecuteOAuth...
    method ExecuteOAuthAccessTokenAsync (line 53) | public static async Task<Models.OAuthAccessTokenResponse> ExecuteOAuth...
    method ExecuteOAuthRefreshTokenAsync (line 82) | public static async Task<Models.OAuthRefreshTokenResponse> ExecuteOAut...
    method ExecuteOAuthRenewRefreshTokenAsync (line 108) | public static async Task<Models.OAuthRenewRefreshTokenResponse> Execut...
    method ExecuteOAuthBusinessTokenAsync (line 133) | public static async Task<Models.OAuthBusinessTokenResponse> ExecuteOAu...
    method ExecuteOAuthRefreshBusinessTokenAsync (line 162) | public static async Task<Models.OAuthRefreshBusinessTokenResponse> Exe...
    method ExecuteOAuthBusinessScopesAsync (line 190) | public static async Task<Models.OAuthBusinessScopesResponse> ExecuteOA...
    method ExecuteOAuthUserInfoAsync (line 214) | public static async Task<Models.OAuthUserInfoResponse> ExecuteOAuthUse...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteOpenExtensions.cs
  class DouyinOpenClientExecuteOpenExtensions (line 9) | public static class DouyinOpenClientExecuteOpenExtensions
    method ExecuteOpenGetTicketAsync (line 22) | public static async Task<Models.OpenGetTicketResponse> ExecuteOpenGetT...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecutePOIExtensions.cs
  class DouyinOpenClientExecutePOIExtensions (line 11) | public static class DouyinOpenClientExecutePOIExtensions
    method ExecutePOISearchKeywordAsync (line 24) | public static async Task<Models.POISearchKeywordResponse> ExecutePOISe...
    method ExecutePOIQueryAsync (line 51) | public static async Task<Models.POIQueryResponse> ExecutePOIQueryAsync...
    method ExecutePOIBaseQueryAMapAsync (line 75) | public static async Task<Models.POIBaseQueryAMapResponse> ExecutePOIBa...
    method ExecutePOICouponSyncV2Async (line 100) | public static async Task<Models.POICouponSyncV2Response> ExecutePOICou...
    method ExecutePOICouponSyncCouponAvailableV2Async (line 123) | public static async Task<Models.POICouponSyncCouponAvailableV2Response...
    method ExecutePOIExternalHotelOrderCommitAsync (line 149) | public static async Task<Models.POIExternalHotelOrderCommitResponse> E...
    method ExecutePOIExternalHotelOrderStatusAsync (line 172) | public static async Task<Models.POIExternalHotelOrderStatusResponse> E...
    method ExecutePOIExternalHotelOrderCancelAsync (line 195) | public static async Task<Models.POIExternalHotelOrderCancelResponse> E...
    method ExecutePOIExternalHotelSKUAsync (line 218) | public static async Task<Models.POIExternalHotelSKUResponse> ExecutePO...
    method ExecutePOIExternalPresaleGrouponOrderCreateAsync (line 246) | public static async Task<Models.POIExternalPresaleGrouponOrderCreateRe...
    method ExecutePOIExternalPresaleGrouponOrderCommitAsync (line 269) | public static async Task<Models.POIExternalPresaleGrouponOrderCommitRe...
    method ExecutePOIExternalPresaleGrouponOrderCancelAsync (line 292) | public static async Task<Models.POIExternalPresaleGrouponOrderCancelRe...
    method ExecutePOIOrderSyncAsync (line 318) | public static async Task<Models.POIOrderSyncResponse> ExecutePOIOrderS...
    method ExecutePOIOrderStatusAsync (line 344) | public static async Task<Models.POIOrderStatusResponse> ExecutePOIOrde...
    method ExecutePOIOrderConfirmAsync (line 367) | public static async Task<Models.POIOrderConfirmResponse> ExecutePOIOrd...
    method ExecutePOIOrderConfirmPrepareAsync (line 390) | public static async Task<Models.POIOrderConfirmPrepareResponse> Execut...
    method ExecutePOIOrderConfirmCancelPrepareAsync (line 413) | public static async Task<Models.POIOrderConfirmCancelPrepareResponse> ...
    method ExecutePOIOrderBillTokenAsync (line 436) | public static async Task<Models.POIOrderBillTokenResponse> ExecutePOIO...
    method ExecutePOIOrderListTokenAsync (line 460) | public static async Task<Models.POIOrderListTokenResponse> ExecutePOIO...
    method ExecutePOICommonPlanDetailAsync (line 486) | public static async Task<Models.POICommonPlanDetailResponse> ExecutePO...
    method ExecutePOICommonPlanTalentDetailAsync (line 509) | public static async Task<Models.POICommonPlanTalentDetailResponse> Exe...
    method ExecutePOICommonPlanTalentListAsync (line 532) | public static async Task<Models.POICommonPlanTalentListResponse> Execu...
    method ExecutePOICommonPlanTalentMediaListAsync (line 555) | public static async Task<Models.POICommonPlanTalentMediaListResponse> ...
    method ExecutePOIPlanListAsync (line 578) | public static async Task<Models.POIPlanListResponse> ExecutePOIPlanLis...
    method ExecutePOICommonPlanSaveAsync (line 601) | public static async Task<Models.POICommonPlanSaveResponse> ExecutePOIC...
    method ExecutePOICommonPlanUpdateStatusAsync (line 624) | public static async Task<Models.POICommonPlanUpdateStatusResponse> Exe...
    method ExecutePOIServiceProviderSyncV2Async (line 649) | public static async Task<Models.POIServiceProviderSyncV2Response> Exec...
    method ExecutePOISKUSyncAsync (line 674) | public static async Task<Models.POISKUSyncResponse> ExecutePOISKUSyncA...
    method ExecutePOISPUSyncV2Async (line 699) | public static async Task<Models.POISPUSyncV2Response> ExecutePOISPUSyn...
    method ExecutePOISPUStatusSyncV2Async (line 722) | public static async Task<Models.POISPUStatusSyncV2Response> ExecutePOI...
    method ExecutePOISPUStockUpdateV2Async (line 745) | public static async Task<Models.POISPUStockUpdateV2Response> ExecutePO...
    method ExecutePOISPUGetV2Async (line 768) | public static async Task<Models.POISPUGetV2Response> ExecutePOISPUGetV...
    method ExecutePOISPUTakeRateSyncV2Async (line 795) | public static async Task<Models.POISPUTakeRateSyncV2Response> ExecuteP...
    method ExecutePOISupplierSyncAsync (line 820) | public static async Task<Models.POISupplierSyncResponse> ExecutePOISup...
    method ExecutePOISupplierQueryAsync (line 843) | public static async Task<Models.POISupplierQueryResponse> ExecutePOISu...
    method ExecutePOISupplierQueryAllAsync (line 867) | public static async Task<Models.POISupplierQueryAllResponse> ExecutePO...
    method ExecutePOISupplierQueryCallbackAsync (line 890) | public static async Task<Models.POISupplierQueryCallbackResponse> Exec...
    method ExecutePOISupplierQueryTaskV2Async (line 914) | public static async Task<Models.POISupplierQueryTaskV2Response> Execut...
    method ExecutePOISupplierQuerySupplierV2Async (line 938) | public static async Task<Models.POISupplierQuerySupplierV2Response> Ex...
    method ExecutePOISupplierMatchV2Async (line 962) | public static async Task<Models.POISupplierMatchV2Response> ExecutePOI...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteRoomExtensions.cs
  class DouyinOpenClientExecuteRoomExtensions (line 9) | public static class DouyinOpenClientExecuteRoomExtensions
    method ExecuteRoomDataRoomIdGetAsync (line 22) | public static async Task<Models.RoomDataRoomIdGetResponse> ExecuteRoom...
    method ExecuteRoomDataInteractiveGetAsync (line 48) | public static async Task<Models.RoomDataInteractiveGetResponse> Execut...
    method ExecuteRoomDataAudienceGetAsync (line 74) | public static async Task<Models.RoomDataAudienceGetResponse> ExecuteRo...
    method ExecuteRoomDataBaseGetAsync (line 100) | public static async Task<Models.RoomDataBaseGetResponse> ExecuteRoomDa...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteSandboxExtensions.cs
  class DouyinOpenClientExecuteSandboxExtensions (line 9) | public static class DouyinOpenClientExecuteSandboxExtensions
    method ExecuteSandboxWebhookEventSendAsync (line 22) | public static async Task<Models.SandboxWebhookEventSendResponse> Execu...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteShareIdExtensions.cs
  class DouyinOpenClientExecuteShareIdExtensions (line 10) | public static class DouyinOpenClientExecuteShareIdExtensions
    method ExecuteShareIdAsync (line 23) | public static async Task<Models.ShareIdResponse> ExecuteShareIdAsync(t...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteStarExtensions.cs
  class DouyinOpenClientExecuteStarExtensions (line 10) | public static class DouyinOpenClientExecuteStarExtensions
    method ExecuteStarHotListAsync (line 23) | public static async Task<Models.StarHotListResponse> ExecuteStarHotLis...
    method ExecuteStarAuthorScoreAsync (line 47) | public static async Task<Models.StarAuthorScoreResponse> ExecuteStarAu...
    method ExecuteStarAuthorScoreV2Async (line 71) | public static async Task<Models.StarAuthorScoreV2Response> ExecuteStar...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteTaskExtensions.cs
  class DouyinOpenClientExecuteTaskExtensions (line 9) | public static class DouyinOpenClientExecuteTaskExtensions
    method ExecuteTaskPostingCreateAsync (line 22) | public static async Task<Models.TaskPostingCreateResponse> ExecuteTask...
    method ExecuteTaskPostingBindVideoAsync (line 45) | public static async Task<Models.TaskPostingBindVideoResponse> ExecuteT...
    method ExecuteTaskPostingUserAsync (line 69) | public static async Task<Models.TaskPostingUserResponse> ExecuteTaskPo...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteToolExtensions.cs
  class DouyinOpenClientExecuteToolExtensions (line 9) | public static class DouyinOpenClientExecuteToolExtensions
    method ExecuteToolImagexClientUploadAsync (line 23) | public static async Task<Models.ToolImagexClientUploadResponse> Execut...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteVideoExtensions.cs
  class DouyinOpenClientExecuteVideoExtensions (line 10) | public static class DouyinOpenClientExecuteVideoExtensions
    method ExecuteVideoSourceAsync (line 23) | public static async Task<Models.VideoSourceResponse> ExecuteVideoSourc...
    method ExecuteVideoCommentListAsync (line 48) | public static async Task<Models.VideoCommentListResponse> ExecuteVideo...
    method ExecuteVideoCommentReplyListAsync (line 75) | public static async Task<Models.VideoCommentReplyListResponse> Execute...
    method ExecuteVideoCommentReplyAsync (line 103) | public static async Task<Models.VideoCommentReplyResponse> ExecuteVide...
    method ExecuteVideoCommentTopAsync (line 127) | public static async Task<Models.VideoCommentTopResponse> ExecuteVideoC...
    method ExecuteVideoSearchAsync (line 153) | public static async Task<Models.VideoSearchResponse> ExecuteVideoSearc...
    method ExecuteVideoSearchCommentListAsync (line 180) | public static async Task<Models.VideoSearchCommentListResponse> Execut...
    method ExecuteVideoSearchCommentReplyListAsync (line 207) | public static async Task<Models.VideoSearchCommentReplyListResponse> E...
    method ExecuteVideoSearchCommentReplyAsync (line 235) | public static async Task<Models.VideoSearchCommentReplyResponse> Execu...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientParameterExtensions.cs
  class DouyinOpenClientParameterExtensions (line 8) | public static class DouyinOpenClientParameterExtensions
    method GenerateParametersForJSBridgeConfig (line 22) | public static IDictionary<string, string> GenerateParametersForJSBridg...
    method GenerateParameterizedUrlForPlatformOAuthConnect (line 57) | public static string GenerateParameterizedUrlForPlatformOAuthConnect(t...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientSPIExtensions.cs
  class DouyinOpenClientSPIExtensions (line 8) | public static class DouyinOpenClientSPIExtensions
    method VerifySPIRequestSignature (line 23) | public static ErroredResult VerifySPIRequestSignature(this DouyinOpenC...
    method DecryptSPICipherField (line 62) | public static string DecryptSPICipherField(this DouyinOpenClient clien...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsAuth/AppsAuthGetOpenIdByCV1Request.cs
  class AppsAuthGetOpenIdByCV1Request (line 6) | public class AppsAuthGetOpenIdByCV1Request : DouyinAuthGetOpenIdByCV1Req...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsAuth/AppsAuthGetOpenIdByCV1Response.cs
  class AppsAuthGetOpenIdByCV1Response (line 6) | public class AppsAuthGetOpenIdByCV1Response : DouyinAuthGetOpenIdByCV1Re...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookCreateBookV2Request.cs
  class AppsTradeBookCreateBookV2Request (line 8) | public class AppsTradeBookCreateBookV2Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class ItemBookInfo (line 12) | public class ItemBookInfo
        class Types (line 14) | public static class Types
          class UserInfo (line 16) | public class UserInfo
          class BookSKUInfo (line 40) | public class BookSKUInfo
      class MarkupInfo (line 129) | public class MarkupInfo
        class Types (line 131) | public static class Types
          class MicroAppSchema (line 133) | public class MicroAppSchema : AppsTradeRefundCreateRefundV2Reque...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookCreateBookV2Response.cs
  class AppsTradeBookCreateBookV2Response (line 6) | public class AppsTradeBookCreateBookV2Response : DouyinOpenResponse<Apps...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class MarkupOrderInfo (line 14) | public class MarkupOrderInfo

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookMerchantCancelBookV2Request.cs
  class AppsTradeBookMerchantCancelBookV2Request (line 6) | public class AppsTradeBookMerchantCancelBookV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookMerchantCancelBookV2Response.cs
  class AppsTradeBookMerchantCancelBookV2Response (line 6) | public class AppsTradeBookMerchantCancelBookV2Response : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookQueryBookV2Request.cs
  class AppsTradeBookQueryBookV2Request (line 6) | public class AppsTradeBookQueryBookV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookQueryBookV2Response.cs
  class AppsTradeBookQueryBookV2Response (line 6) | public class AppsTradeBookQueryBookV2Response : DouyinOpenResponse<AppsT...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Book (line 14) | public class Book
            class Types (line 16) | public static class Types
              class ItemBookInfo (line 18) | public class ItemBookInfo
                class Types (line 20) | public static class Types
                  class UserInfo (line 22) | public class UserInfo
                  class BookSKUInfo (line 46) | public class BookSKUInfo

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookResultCallbackV2Request.cs
  class AppsTradeBookResultCallbackV2Request (line 8) | public class AppsTradeBookResultCallbackV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookResultCallbackV2Response.cs
  class AppsTradeBookResultCallbackV2Response (line 6) | public class AppsTradeBookResultCallbackV2Response : DouyinOpenResponse<...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookUserCancelBookV2Request.cs
  class AppsTradeBookUserCancelBookV2Request (line 8) | public class AppsTradeBookUserCancelBookV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookUserCancelBookV2Response.cs
  class AppsTradeBookUserCancelBookV2Response (line 6) | public class AppsTradeBookUserCancelBookV2Response : DouyinOpenResponse<...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentDeliveryPrepareV2Request.cs
  class AppsTradeFulfillmentDeliveryPrepareV2Request (line 6) | public class AppsTradeFulfillmentDeliveryPrepareV2Request : DouyinOpenRe...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentDeliveryPrepareV2Response.cs
  class AppsTradeFulfillmentDeliveryPrepareV2Response (line 6) | public class AppsTradeFulfillmentDeliveryPrepareV2Response : DouyinOpenR...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Certificate (line 14) | public class Certificate

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentDeliveryVerifyV2Request.cs
  class AppsTradeFulfillmentDeliveryVerifyV2Request (line 8) | public class AppsTradeFulfillmentDeliveryVerifyV2Request : DouyinOpenReq...
    class Types (line 10) | public static class Types
      class Certificate (line 12) | public class Certificate
      class POIInfo (line 29) | public class POIInfo

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentDeliveryVerifyV2Response.cs
  class AppsTradeFulfillmentDeliveryVerifyV2Response (line 6) | public class AppsTradeFulfillmentDeliveryVerifyV2Response : DouyinOpenRe...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentOrderCanUseV2Request.cs
  class AppsTradeFulfillmentOrderCanUseV2Request (line 6) | public class AppsTradeFulfillmentOrderCanUseV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentOrderCanUseV2Response.cs
  class AppsTradeFulfillmentOrderCanUseV2Response (line 6) | public class AppsTradeFulfillmentOrderCanUseV2Response : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Certificate (line 14) | public class Certificate : AppsTradeFulfillmentQueryUserCertific...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentPushDeliveryV2Request.cs
  class AppsTradeFulfillmentPushDeliveryV2Request (line 8) | public class AppsTradeFulfillmentPushDeliveryV2Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class ItemOrder (line 12) | public class ItemOrder
      class POIInfo (line 22) | public class POIInfo : AppsTradeFulfillmentDeliveryVerifyV2Request.T...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentPushDeliveryV2Response.cs
  class AppsTradeFulfillmentPushDeliveryV2Response (line 6) | public class AppsTradeFulfillmentPushDeliveryV2Response : DouyinOpenResp...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentQueryUserCertificatesV2Request.cs
  class AppsTradeFulfillmentQueryUserCertificatesV2Request (line 6) | public class AppsTradeFulfillmentQueryUserCertificatesV2Request : Douyin...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentQueryUserCertificatesV2Response.cs
  class AppsTradeFulfillmentQueryUserCertificatesV2Response (line 6) | public class AppsTradeFulfillmentQueryUserCertificatesV2Response : Douyi...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Order (line 14) | public class Order
            class Types (line 16) | public static class Types
              class Certificate (line 18) | public class Certificate
                class Types (line 20) | public static class Types
                  class SKU (line 22) | public class SKU
                  class Amount (line 88) | public class Amount
                  class TimesCardInfo (line 133) | public class TimesCardInfo

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentVerifyCancelV2Request.cs
  class AppsTradeFulfillmentVerifyCancelV2Request (line 6) | public class AppsTradeFulfillmentVerifyCancelV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentVerifyCancelV2Response.cs
  class AppsTradeFulfillmentVerifyCancelV2Response (line 6) | public class AppsTradeFulfillmentVerifyCancelV2Response : DouyinOpenResp...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderCloseOrderV2Request.cs
  class AppsTradeOrderCloseOrderV2Request (line 6) | public class AppsTradeOrderCloseOrderV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderCloseOrderV2Response.cs
  class AppsTradeOrderCloseOrderV2Response (line 6) | public class AppsTradeOrderCloseOrderV2Response : DouyinOpenResponse

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderCreateOrderV2Request.cs
  class AppsTradeOrderCreateOrderV2Request (line 8) | public class AppsTradeOrderCreateOrderV2Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class Goods (line 12) | public class Goods
        class Types (line 14) | public static class Types
          class OrderValidTime (line 16) | public class OrderValidTime
          class BookingInfo (line 40) | public class BookingInfo
      class PriceCalculationDetail (line 159) | public class PriceCalculationDetail
        class Types (line 161) | public static class Types
          class GoodsDiscountDetail (line 163) | public class GoodsDiscountDetail
          class ItemDiscountDetail (line 201) | public class ItemDiscountDetail
          class OrderDiscountDetail (line 232) | public class OrderDiscountDetail
          class MarketingDetail (line 256) | public class MarketingDetail
      class MicroAppSchema (line 345) | public class MicroAppSchema

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderCreateOrderV2Response.cs
  class AppsTradeOrderCreateOrderV2Response (line 6) | public class AppsTradeOrderCreateOrderV2Response : DouyinOpenResponse<Ap...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class ItemOrderInfo (line 14) | public class ItemOrderInfo
            class Types (line 16) | public static class Types
              class ItemOrder (line 18) | public class ItemOrder

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryCPSV2Request.cs
  class AppsTradeOrderQueryCPSV2Request (line 6) | public class AppsTradeOrderQueryCPSV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryCPSV2Response.cs
  class AppsTradeOrderQueryCPSV2Response (line 6) | public class AppsTradeOrderQueryCPSV2Response : DouyinOpenResponse<AppsT...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Payment (line 14) | public class Payment
          class CPS (line 73) | public class CPS
            class Types (line 75) | public static class Types
              class CPSItem (line 77) | public class CPSItem
          class Refund (line 168) | public class Refund
            class Types (line 170) | public static class Types
              class RefundItem (line 172) | public class RefundItem
          class Delivery (line 226) | public class Delivery
            class Types (line 228) | public static class Types
              class DeliveryItem (line 230) | public class DeliveryItem

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryItemOrderInfoV2Request.cs
  class AppsTradeOrderQueryItemOrderInfoV2Request (line 8) | public class AppsTradeOrderQueryItemOrderInfoV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryItemOrderInfoV2Response.cs
  class AppsTradeOrderQueryItemOrderInfoV2Response (line 6) | public class AppsTradeOrderQueryItemOrderInfoV2Response : DouyinOpenResp...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class ItemOrder (line 14) | public class ItemOrder
            class Types (line 16) | public static class Types
              class TimesCardInfo (line 18) | public class TimesCardInfo

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryOrderV2Request.cs
  class AppsTradeOrderQueryOrderV2Request (line 6) | public class AppsTradeOrderQueryOrderV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryOrderV2Response.cs
  class AppsTradeOrderQueryOrderV2Response (line 6) | public class AppsTradeOrderQueryOrderV2Response : DouyinOpenResponse<App...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundCreateRefundV2Request.cs
  class AppsTradeRefundCreateRefundV2Request (line 8) | public class AppsTradeRefundCreateRefundV2Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class ItemOrder (line 12) | public class ItemOrder
      class MicroAppSchema (line 29) | public class MicroAppSchema
      class TimesCardRefundParameter (line 46) | public class TimesCardRefundParameter

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundCreateRefundV2Response.cs
  class AppsTradeRefundCreateRefundV2Response (line 6) | public class AppsTradeRefundCreateRefundV2Response : DouyinOpenResponse<...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundMerchantAuditCallbackV2Request.cs
  class AppsTradeRefundMerchantAuditCallbackV2Request (line 6) | public class AppsTradeRefundMerchantAuditCallbackV2Request : DouyinOpenR...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundMerchantAuditCallbackV2Response.cs
  class AppsTradeRefundMerchantAuditCallbackV2Response (line 6) | public class AppsTradeRefundMerchantAuditCallbackV2Response : DouyinOpen...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundQueryRefundV2Request.cs
  class AppsTradeRefundQueryRefundV2Request (line 6) | public class AppsTradeRefundQueryRefundV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundQueryRefundV2Response.cs
  class AppsTradeRefundQueryRefundV2Response (line 6) | public class AppsTradeRefundQueryRefundV2Response : DouyinOpenResponse<A...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Refund (line 14) | public class Refund
            class Types (line 16) | public static class Types
              class ItemOrder (line 18) | public class ItemOrder
              class MerchantAuditDetail (line 35) | public class MerchantAuditDetail

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeSettleCreateSettleV2Request.cs
  class AppsTradeSettleCreateSettleV2Request (line 8) | public class AppsTradeSettleCreateSettleV2Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class SettleParameter (line 12) | public class SettleParameter

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeSettleCreateSettleV2Response.cs
  class AppsTradeSettleCreateSettleV2Response (line 6) | public class AppsTradeSettleCreateSettleV2Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeSettleQuerySettleV2Request.cs
  class AppsTradeSettleQuerySettleV2Request (line 6) | public class AppsTradeSettleQuerySettleV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeSettleQuerySettleV2Response.cs
  class AppsTradeSettleQuerySettleV2Response (line 6) | public class AppsTradeSettleQuerySettleV2Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetOpenIdByBV1Request.cs
  class DouyinAuthGetOpenIdByBV1Request (line 6) | public class DouyinAuthGetOpenIdByBV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetOpenIdByBV1Response.cs
  class DouyinAuthGetOpenIdByBV1Response (line 6) | public class DouyinAuthGetOpenIdByBV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetOpenIdByCV1Request.cs
  class DouyinAuthGetOpenIdByCV1Request (line 6) | public class DouyinAuthGetOpenIdByCV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetOpenIdByCV1Response.cs
  class DouyinAuthGetOpenIdByCV1Response (line 6) | public class DouyinAuthGetOpenIdByCV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetRelatedIdV1Request.cs
  class DouyinAuthGetRelatedIdV1Request (line 6) | public class DouyinAuthGetRelatedIdV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetRelatedIdV1Response.cs
  class DouyinAuthGetRelatedIdV1Response (line 6) | public class DouyinAuthGetRelatedIdV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMDeleteAppletTemplateV1Request.cs
  class DouyinIMDeleteAppletTemplateV1Request (line 6) | public class DouyinIMDeleteAppletTemplateV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMDeleteAppletTemplateV1Response.cs
  class DouyinIMDeleteAppletTemplateV1Response (line 6) | public class DouyinIMDeleteAppletTemplateV1Response : DouyinOpenResponse...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMGetAppletTemplateV1Request.cs
  class DouyinIMGetAppletTemplateV1Request (line 6) | public class DouyinIMGetAppletTemplateV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMGetAppletTemplateV1Response.cs
  class DouyinIMGetAppletTemplateV1Response (line 6) | public class DouyinIMGetAppletTemplateV1Response : DouyinOpenResponse<Do...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Card (line 14) | public class Card

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMSetAppletTemplateV1Request.cs
  class DouyinIMSetAppletTemplateV1Request (line 6) | public class DouyinIMSetAppletTemplateV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMSetAppletTemplateV1Response.cs
  class DouyinIMSetAppletTemplateV1Response (line 6) | public class DouyinIMSetAppletTemplateV1Response : DouyinOpenResponse<Do...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinInteractive/DouyinInteractiveIntentionLogListV1Request.cs
  class DouyinInteractiveIntentionLogListV1Request (line 6) | public class DouyinInteractiveIntentionLogListV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinInteractive/DouyinInteractiveIntentionLogListV1Response.cs
  class DouyinInteractiveIntentionLogListV1Response (line 6) | public class DouyinInteractiveIntentionLogListV1Response : DouyinOpenRes...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
        class Types (line 12) | public static class Types
          class IntentionLogInfo (line 14) | public class IntentionLogInfo
    method IsSuccessful (line 92) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinRole/DouyinRoleCheckV1Request.cs
  class DouyinRoleCheckV1Request (line 8) | public class DouyinRoleCheckV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinRole/DouyinRoleCheckV1Response.cs
  class DouyinRoleCheckV1Response (line 8) | public class DouyinRoleCheckV1Response : DouyinOpenResponse
    class Types (line 10) | public static class Types
      class Data (line 12) | public class Data
    method IsSuccessful (line 53) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetChatV1Request.cs
  class DouyinSchemaGetChatV1Request (line 6) | public class DouyinSchemaGetChatV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetChatV1Response.cs
  class DouyinSchemaGetChatV1Response (line 6) | public class DouyinSchemaGetChatV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetItemInfoV1Request.cs
  class DouyinSchemaGetItemInfoV1Request (line 6) | public class DouyinSchemaGetItemInfoV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetItemInfoV1Response.cs
  class DouyinSchemaGetItemInfoV1Response (line 6) | public class DouyinSchemaGetItemInfoV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetLiveV1Request.cs
  class DouyinSchemaGetLiveV1Request (line 6) | public class DouyinSchemaGetLiveV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetLiveV1Response.cs
  class DouyinSchemaGetLiveV1Response (line 6) | public class DouyinSchemaGetLiveV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetShareV1Request.cs
  class DouyinSchemaGetShareV1Request (line 8) | public class DouyinSchemaGetShareV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class MicroApp (line 12) | public class MicroApp

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetShareV1Response.cs
  class DouyinSchemaGetShareV1Response (line 6) | public class DouyinSchemaGetShareV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetUserProfileV1Request.cs
  class DouyinSchemaGetUserProfileV1Request (line 6) | public class DouyinSchemaGetUserProfileV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetUserProfileV1Response.cs
  class DouyinSchemaGetUserProfileV1Response (line 6) | public class DouyinSchemaGetUserProfileV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinUser/DouyinUserFansDataV1Request.cs
  class DouyinUserFansDataV1Request (line 6) | public class DouyinUserFansDataV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinUser/DouyinUserFansDataV1Response.cs
  class DouyinUserFansDataV1Response (line 6) | public class DouyinUserFansDataV1Response : DouyinOpenResponse<DouyinUse...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result
            class Types (line 16) | public static class Types
              class ItemValue (line 18) | public class ItemValue
              class FlowDistribution (line 35) | public class FlowDistribution

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoBasicInfoV1Request.cs
  class DouyinVideoBasicInfoV1Request (line 8) | public class DouyinVideoBasicInfoV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoBasicInfoV1Response.cs
  class DouyinVideoBasicInfoV1Response (line 6) | public class DouyinVideoBasicInfoV1Response : DouyinOpenResponse<DouyinV...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Video (line 14) | public class Video

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoCreateVideoV1Request.cs
  class DouyinVideoCreateVideoV1Request (line 8) | public class DouyinVideoCreateVideoV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class VRTranscodeParameter (line 12) | public class VRTranscodeParameter
        class Types (line 14) | public static class Types
          class VideoStyle (line 16) | public class VideoStyle

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoCreateVideoV1Response.cs
  class DouyinVideoCreateVideoV1Response (line 6) | public class DouyinVideoCreateVideoV1Response : DouyinOpenResponse<Douyi...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoDataV1Request.cs
  class DouyinVideoDataV1Request (line 8) | public class DouyinVideoDataV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoDataV1Response.cs
  class DouyinVideoDataV1Response (line 6) | public class DouyinVideoDataV1Response : DouyinOpenResponse<DouyinVideoD...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Video (line 14) | public class Video
            class Types (line 16) | public static class Types
              class Statistics (line 18) | public class Statistics : DouyinVideoListV1Response.Types.Da...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoListV1Request.cs
  class DouyinVideoListV1Request (line 6) | public class DouyinVideoListV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoListV1Response.cs
  class DouyinVideoListV1Response (line 6) | public class DouyinVideoListV1Response : DouyinOpenResponse<DouyinVideoL...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Video (line 14) | public class Video
            class Types (line 16) | public static class Types
              class Statistics (line 18) | public class Statistics

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoUploadVideoV1Request.cs
  class DouyinVideoUploadVideoV1Request (line 8) | public class DouyinVideoUploadVideoV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoUploadVideoV1Response.cs
  class DouyinVideoUploadVideoV1Response (line 6) | public class DouyinVideoUploadVideoV1Response : DouyinOpenResponse<Douyi...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Video (line 14) | public class Video

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Iframe/DouyinVideoGetIframeByItemV1Request.cs
  class DouyinVideoGetIframeByItemV1Request (line 6) | public class DouyinVideoGetIframeByItemV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Iframe/DouyinVideoGetIframeByItemV1Response.cs
  class DouyinVideoGetIframeByItemV1Response (line 6) | public class DouyinVideoGetIframeByItemV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinVideoGetIframeByVideoV1Response.Types.Data
    method IsSuccessful (line 38) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Iframe/DouyinVideoGetIframeByVideoV1Request.cs
  class DouyinVideoGetIframeByVideoV1Request (line 6) | public class DouyinVideoGetIframeByVideoV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Iframe/DouyinVideoGetIframeByVideoV1Response.cs
  class DouyinVideoGetIframeByVideoV1Response (line 6) | public class DouyinVideoGetIframeByVideoV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
    method IsSuccessful (line 65) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Image/DouyinVideoCreateImageTextV1Request.cs
  class DouyinVideoCreateImageTextV1Request (line 8) | public class DouyinVideoCreateImageTextV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Image/DouyinVideoCreateImageTextV1Response.cs
  class DouyinVideoCreateImageTextV1Response (line 6) | public class DouyinVideoCreateImageTextV1Response : DouyinOpenResponse<D...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Image/DouyinVideoUploadImageV1Request.cs
  class DouyinVideoUploadImageV1Request (line 8) | public class DouyinVideoUploadImageV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Image/DouyinVideoUploadImageV1Response.cs
  class DouyinVideoUploadImageV1Response (line 6) | public class DouyinVideoUploadImageV1Response : DouyinOpenResponse<Douyi...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Image (line 14) | public class Image

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Part/DouyinVideoCompleteVideoPartUploadV1Request.cs
  class DouyinVideoCompleteVideoPartUploadV1Request (line 6) | public class DouyinVideoCompleteVideoPartUploadV1Request : DouyinOpenReq...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Part/DouyinVideoCompleteVideoPartUploadV1Response.cs
  class DouyinVideoCompleteVideoPartUploadV1Response (line 6) | public class DouyinVideoCompleteVideoPartUploadV1Response : DouyinVideoU...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Part/DouyinVideoInitVideoPartUploadV1Request.cs
  class DouyinVideoInitVideoPartUploadV1Request (line 6) | public class DouyinVideoInitVideoPartUploadV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Part/DouyinVideoInitVideoPartUploadV1Response.cs
  class DouyinVideoInitVideoPartUploadV1Response (line 6) | public class DouyinVideoInitVideoPartUploadV1Response : DouyinOpenRespon...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Part/DouyinVideoUploadVideoPartV1Request.cs
  class DouyinVideoUploadVideoPartV1Request (line 6) | public class DouyinVideoUploadVideoPartV1Request : DouyinVideoUploadVide...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/Part/DouyinVideoUploadVideoPartV1Response.cs
  class DouyinVideoUploadVideoPartV1Response (line 6) | public class DouyinVideoUploadVideoPartV1Response : DouyinOpenResponse<D...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Video (line 14) | public class Video

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIM/IMMessageResourcesRequest.cs
  class IMMessageResourcesRequest (line 6) | public class IMMessageResourcesRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIM/IMMessageResourcesResponse.cs
  class IMMessageResourcesResponse (line 6) | public class IMMessageResourcesResponse : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
    method IsSuccessful (line 51) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIndustry/AppTestRelation/IndustrySolutionAddAppTestRelationV1Request.cs
  class IndustrySolutionAddAppTestRelationV1Request (line 8) | public class IndustrySolutionAddAppTestRelationV1Request : DouyinOpenReq...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIndustry/AppTestRelation/IndustrySolutionAddAppTestRelationV1Response.cs
  class IndustrySolutionAddAppTestRelationV1Response (line 6) | public class IndustrySolutionAddAppTestRelationV1Response : DouyinOpenRe...
    class Types (line 8) | public static class Types
      class BaseResponse (line 10) | public class BaseResponse : IndustrySolutionQueryAppTestRelationV1Re...
      class Data (line 14) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 26) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIndustry/AppTestRelation/IndustrySolutionDeleteAppTestRelationV1Request.cs
  class IndustrySolutionDeleteAppTestRelationV1Request (line 8) | public class IndustrySolutionDeleteAppTestRelationV1Request : DouyinOpen...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIndustry/AppTestRelation/IndustrySolutionDeleteAppTestRelationV1Response.cs
  class IndustrySolutionDeleteAppTestRelationV1Response (line 6) | public class IndustrySolutionDeleteAppTestRelationV1Response : DouyinOpe...
    class Types (line 8) | public static class Types
      class BaseResponse (line 10) | public class BaseResponse : IndustrySolutionQueryAppTestRelationV1Re...
      class Data (line 14) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 26) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIndustry/AppTestRelation/IndustrySolutionQueryAppTestRelationV1Request.cs
  class IndustrySolutionQueryAppTestRelationV1Request (line 6) | public class IndustrySolutionQueryAppTestRelationV1Request : DouyinOpenR...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIndustry/AppTestRelation/IndustrySolutionQueryAppTestRelationV1Response.cs
  class IndustrySolutionQueryAppTestRelationV1Response (line 6) | public class IndustrySolutionQueryAppTestRelationV1Response : DouyinOpen...
    class Types (line 8) | public static class Types
      class BaseResponse (line 10) | public class BaseResponse
      class Data (line 28) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 47) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIndustry/Implementation/IndustrySolutionQueryImplementationV1Request.cs
  class IndustrySolutionQueryImplementationV1Request (line 8) | public class IndustrySolutionQueryImplementationV1Request : DouyinOpenRe...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIndustry/Implementation/IndustrySolutionQueryImplementationV1Response.cs
  class IndustrySolutionQueryImplementationV1Response (line 6) | public class IndustrySolutionQueryImplementationV1Response : DouyinOpenR...
    class Types (line 8) | public static class Types
      class IndustryImplementation (line 10) | public class IndustryImplementation
        class Types (line 12) | public static class Types
          class AbilityImplementation (line 14) | public class AbilityImplementation
      class AppConfigItem (line 82) | public class AppConfigItem

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIndustry/Implementation/IndustrySolutionSetImplementationV1Request.cs
  class IndustrySolutionSetImplementationV1Request (line 8) | public class IndustrySolutionSetImplementationV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class IndustryImplementation (line 12) | public class IndustryImplementation
        class Types (line 14) | public static class Types
          class AbilityImplementation (line 16) | public class AbilityImplementation
      class AppConfigItem (line 77) | public class AppConfigItem

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiIndustry/Implementation/IndustrySolutionSetImplementationV1Response.cs
  class IndustrySolutionSetImplementationV1Response (line 6) | public class IndustrySolutionSetImplementationV1Response : DouyinOpenRes...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxAgencyQueryBillLinkV2Request.cs
  class MatchTaskboxAgencyQueryBillLinkV2Request (line 6) | public class MatchTaskboxAgencyQueryBillLinkV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxAgencyQueryBillLinkV2Response.cs
  class MatchTaskboxAgencyQueryBillLinkV2Response (line 6) | public class MatchTaskboxAgencyQueryBillLinkV2Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxAgencyQueryVideoSummaryDataV2Request.cs
  class MatchTaskboxAgencyQueryVideoSummaryDataV2Request (line 8) | public class MatchTaskboxAgencyQueryVideoSummaryDataV2Request : DouyinOp...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxAgencyQueryVideoSummaryDataV2Response.cs
  class MatchTaskboxAgencyQueryVideoSummaryDataV2Response (line 6) | public class MatchTaskboxAgencyQueryVideoSummaryDataV2Response : DouyinO...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
    method IsSuccessful (line 83) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxChangeUserBindAgentV1Request.cs
  class MatchTaskboxChangeUserBindAgentV1Request (line 6) | public class MatchTaskboxChangeUserBindAgentV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxChangeUserBindAgentV1Response.cs
  class MatchTaskboxChangeUserBindAgentV1Response (line 6) | public class MatchTaskboxChangeUserBindAgentV1Response : DouyinOpenResponse
    method IsSuccessful (line 24) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxGenerateAgentLinkV1Request.cs
  class MatchTaskboxGenerateAgentLinkV1Request (line 6) | public class MatchTaskboxGenerateAgentLinkV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxGenerateAgentLinkV1Response.cs
  class MatchTaskboxGenerateAgentLinkV1Response (line 6) | public class MatchTaskboxGenerateAgentLinkV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
    method IsSuccessful (line 51) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxGetAgencyUserBindRecordV1Request.cs
  class MatchTaskboxGetAgencyUserBindRecordV1Request (line 6) | public class MatchTaskboxGetAgencyUserBindRecordV1Request : DouyinOpenRe...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxGetAgencyUserBindRecordV1Response.cs
  class MatchTaskboxGetAgencyUserBindRecordV1Response (line 6) | public class MatchTaskboxGetAgencyUserBindRecordV1Response : DouyinOpenR...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result
    method IsSuccessful (line 92) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxQueryAppTaskIdV1Request.cs
  class MatchTaskboxQueryAppTaskIdV1Request (line 6) | public class MatchTaskboxQueryAppTaskIdV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxQueryAppTaskIdV1Response.cs
  class MatchTaskboxQueryAppTaskIdV1Response (line 6) | public class MatchTaskboxQueryAppTaskIdV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxQueryTaskInfoV1Request.cs
  class MatchTaskboxQueryTaskInfoV1Request (line 6) | public class MatchTaskboxQueryTaskInfoV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxQueryTaskInfoV1Response.cs
  class MatchTaskboxQueryTaskInfoV1Response (line 8) | public class MatchTaskboxQueryTaskInfoV1Response : DouyinOpenResponse
    class Types (line 10) | public static class Types
      class Data (line 12) | public class Data
        class Types (line 14) | public static class Types
          class Task (line 16) | public class Task
            class Types (line 18) | public static class Types
              class OrientedTalent (line 20) | public class OrientedTalent
    method IsSuccessful (line 290) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxQueryTaskVideoStatusV2Request.cs
  class MatchTaskboxQueryTaskVideoStatusV2Request (line 6) | public class MatchTaskboxQueryTaskVideoStatusV2Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxQueryTaskVideoStatusV2Response.cs
  class MatchTaskboxQueryTaskVideoStatusV2Response (line 6) | public class MatchTaskboxQueryTaskVideoStatusV2Response : DouyinOpenResp...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result
    method IsSuccessful (line 72) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxQueryViolateTalentListV2Request.cs
  class MatchTaskboxQueryViolateTalentListV2Request (line 6) | public class MatchTaskboxQueryViolateTalentListV2Request : DouyinOpenReq...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxQueryViolateTalentListV2Response.cs
  class MatchTaskboxQueryViolateTalentListV2Response (line 6) | public class MatchTaskboxQueryViolateTalentListV2Response : DouyinOpenRe...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 44) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxSaveAgentV1Request.cs
  class MatchTaskboxSaveAgentV1Request (line 6) | public class MatchTaskboxSaveAgentV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiMatch/MatchTaskboxSaveAgentV1Response.cs
  class MatchTaskboxSaveAgentV1Response (line 6) | public class MatchTaskboxSaveAgentV1Response : DouyinOpenResponse
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data
    method IsSuccessful (line 45) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Anchor/DataExternalAnchorMpItemClickDistributionRequest.cs
  class DataExternalAnchorMpItemClickDistributionRequest (line 6) | public class DataExternalAnchorMpItemClickDistributionRequest : DouyinOp...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Anchor/DataExternalAnchorMpItemClickDistributionResponse.cs
  class DataExternalAnchorMpItemClickDistributionResponse (line 8) | public class DataExternalAnchorMpItemClickDistributionResponse : DouyinO...
    class Types (line 10) | public static class Types
      class Data (line 12) | public class Data : DouyinOpenResponseData
        class Types (line 14) | public static class Types
          class Result (line 16) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Amusement/DataExternalBillboardAmusementNewRequest.cs
  class DataExternalBillboardAmusementNewRequest (line 6) | public class DataExternalBillboardAmusementNewRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Amusement/DataExternalBillboardAmusementNewResponse.cs
  class DataExternalBillboardAmusementNewResponse (line 6) | public class DataExternalBillboardAmusementNewResponse : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Amusement/DataExternalBillboardAmusementOverallRequest.cs
  class DataExternalBillboardAmusementOverallRequest (line 6) | public class DataExternalBillboardAmusementOverallRequest : DouyinOpenRe...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Amusement/DataExternalBillboardAmusementOverallResponse.cs
  class DataExternalBillboardAmusementOverallResponse (line 6) | public class DataExternalBillboardAmusementOverallResponse : DouyinOpenR...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Car/DataExternalBillboardCarCommentRequest.cs
  class DataExternalBillboardCarCommentRequest (line 6) | public class DataExternalBillboardCarCommentRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Car/DataExternalBillboardCarCommentResponse.cs
  class DataExternalBillboardCarCommentResponse (line 6) | public class DataExternalBillboardCarCommentResponse : DouyinOpenRespons...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Car/DataExternalBillboardCarDriverRequest.cs
  class DataExternalBillboardCarDriverRequest (line 6) | public class DataExternalBillboardCarDriverRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Car/DataExternalBillboardCarDriverResponse.cs
  class DataExternalBillboardCarDriverResponse (line 6) | public class DataExternalBillboardCarDriverResponse : DouyinOpenResponse...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Car/DataExternalBillboardCarOverallRequest.cs
  class DataExternalBillboardCarOverallRequest (line 6) | public class DataExternalBillboardCarOverallRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Car/DataExternalBillboardCarOverallResponse.cs
  class DataExternalBillboardCarOverallResponse (line 6) | public class DataExternalBillboardCarOverallResponse : DouyinOpenRespons...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Car/DataExternalBillboardCarPlayRequest.cs
  class DataExternalBillboardCarPlayRequest (line 6) | public class DataExternalBillboardCarPlayRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Car/DataExternalBillboardCarPlayResponse.cs
  class DataExternalBillboardCarPlayResponse (line 6) | public class DataExternalBillboardCarPlayResponse : DouyinOpenResponse<D...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Car/DataExternalBillboardCarUseRequest.cs
  class DataExternalBillboardCarUseRequest (line 6) | public class DataExternalBillboardCarUseRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Car/DataExternalBillboardCarUseResponse.cs
  class DataExternalBillboardCarUseResponse (line 6) | public class DataExternalBillboardCarUseResponse : DouyinOpenResponse<Da...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaBrainCavityRequest.cs
  class DataExternalBillboardCospaBrainCavityRequest (line 6) | public class DataExternalBillboardCospaBrainCavityRequest : DouyinOpenRe...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaBrainCavityResponse.cs
  class DataExternalBillboardCospaBrainCavityResponse (line 6) | public class DataExternalBillboardCospaBrainCavityResponse : DouyinOpenR...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaNewRequest.cs
  class DataExternalBillboardCospaNewRequest (line 6) | public class DataExternalBillboardCospaNewRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaNewResponse.cs
  class DataExternalBillboardCospaNewResponse (line 6) | public class DataExternalBillboardCospaNewResponse : DouyinOpenResponse<...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaOutshotRequest.cs
  class DataExternalBillboardCospaOutshotRequest (line 6) | public class DataExternalBillboardCospaOutshotRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaOutshotResponse.cs
  class DataExternalBillboardCospaOutshotResponse (line 6) | public class DataExternalBillboardCospaOutshotResponse : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaOverallRequest.cs
  class DataExternalBillboardCospaOverallRequest (line 6) | public class DataExternalBillboardCospaOverallRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaOverallResponse.cs
  class DataExternalBillboardCospaOverallResponse (line 6) | public class DataExternalBillboardCospaOverallResponse : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaPaintingRequest.cs
  class DataExternalBillboardCospaPaintingRequest (line 6) | public class DataExternalBillboardCospaPaintingRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaPaintingResponse.cs
  class DataExternalBillboardCospaPaintingResponse (line 6) | public class DataExternalBillboardCospaPaintingResponse : DouyinOpenResp...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaQingmanRequest.cs
  class DataExternalBillboardCospaQingmanRequest (line 6) | public class DataExternalBillboardCospaQingmanRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaQingmanResponse.cs
  class DataExternalBillboardCospaQingmanResponse (line 6) | public class DataExternalBillboardCospaQingmanResponse : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaVoiceRequest.cs
  class DataExternalBillboardCospaVoiceRequest (line 6) | public class DataExternalBillboardCospaVoiceRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Cospa/DataExternalBillboardCospaVoiceResponse.cs
  class DataExternalBillboardCospaVoiceResponse (line 6) | public class DataExternalBillboardCospaVoiceResponse : DouyinOpenRespons...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Drama/DataExternalBillboardDramaOverallRequest.cs
  class DataExternalBillboardDramaOverallRequest (line 6) | public class DataExternalBillboardDramaOverallRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Drama/DataExternalBillboardDramaOverallResponse.cs
  class DataExternalBillboardDramaOverallResponse (line 6) | public class DataExternalBillboardDramaOverallResponse : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Food/DataExternalBillboardFoodNewRequest.cs
  class DataExternalBillboardFoodNewRequest (line 6) | public class DataExternalBillboardFoodNewRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Food/DataExternalBillboardFoodNewResponse.cs
  class DataExternalBillboardFoodNewResponse (line 6) | public class DataExternalBillboardFoodNewResponse : DouyinOpenResponse<D...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Food/DataExternalBillboardFoodOverallRequest.cs
  class DataExternalBillboardFoodOverallRequest (line 6) | public class DataExternalBillboardFoodOverallRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Food/DataExternalBillboardFoodOverallResponse.cs
  class DataExternalBillboardFoodOverallResponse (line 6) | public class DataExternalBillboardFoodOverallResponse : DouyinOpenRespon...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Food/DataExternalBillboardFoodShopRequest.cs
  class DataExternalBillboardFoodShopRequest (line 6) | public class DataExternalBillboardFoodShopRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Food/DataExternalBillboardFoodShopResponse.cs
  class DataExternalBillboardFoodShopResponse (line 6) | public class DataExternalBillboardFoodShopResponse : DouyinOpenResponse<...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Food/DataExternalBillboardFoodTutorialRequest.cs
  class DataExternalBillboardFoodTutorialRequest (line 6) | public class DataExternalBillboardFoodTutorialRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Food/DataExternalBillboardFoodTutorialResponse.cs
  class DataExternalBillboardFoodTutorialResponse (line 6) | public class DataExternalBillboardFoodTutorialResponse : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Game/DataExternalBillboardGameConsoleRequest.cs
  class DataExternalBillboardGameConsoleRequest (line 6) | public class DataExternalBillboardGameConsoleRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Game/DataExternalBillboardGameConsoleResponse.cs
  class DataExternalBillboardGameConsoleResponse (line 6) | public class DataExternalBillboardGameConsoleResponse : DouyinOpenRespon...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Game/DataExternalBillboardGameInformationRequest.cs
  class DataExternalBillboardGameInformationRequest (line 6) | public class DataExternalBillboardGameInformationRequest : DouyinOpenReq...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Game/DataExternalBillboardGameInformationResponse.cs
  class DataExternalBillboardGameInformationResponse (line 6) | public class DataExternalBillboardGameInformationResponse : DouyinOpenRe...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/HotVideo/DataExternalBillboardHotVideoRequest.cs
  class DataExternalBillboardHotVideoRequest (line 6) | public class DataExternalBillboardHotVideoRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/HotVideo/DataExternalBillboardHotVideoResponse.cs
  class DataExternalBillboardHotVideoResponse (line 6) | public class DataExternalBillboardHotVideoResponse : DouyinOpenResponse<...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Item (line 14) | public class Item

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Live/DataExternalBillboardLiveRequest.cs
  class DataExternalBillboardLiveRequest (line 6) | public class DataExternalBillboardLiveRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Live/DataExternalBillboardLiveResponse.cs
  class DataExternalBillboardLiveResponse (line 6) | public class DataExternalBillboardLiveResponse : DouyinOpenResponse<Data...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Item (line 14) | public class Item

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Music/DataExternalBillboardMusicHotRequest.cs
  class DataExternalBillboardMusicHotRequest (line 6) | public class DataExternalBillboardMusicHotRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Music/DataExternalBillboardMusicHotResponse.cs
  class DataExternalBillboardMusicHotResponse (line 6) | public class DataExternalBillboardMusicHotResponse : DouyinOpenResponse<...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Item (line 14) | public class Item

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Music/DataExternalBillboardMusicOriginalRequest.cs
  class DataExternalBillboardMusicOriginalRequest (line 6) | public class DataExternalBillboardMusicOriginalRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Music/DataExternalBillboardMusicOriginalResponse.cs
  class DataExternalBillboardMusicOriginalResponse (line 6) | public class DataExternalBillboardMusicOriginalResponse : DouyinOpenResp...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardMusicHotResponse.Types.Data

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Music/DataExternalBillboardMusicSoarRequest.cs
  class DataExternalBillboardMusicSoarRequest (line 6) | public class DataExternalBillboardMusicSoarRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Music/DataExternalBillboardMusicSoarResponse.cs
  class DataExternalBillboardMusicSoarResponse (line 6) | public class DataExternalBillboardMusicSoarResponse : DouyinOpenResponse...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardMusicHotResponse.Types.Data

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Prop/DataExternalBillboardPropRequest.cs
  class DataExternalBillboardPropRequest (line 6) | public class DataExternalBillboardPropRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Prop/DataExternalBillboardPropResponse.cs
  class DataExternalBillboardPropResponse (line 6) | public class DataExternalBillboardPropResponse : DouyinOpenResponse<Data...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Item (line 14) | public class Item

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportBasketballRequest.cs
  class DataExternalBillboardSportBasketballRequest (line 6) | public class DataExternalBillboardSportBasketballRequest : DouyinOpenReq...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportBasketballResponse.cs
  class DataExternalBillboardSportBasketballResponse (line 6) | public class DataExternalBillboardSportBasketballResponse : DouyinOpenRe...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportComprehensiveRequest.cs
  class DataExternalBillboardSportComprehensiveRequest (line 6) | public class DataExternalBillboardSportComprehensiveRequest : DouyinOpen...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportComprehensiveResponse.cs
  class DataExternalBillboardSportComprehensiveResponse (line 6) | public class DataExternalBillboardSportComprehensiveResponse : DouyinOpe...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportCultureRequest.cs
  class DataExternalBillboardSportCultureRequest (line 6) | public class DataExternalBillboardSportCultureRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportCultureResponse.cs
  class DataExternalBillboardSportCultureResponse (line 6) | public class DataExternalBillboardSportCultureResponse : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportFitnessRequest.cs
  class DataExternalBillboardSportFitnessRequest (line 6) | public class DataExternalBillboardSportFitnessRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportFitnessResponse.cs
  class DataExternalBillboardSportFitnessResponse (line 6) | public class DataExternalBillboardSportFitnessResponse : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportOutdoorsRequest.cs
  class DataExternalBillboardSportOutdoorsRequest (line 6) | public class DataExternalBillboardSportOutdoorsRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportOutdoorsResponse.cs
  class DataExternalBillboardSportOutdoorsResponse (line 6) | public class DataExternalBillboardSportOutdoorsResponse : DouyinOpenResp...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportOverallRequest.cs
  class DataExternalBillboardSportOverallRequest (line 6) | public class DataExternalBillboardSportOverallRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportOverallResponse.cs
  class DataExternalBillboardSportOverallResponse (line 6) | public class DataExternalBillboardSportOverallResponse : DouyinOpenRespo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Item (line 14) | public class Item
            class Types (line 16) | public static class Types
              class Video (line 18) | public class Video

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportSoccerRequest.cs
  class DataExternalBillboardSportSoccerRequest (line 6) | public class DataExternalBillboardSportSoccerRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportSoccerResponse.cs
  class DataExternalBillboardSportSoccerResponse (line 6) | public class DataExternalBillboardSportSoccerResponse : DouyinOpenRespon...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportTableTennisRequest.cs
  class DataExternalBillboardSportTableTennisRequest (line 6) | public class DataExternalBillboardSportTableTennisRequest : DouyinOpenRe...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Sport/DataExternalBillboardSportTableTennisResponse.cs
  class DataExternalBillboardSportTableTennisResponse (line 6) | public class DataExternalBillboardSportTableTennisResponse : DouyinOpenR...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Stars/DataExternalBillboardStarsRequest.cs
  class DataExternalBillboardStarsRequest (line 6) | public class DataExternalBillboardStarsRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Stars/DataExternalBillboardStarsResponse.cs
  class DataExternalBillboardStarsResponse (line 6) | public class DataExternalBillboardStarsResponse : DouyinOpenResponse<Dat...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Item (line 14) | public class Item

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Topic/DataExternalBillboardTopicRequest.cs
  class DataExternalBillboardTopicRequest (line 6) | public class DataExternalBillboardTopicRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Topic/DataExternalBillboardTopicResponse.cs
  class DataExternalBillboardTopicResponse (line 6) | public class DataExternalBillboardTopicResponse : DouyinOpenResponse<Dat...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Item (line 14) | public class Item

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Travel/DataExternalBillboardTravelNewRequest.cs
  class DataExternalBillboardTravelNewRequest (line 6) | public class DataExternalBillboardTravelNewRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Travel/DataExternalBillboardTravelNewResponse.cs
  class DataExternalBillboardTravelNewResponse (line 6) | public class DataExternalBillboardTravelNewResponse : DouyinOpenResponse...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Travel/DataExternalBillboardTravelOverallRequest.cs
  class DataExternalBillboardTravelOverallRequest (line 6) | public class DataExternalBillboardTravelOverallRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Billboard/Travel/DataExternalBillboardTravelOverallResponse.cs
  class DataExternalBillboardTravelOverallResponse (line 6) | public class DataExternalBillboardTravelOverallResponse : DouyinOpenResp...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalBillboardSportOverallResponse.Types....

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Fans/DataExternalFansCommentRequest.cs
  class DataExternalFansCommentRequest (line 6) | public class DataExternalFansCommentRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Fans/DataExternalFansCommentResponse.cs
  class DataExternalFansCommentResponse (line 6) | public class DataExternalFansCommentResponse : DouyinOpenResponse<DataEx...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Fans/DataExternalFansFavouriteRequest.cs
  class DataExternalFansFavouriteRequest (line 6) | public class DataExternalFansFavouriteRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Fans/DataExternalFansFavouriteResponse.cs
  class DataExternalFansFavouriteResponse (line 6) | public class DataExternalFansFavouriteResponse : DouyinOpenResponse<Data...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Fans/DataExternalFansSourceRequest.cs
  class DataExternalFansSourceRequest (line 6) | public class DataExternalFansSourceRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Fans/DataExternalFansSourceResponse.cs
  class DataExternalFansSourceResponse (line 6) | public class DataExternalFansSourceResponse : DouyinOpenResponse<DataExt...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Item/DataExternalItemBaseRequest.cs
  class DataExternalItemBaseRequest (line 6) | public class DataExternalItemBaseRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Item/DataExternalItemBaseResponse.cs
  class DataExternalItemBaseResponse (line 6) | public class DataExternalItemBaseResponse : DouyinOpenResponse<DataExter...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Item/DataExternalItemCommentRequest.cs
  class DataExternalItemCommentRequest (line 6) | public class DataExternalItemCommentRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Item/DataExternalItemCommentResponse.cs
  class DataExternalItemCommentResponse (line 6) | public class DataExternalItemCommentResponse : DouyinOpenResponse<DataEx...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Item/DataExternalItemLikeRequest.cs
  class DataExternalItemLikeRequest (line 6) | public class DataExternalItemLikeRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Item/DataExternalItemLikeResponse.cs
  class DataExternalItemLikeResponse (line 6) | public class DataExternalItemLikeResponse : DouyinOpenResponse<DataExter...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Item/DataExternalItemPlayRequest.cs
  class DataExternalItemPlayRequest (line 6) | public class DataExternalItemPlayRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Item/DataExternalItemPlayResponse.cs
  class DataExternalItemPlayResponse (line 6) | public class DataExternalItemPlayResponse : DouyinOpenResponse<DataExter...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Item/DataExternalItemShareRequest.cs
  class DataExternalItemShareRequest (line 6) | public class DataExternalItemShareRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/Item/DataExternalItemShareResponse.cs
  class DataExternalItemShareResponse (line 6) | public class DataExternalItemShareResponse : DouyinOpenResponse<DataExte...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIBaseRequest.cs
  class DataExternalPOIBaseRequest (line 6) | public class DataExternalPOIBaseRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIBaseResponse.cs
  class DataExternalPOIBaseResponse (line 6) | public class DataExternalPOIBaseResponse : DouyinOpenResponse<DataExtern...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIBillboardRequest.cs
  class DataExternalPOIBillboardRequest (line 6) | public class DataExternalPOIBillboardRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIBillboardResponse.cs
  class DataExternalPOIBillboardResponse (line 6) | public class DataExternalPOIBillboardResponse : DouyinOpenResponse<DataE...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIClaimListRequest.cs
  class DataExternalPOIClaimListRequest (line 6) | public class DataExternalPOIClaimListRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIClaimListResponse.cs
  class DataExternalPOIClaimListResponse (line 6) | public class DataExternalPOIClaimListResponse : DouyinOpenResponse<DataE...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIServiceBaseRequest.cs
  class DataExternalPOIServiceBaseRequest (line 6) | public class DataExternalPOIServiceBaseRequest : DataExternalPOIBaseRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIServiceBaseResponse.cs
  class DataExternalPOIServiceBaseResponse (line 6) | public class DataExternalPOIServiceBaseResponse : DouyinOpenResponse<Dat...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIServiceUserRequest.cs
  class DataExternalPOIServiceUserRequest (line 6) | public class DataExternalPOIServiceUserRequest : DataExternalPOIUserRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIServiceUserResponse.cs
  class DataExternalPOIServiceUserResponse (line 6) | public class DataExternalPOIServiceUserResponse : DouyinOpenResponse<Dat...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DataExternalPOIUserResponse.Types.Data

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIUserRequest.cs
  class DataExternalPOIUserRequest (line 6) | public class DataExternalPOIUserRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/POI/DataExternalPOIUserResponse.cs
  class DataExternalPOIUserResponse (line 6) | public class DataExternalPOIUserResponse : DouyinOpenResponse<DataExtern...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class KeyValue (line 14) | public class KeyValue

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserCommentRequest.cs
  class DataExternalUserCommentRequest (line 6) | public class DataExternalUserCommentRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserCommentResponse.cs
  class DataExternalUserCommentResponse (line 6) | public class DataExternalUserCommentResponse : DouyinOpenResponse<DataEx...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserFansRequest.cs
  class DataExternalUserFansRequest (line 6) | public class DataExternalUserFansRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserFansResponse.cs
  class DataExternalUserFansResponse (line 6) | public class DataExternalUserFansResponse : DouyinOpenResponse<DataExter...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserItemRequest.cs
  class DataExternalUserItemRequest (line 6) | public class DataExternalUserItemRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserItemResponse.cs
  class DataExternalUserItemResponse (line 6) | public class DataExternalUserItemResponse : DouyinOpenResponse<DataExter...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserLikeRequest.cs
  class DataExternalUserLikeRequest (line 6) | public class DataExternalUserLikeRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserLikeResponse.cs
  class DataExternalUserLikeResponse (line 6) | public class DataExternalUserLikeResponse : DouyinOpenResponse<DataExter...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserProfileRequest.cs
  class DataExternalUserProfileRequest (line 6) | public class DataExternalUserProfileRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserProfileResponse.cs
  class DataExternalUserProfileResponse (line 6) | public class DataExternalUserProfileResponse : DouyinOpenResponse<DataEx...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserShareRequest.cs
  class DataExternalUserShareRequest (line 6) | public class DataExternalUserShareRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DataExternal/User/DataExternalUserShareResponse.cs
  class DataExternalUserShareResponse (line 6) | public class DataExternalUserShareResponse : DouyinOpenResponse<DataExte...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Result (line 14) | public class Result

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DevTool/DevToolMicroAppIsLegalRequest.cs
  class DevToolMicroAppIsLegalRequest (line 6) | public class DevToolMicroAppIsLegalRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/DevTool/DevToolMicroAppIsLegalResponse.cs
  class DevToolMicroAppIsLegalResponse (line 6) | public class DevToolMicroAppIsLegalResponse : DouyinOpenResponse<DevTool...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Discovery/DiscoveryEntertainmentRankItemRequest.cs
  class DiscoveryEntertainmentRankItemRequest (line 6) | public class DiscoveryEntertainmentRankItemRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Discovery/DiscoveryEntertainmentRankItemResponse.cs
  class DiscoveryEntertainmentRankItemResponse (line 8) | public class DiscoveryEntertainmentRankItemResponse : DouyinOpenResponse...
    class Types (line 10) | public static class Types
      class Data (line 12) | public class Data : DouyinOpenResponseData
        class Types (line 14) | public static class Types
          class Album (line 16) | public class Album

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Discovery/DiscoveryEntertainmentRankVersionRequest.cs
  class DiscoveryEntertainmentRankVersionRequest (line 6) | public class DiscoveryEntertainmentRankVersionRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Discovery/DiscoveryEntertainmentRankVersionResponse.cs
  class DiscoveryEntertainmentRankVersionResponse (line 8) | public class DiscoveryEntertainmentRankVersionResponse : DouyinOpenRespo...
    class Types (line 10) | public static class Types
      class Data (line 12) | public class Data : DouyinOpenResponseData
        class Types (line 14) | public static class Types
          class AlbumVersion (line 16) | public class AlbumVersion

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Enterprise/Media/EnterpriseMediaDeleteRequest.cs
  class EnterpriseMediaDeleteRequest (line 6) | public class EnterpriseMediaDeleteRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Enterprise/Media/EnterpriseMediaDeleteResponse.cs
  class EnterpriseMediaDeleteResponse (line 6) | public class EnterpriseMediaDeleteResponse : DouyinOpenResponse<Enterpri...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Enterprise/Media/EnterpriseMediaListRequest.cs
  class EnterpriseMediaListRequest (line 6) | public class EnterpriseMediaListRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Enterprise/Media/EnterpriseMediaListResponse.cs
  class EnterpriseMediaListResponse (line 6) | public class EnterpriseMediaListResponse : DouyinOpenResponse<Enterprise...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Media (line 14) | public class Media

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Enterprise/Media/EnterpriseMediaTempUploadRequest.cs
  class EnterpriseMediaTempUploadRequest (line 6) | public class EnterpriseMediaTempUploadRequest : EnterpriseMediaUploadReq...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Enterprise/Media/EnterpriseMediaTempUploadResponse.cs
  class EnterpriseMediaTempUploadResponse (line 6) | public class EnterpriseMediaTempUploadResponse : DouyinOpenResponse<Ente...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : EnterpriseMediaUploadResponse.Types.Data

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Enterprise/Media/EnterpriseMediaUploadRequest.cs
  class EnterpriseMediaUploadRequest (line 8) | public class EnterpriseMediaUploadRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Enterprise/Media/EnterpriseMediaUploadResponse.cs
  class EnterpriseMediaUploadResponse (line 6) | public class EnterpriseMediaUploadResponse : DouyinOpenResponse<Enterpri...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Media (line 14) | public class Media

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Event/EventStatusListRequest.cs
  class EventStatusListRequest (line 6) | public class EventStatusListRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Event/EventStatusListResponse.cs
  class EventStatusListResponse (line 6) | public class EventStatusListResponse : DouyinOpenResponse<EventStatusLis...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Item (line 14) | public class Item

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Event/EventStatusUpdateRequest.cs
  class EventStatusUpdateRequest (line 8) | public class EventStatusUpdateRequest : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class Item (line 12) | public class Item

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Event/EventStatusUpdateResponse.cs
  class EventStatusUpdateResponse (line 6) | public class EventStatusUpdateResponse : DouyinOpenResponse<EventStatusU...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Fans/FansCheckRequest.cs
  class FansCheckRequest (line 6) | public class FansCheckRequest : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/Fans/FansCheckResponse.cs
  class FansCheckResponse (line 6) | public class FansCheckResponse : DouyinOpenResponse<FansCheckResponse.Ty...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Aftersale/Audit/GoodLifeAftersaleAuditNotifyV1Request.cs
  class GoodLifeAftersaleAuditNotifyV1Request (line 8) | public class GoodLifeAftersaleAuditNotifyV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class RejectReason (line 12) | public class RejectReason

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Aftersale/Audit/GoodLifeAftersaleAuditNotifyV1Response.cs
  class GoodLifeAftersaleAuditNotifyV1Response (line 6) | public class GoodLifeAftersaleAuditNotifyV1Response : DouyinOpenResponse...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Aftersale/Order/GoodLifeAftersaleOrderApplyRefundV1Request.cs
  class GoodLifeAftersaleOrderApplyRefundV1Request (line 8) | public class GoodLifeAftersaleOrderApplyRefundV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class RefundReason (line 12) | public class RefundReason

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Aftersale/Order/GoodLifeAftersaleOrderApplyRefundV1Response.cs
  class GoodLifeAftersaleOrderApplyRefundV1Response (line 6) | public class GoodLifeAftersaleOrderApplyRefundV1Response : DouyinOpenRes...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Aftersale/Order/GoodLifeAftersaleOrderMerchantRejectV1Request.cs
  class GoodLifeAftersaleOrderMerchantRejectV1Request (line 8) | public class GoodLifeAftersaleOrderMerchantRejectV1Request : DouyinOpenR...
    class Types (line 10) | public static class Types
      class RejectReason (line 12) | public class RejectReason

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Aftersale/Order/GoodLifeAftersaleOrderMerchantRejectV1Response.cs
  class GoodLifeAftersaleOrderMerchantRejectV1Response (line 6) | public class GoodLifeAftersaleOrderMerchantRejectV1Response : DouyinOpen...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificateCancelV1Request.cs
  class GoodLifeFulfilmentCertificateCancelV1Request (line 6) | public class GoodLifeFulfilmentCertificateCancelV1Request : DouyinOpenRe...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificateCancelV1Response.cs
  class GoodLifeFulfilmentCertificateCancelV1Response (line 6) | public class GoodLifeFulfilmentCertificateCancelV1Response : DouyinOpenR...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificateGetV1Request.cs
  class GoodLifeFulfilmentCertificateGetV1Request (line 6) | public class GoodLifeFulfilmentCertificateGetV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificateGetV1Response.cs
  class GoodLifeFulfilmentCertificateGetV1Response (line 6) | public class GoodLifeFulfilmentCertificateGetV1Response : DouyinOpenResp...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Certificate (line 14) | public class Certificate
            class Types (line 16) | public static class Types
              class Amount (line 18) | public class Amount
              class SKU (line 42) | public class SKU
              class VerifyResult (line 94) | public class VerifyResult

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificatePrepareV1Request.cs
  class GoodLifeFulfilmentCertificatePrepareV1Request (line 6) | public class GoodLifeFulfilmentCertificatePrepareV1Request : DouyinOpenR...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificatePrepareV1Response.cs
  class GoodLifeFulfilmentCertificatePrepareV1Response (line 6) | public class GoodLifeFulfilmentCertificatePrepareV1Response : DouyinOpen...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Certificate (line 14) | public class Certificate
            class Types (line 16) | public static class Types
              class Amount (line 18) | public class Amount
              class SKU (line 70) | public class SKU

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificateQueryV1Request.cs
  class GoodLifeFulfilmentCertificateQueryV1Request (line 6) | public class GoodLifeFulfilmentCertificateQueryV1Request : DouyinOpenReq...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificateQueryV1Response.cs
  class GoodLifeFulfilmentCertificateQueryV1Response (line 6) | public class GoodLifeFulfilmentCertificateQueryV1Response : DouyinOpenRe...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Certificate (line 14) | public class Certificate : GoodLifeFulfilmentCertificateGetV1Res...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificateVerifyRecordQueryV1Request.cs
  class GoodLifeFulfilmentCertificateVerifyRecordQueryV1Request (line 8) | public class GoodLifeFulfilmentCertificateVerifyRecordQueryV1Request : D...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificateVerifyRecordQueryV1Response.cs
  class GoodLifeFulfilmentCertificateVerifyRecordQueryV1Response (line 6) | public class GoodLifeFulfilmentCertificateVerifyRecordQueryV1Response : ...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class VerifyRecord (line 14) | public class VerifyRecord
            class Types (line 16) | public static class Types
              class Amount (line 18) | public class Amount : GoodLifeFulfilmentCertificateGetV1Resp...
              class SKU (line 22) | public class SKU : GoodLifeFulfilmentCertificateGetV1Respons...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificateVerifyV1Request.cs
  class GoodLifeFulfilmentCertificateVerifyV1Request (line 8) | public class GoodLifeFulfilmentCertificateVerifyV1Request : DouyinOpenRe...
    class Types (line 10) | public static class Types
      class CodeWithTime (line 12) | public class CodeWithTime

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Certificate/GoodLifeFulfilmentCertificateVerifyV1Response.cs
  class GoodLifeFulfilmentCertificateVerifyV1Response (line 6) | public class GoodLifeFulfilmentCertificateVerifyV1Response : DouyinOpenR...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class VerifyResult (line 14) | public class VerifyResult

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Distribution/GoodLifeFulfilmentDistributionOrderSyncStatusV1Request.cs
  class GoodLifeFulfilmentDistributionOrderSyncStatusV1Request (line 6) | public class GoodLifeFulfilmentDistributionOrderSyncStatusV1Request : Do...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/Distribution/GoodLifeFulfilmentDistributionOrderSyncStatusV1Response.cs
  class GoodLifeFulfilmentDistributionOrderSyncStatusV1Response (line 6) | public class GoodLifeFulfilmentDistributionOrderSyncStatusV1Response : D...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/ReserveCode/GoodLifeFulfilmentReserveCodeBatchImportV1Request.cs
  class GoodLifeFulfilmentReserveCodeBatchImportV1Request (line 8) | public class GoodLifeFulfilmentReserveCodeBatchImportV1Request : DouyinO...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/ReserveCode/GoodLifeFulfilmentReserveCodeBatchImportV1Response.cs
  class GoodLifeFulfilmentReserveCodeBatchImportV1Response (line 6) | public class GoodLifeFulfilmentReserveCodeBatchImportV1Response : Douyin...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/ReserveCode/GoodLifeFulfilmentReserveCodeBindOrderInfoV1Request.cs
  class GoodLifeFulfilmentReserveCodeBindOrderInfoV1Request (line 6) | public class GoodLifeFulfilmentReserveCodeBindOrderInfoV1Request : Douyi...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Fulfilment/ReserveCode/GoodLifeFulfilmentReserveCodeBindOrderInfoV1Response.cs
  class GoodLifeFulfilmentReserveCodeBindOrderInfoV1Response (line 6) | public class GoodLifeFulfilmentReserveCodeBindOrderInfoV1Response : Douy...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Order (line 14) | public class Order
            class Types (line 16) | public static class Types
              class Amount (line 18) | public class Amount
              class Tourist (line 63) | public class Tourist

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Calendar/GoodLifeGoodsCalendarAmountGroupSaveV1Request.cs
  class GoodLifeGoodsCalendarAmountGroupSaveV1Request (line 8) | public class GoodLifeGoodsCalendarAmountGroupSaveV1Request : DouyinOpenR...
    class Types (line 10) | public static class Types
      class CalendarAmountGroup (line 12) | public class CalendarAmountGroup
      class CalendarAmount (line 36) | public class CalendarAmount
        class Types (line 38) | public static class Types
          class Value (line 40) | public class Value : GoodLifeGoodsCalendarStaticAttributeGroupSa...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Calendar/GoodLifeGoodsCalendarAmountGroupSaveV1Response.cs
  class GoodLifeGoodsCalendarAmountGroupSaveV1Response (line 6) | public class GoodLifeGoodsCalendarAmountGroupSaveV1Response : DouyinOpen...
    class Types (line 8) | public static class Types
      class BaseResponse (line 10) | public class BaseResponse : GoodLifeGoodsCalendarStaticAttributeGrou...
      class Data (line 14) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 26) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Calendar/GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Request.cs
  class GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Request (line 8) | public class GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Request : Do...
    class Types (line 10) | public static class Types
      class CalendarStaticAttributeGroup (line 12) | public class CalendarStaticAttributeGroup
      class CalendarStaticAttribute (line 36) | public class CalendarStaticAttribute
        class Types (line 38) | public static class Types
          class Value (line 40) | public class Value

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Calendar/GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Response.cs
  class GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Response (line 6) | public class GoodLifeGoodsCalendarStaticAttributeGroupSaveV1Response : D...
    class Types (line 8) | public static class Types
      class BaseResponse (line 10) | public class BaseResponse
      class Data (line 28) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 40) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Calendar/GoodLifeGoodsCalendarStockGroupSaveV1Request.cs
  class GoodLifeGoodsCalendarStockGroupSaveV1Request (line 8) | public class GoodLifeGoodsCalendarStockGroupSaveV1Request : DouyinOpenRe...
    class Types (line 10) | public static class Types
      class CalendarStockGroup (line 12) | public class CalendarStockGroup
      class CalendarStock (line 36) | public class CalendarStock
        class Types (line 38) | public static class Types
          class Value (line 40) | public class Value : GoodLifeGoodsCalendarStaticAttributeGroupSa...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Calendar/GoodLifeGoodsCalendarStockGroupSaveV1Response.cs
  class GoodLifeGoodsCalendarStockGroupSaveV1Response (line 6) | public class GoodLifeGoodsCalendarStockGroupSaveV1Response : DouyinOpenR...
    class Types (line 8) | public static class Types
      class BaseResponse (line 10) | public class BaseResponse : GoodLifeGoodsCalendarStaticAttributeGrou...
      class Data (line 14) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 26) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Category/GoodLifeGoodsCategoryGetV1Request.cs
  class GoodLifeGoodsCategoryGetV1Request (line 6) | public class GoodLifeGoodsCategoryGetV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Category/GoodLifeGoodsCategoryGetV1Response.cs
  class GoodLifeGoodsCategoryGetV1Response (line 6) | public class GoodLifeGoodsCategoryGetV1Response : DouyinOpenResponse<Goo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Category (line 14) | public class Category
          class CategoryTreeItem (line 62) | public class CategoryTreeItem : Category

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductDraftGetV1Request.cs
  class GoodLifeGoodsProductDraftGetV1Request (line 8) | public class GoodLifeGoodsProductDraftGetV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductDraftGetV1Response.cs
  class GoodLifeGoodsProductDraftGetV1Response (line 8) | public class GoodLifeGoodsProductDraftGetV1Response : DouyinOpenResponse...
    class Types (line 10) | public static class Types
      class Data (line 12) | public class Data : DouyinOpenResponseData
        class Types (line 14) | public static class Types
          class ProductDraft (line 16) | public class ProductDraft
            class Types (line 18) | public static class Types
              class Product (line 20) | public class Product
                class Types (line 22) | public static class Types
                  class POI (line 24) | public class POI : GoodLifeGoodsProductDraftQueryV1Respo...
              class SKU (line 137) | public class SKU
                class Types (line 139) | public static class Types
                  class Stock (line 141) | public class Stock : GoodLifeGoodsProductDraftQueryV1Res...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductDraftQueryV1Request.cs
  class GoodLifeGoodsProductDraftQueryV1Request (line 6) | public class GoodLifeGoodsProductDraftQueryV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductDraftQueryV1Response.cs
  class GoodLifeGoodsProductDraftQueryV1Response (line 8) | public class GoodLifeGoodsProductDraftQueryV1Response : DouyinOpenRespon...
    class Types (line 10) | public static class Types
      class Data (line 12) | public class Data : DouyinOpenResponseData
        class Types (line 14) | public static class Types
          class ProductDraft (line 16) | public class ProductDraft
            class Types (line 18) | public static class Types
              class Product (line 20) | public class Product
                class Types (line 22) | public static class Types
                  class POI (line 24) | public class POI
              class SKU (line 160) | public class SKU
                class Types (line 162) | public static class Types
                  class Stock (line 164) | public class Stock : GoodLifeGoodsStockSyncV1Request.Typ...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductFreeAuditV1Request.cs
  class GoodLifeGoodsProductFreeAuditV1Request (line 6) | public class GoodLifeGoodsProductFreeAuditV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductFreeAuditV1Response.cs
  class GoodLifeGoodsProductFreeAuditV1Response (line 6) | public class GoodLifeGoodsProductFreeAuditV1Response : DouyinOpenRespons...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductOnlineGetV1Request.cs
  class GoodLifeGoodsProductOnlineGetV1Request (line 8) | public class GoodLifeGoodsProductOnlineGetV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductOnlineGetV1Response.cs
  class GoodLifeGoodsProductOnlineGetV1Response (line 8) | public class GoodLifeGoodsProductOnlineGetV1Response : DouyinOpenRespons...
    class Types (line 10) | public static class Types
      class Data (line 12) | public class Data : DouyinOpenResponseData
        class Types (line 14) | public static class Types
          class ProductInfo (line 16) | public class ProductInfo
            class Types (line 18) | public static class Types
              class Product (line 20) | public class Product
                class Types (line 22) | public static class Types
                  class POI (line 24) | public class POI : GoodLifeGoodsProductOnlineQueryV1Resp...
              class SKU (line 151) | public class SKU
                class Types (line 153) | public static class Types
                  class Stock (line 155) | public class Stock : GoodLifeGoodsProductOnlineQueryV1Re...
              class Commission (line 231) | public class Commission : GoodLifeGoodsProductOnlineQueryV1R...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductOnlineQueryV1Request.cs
  class GoodLifeGoodsProductOnlineQueryV1Request (line 6) | public class GoodLifeGoodsProductOnlineQueryV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductOnlineQueryV1Response.cs
  class GoodLifeGoodsProductOnlineQueryV1Response (line 8) | public class GoodLifeGoodsProductOnlineQueryV1Response : DouyinOpenRespo...
    class Types (line 10) | public static class Types
      class Data (line 12) | public class Data : DouyinOpenResponseData
        class Types (line 14) | public static class Types
          class ProductInfo (line 16) | public class ProductInfo
            class Types (line 18) | public static class Types
              class Product (line 20) | public class Product
                class Types (line 22) | public static class Types
                  class POI (line 24) | public class POI : GoodLifeGoodsProductDraftQueryV1Respo...
              class SKU (line 151) | public class SKU
                class Types (line 153) | public static class Types
                  class Stock (line 155) | public class Stock : GoodLifeGoodsProductDraftQueryV1Res...
              class Commission (line 231) | public class Commission

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductOperateV1Request.cs
  class GoodLifeGoodsProductOperateV1Request (line 6) | public class GoodLifeGoodsProductOperateV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductOperateV1Response.cs
  class GoodLifeGoodsProductOperateV1Response (line 6) | public class GoodLifeGoodsProductOperateV1Response : DouyinOpenResponse<...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductSaveV1Request.cs
  class GoodLifeGoodsProductSaveV1Request (line 8) | public class GoodLifeGoodsProductSaveV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class Product (line 12) | public class Product
        class Types (line 14) | public static class Types
          class POI (line 16) | public class POI
      class SKU (line 126) | public class SKU
        class Types (line 128) | public static class Types
          class Stock (line 130) | public class Stock : GoodLifeGoodsStockSyncV1Request.Types.Stock

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Product/GoodLifeGoodsProductSaveV1Response.cs
  class GoodLifeGoodsProductSaveV1Response (line 6) | public class GoodLifeGoodsProductSaveV1Response : DouyinOpenResponse<Goo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/SKU/GoodLifeGoodsSKUBatchSaveV1Request.cs
  class GoodLifeGoodsSKUBatchSaveV1Request (line 8) | public class GoodLifeGoodsSKUBatchSaveV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class SKU (line 12) | public class SKU
        class Types (line 14) | public static class Types
          class Stock (line 16) | public class Stock : GoodLifeGoodsProductSaveV1Request.Types.SKU...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/SKU/GoodLifeGoodsSKUBatchSaveV1Response.cs
  class GoodLifeGoodsSKUBatchSaveV1Response (line 6) | public class GoodLifeGoodsSKUBatchSaveV1Response : DouyinOpenResponse<Go...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/SPU/GoodLifeGoodsSPUSaveV1Request.cs
  class GoodLifeGoodsSPUSaveV1Request (line 8) | public class GoodLifeGoodsSPUSaveV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class SPU (line 12) | public class SPU
        class Types (line 14) | public static class Types
          class POI (line 16) | public class POI

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/SPU/GoodLifeGoodsSPUSaveV1Response.cs
  class GoodLifeGoodsSPUSaveV1Response (line 6) | public class GoodLifeGoodsSPUSaveV1Response : DouyinOpenResponse<GoodLif...
    class Types (line 8) | public static class Types
      class BaseResponse (line 10) | public class BaseResponse : GoodLifeGoodsCalendarStaticAttributeGrou...
      class Data (line 14) | public class Data : DouyinOpenResponseData
    method IsSuccessful (line 32) | public override bool IsSuccessful()

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Stock/GoodLifeGoodsStockSyncV1Request.cs
  class GoodLifeGoodsStockSyncV1Request (line 6) | public class GoodLifeGoodsStockSyncV1Request : DouyinOpenRequest
    class Types (line 8) | public static class Types
      class Stock (line 10) | public class Stock

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Stock/GoodLifeGoodsStockSyncV1Response.cs
  class GoodLifeGoodsStockSyncV1Response (line 6) | public class GoodLifeGoodsStockSyncV1Response : DouyinOpenResponse<GoodL...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Template/GoodLifeGoodsTemplateGetV1Request.cs
  class GoodLifeGoodsTemplateGetV1Request (line 6) | public class GoodLifeGoodsTemplateGetV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Goods/Template/GoodLifeGoodsTemplateGetV1Response.cs
  class GoodLifeGoodsTemplateGetV1Response (line 6) | public class GoodLifeGoodsTemplateGetV1Response : DouyinOpenResponse<Goo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Attribute (line 14) | public class Attribute

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Member/GoodLifeMemberUnionIdGetV1Request.cs
  class GoodLifeMemberUnionIdGetV1Request (line 8) | public class GoodLifeMemberUnionIdGetV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class Member (line 12) | public class Member

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Member/GoodLifeMemberUnionIdGetV1Response.cs
  class GoodLifeMemberUnionIdGetV1Response (line 6) | public class GoodLifeMemberUnionIdGetV1Response : DouyinOpenResponse<Goo...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Member (line 14) | public class Member

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Member/GoodLifeMemberUserUpdateV1Request.cs
  class GoodLifeMemberUserUpdateV1Request (line 8) | public class GoodLifeMemberUserUpdateV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class Member (line 12) | public class Member

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Member/GoodLifeMemberUserUpdateV1Response.cs
  class GoodLifeMemberUserUpdateV1Response (line 6) | public class GoodLifeMemberUserUpdateV1Response : DouyinOpenResponse

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/Crowd/GoodLifePOICrowdSaveV1Request.cs
  class GoodLifePOICrowdSaveV1Request (line 8) | public class GoodLifePOICrowdSaveV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class Crowd (line 12) | public class Crowd
        class Types (line 14) | public static class Types
          class Condition (line 16) | public class Condition

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/Crowd/GoodLifePOICrowdSaveV1Response.cs
  class GoodLifePOICrowdSaveV1Response (line 6) | public class GoodLifePOICrowdSaveV1Response : DouyinOpenResponse<GoodLif...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIClaimV1Request.cs
  class GoodLifePOIClaimV1Request (line 8) | public class GoodLifePOIClaimV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class POI (line 12) | public class POI
        class Types (line 14) | public static class Types
          class BusinessLicense (line 16) | public class BusinessLicense : GoodLifePOISyncV1Request.Types.PO...
          class LegalPerson (line 20) | public class LegalPerson : GoodLifePOISyncV1Request.Types.POI.Ty...
          class Industry (line 24) | public class Industry
            class Types (line 26) | public static class Types
              class Qualification (line 28) | public class Qualification : GoodLifePOISyncV1Request.Types....
          class Owner (line 55) | public class Owner : GoodLifePOISyncV1Request.Types.POI.Types.Owner

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIClaimV1Response.cs
  class GoodLifePOIClaimV1Response (line 6) | public class GoodLifePOIClaimV1Response : DouyinOpenResponse<GoodLifePOI...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Task (line 14) | public class Task : GoodLifePOISyncV1Response.Types.Data.Types.Task

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIDecorateV1Request.cs
  class GoodLifePOIDecorateV1Request (line 8) | public class GoodLifePOIDecorateV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class POI (line 12) | public class POI
        class Types (line 14) | public static class Types
          class Decoration (line 16) | public class Decoration
            class Types (line 18) | public static class Types
              class Image (line 20) | public class Image
              class RecommendList (line 37) | public class RecommendList
              class RecommendItem (line 54) | public class RecommendItem
              class Announcement (line 78) | public class Announcement

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIDecorateV1Response.cs
  class GoodLifePOIDecorateV1Response (line 6) | public class GoodLifePOIDecorateV1Response : DouyinOpenResponse<GoodLife...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Task (line 14) | public class Task : GoodLifePOIUpdateV1Response.Types.Data.Types...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIMatchRelationQueryV1Request.cs
  class GoodLifePOIMatchRelationQueryV1Request (line 8) | public class GoodLifePOIMatchRelationQueryV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIMatchRelationQueryV1Response.cs
  class GoodLifePOIMatchRelationQueryV1Response (line 6) | public class GoodLifePOIMatchRelationQueryV1Response : DouyinOpenRespons...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Relation (line 14) | public class Relation

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIMatchTaskQueryV1Request.cs
  class GoodLifePOIMatchTaskQueryV1Request (line 6) | public class GoodLifePOIMatchTaskQueryV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIMatchTaskQueryV1Response.cs
  class GoodLifePOIMatchTaskQueryV1Response (line 6) | public class GoodLifePOIMatchTaskQueryV1Response : DouyinOpenResponse<Go...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class MatchResult (line 14) | public class MatchResult

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIMatchTaskSubmitV1Request.cs
  class GoodLifePOIMatchTaskSubmitV1Request (line 8) | public class GoodLifePOIMatchTaskSubmitV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class POI (line 12) | public class POI

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIMatchTaskSubmitV1Response.cs
  class GoodLifePOIMatchTaskSubmitV1Response (line 6) | public class GoodLifePOIMatchTaskSubmitV1Response : DouyinOpenResponse<G...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOISyncV1Request.cs
  class GoodLifePOISyncV1Request (line 8) | public class GoodLifePOISyncV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class POI (line 12) | public class POI
        class Types (line 14) | public static class Types
          class BusinessPartnership (line 16) | public class BusinessPartnership
            class Types (line 18) | public static class Types
              class Authorization (line 20) | public class Authorization
          class POIClaimAuthorization (line 74) | public class POIClaimAuthorization
          class BusinessLicense (line 91) | public class BusinessLicense
          class LegalPerson (line 157) | public class LegalPerson
          class Industry (line 202) | public class Industry
            class Types (line 204) | public static class Types
              class Qualification (line 206) | public class Qualification
          class Owner (line 260) | public class Owner

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOISyncV1Response.cs
  class GoodLifePOISyncV1Response (line 6) | public class GoodLifePOISyncV1Response : DouyinOpenResponse<GoodLifePOIS...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Task (line 14) | public class Task

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOITaskQueryV1Request.cs
  class GoodLifePOITaskQueryV1Request (line 8) | public class GoodLifePOITaskQueryV1Request : DouyinOpenRequest

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOITaskQueryV1Response.cs
  class GoodLifePOITaskQueryV1Response (line 6) | public class GoodLifePOITaskQueryV1Response : DouyinOpenResponse<GoodLif...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class TaskResult (line 14) | public class TaskResult
            class Types (line 16) | public static class Types
              class BusinessPartnershipResult (line 18) | public class BusinessPartnershipResult
              class TrademarkResult (line 43) | public class TrademarkResult
              class POIResult (line 67) | public class POIResult
                class Types (line 69) | public static class Types
                  class AuditResult (line 71) | public class AuditResult

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIUpdateV1Request.cs
  class GoodLifePOIUpdateV1Request (line 8) | public class GoodLifePOIUpdateV1Request : DouyinOpenRequest
    class Types (line 10) | public static class Types
      class POI (line 12) | public class POI
        class Types (line 14) | public static class Types
          class POIInfo (line 16) | public class POIInfo
          class Service (line 89) | public class Service
            class Types (line 91) | public static class Types
              class Entry (line 93) | public class Entry
                class Types (line 95) | public static class Types
                  class EntryMiniApp (line 97) | public class EntryMiniApp : POISupplierSyncRequest.Types...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/POI/GoodLifePOIUpdateV1Response.cs
  class GoodLifePOIUpdateV1Response (line 6) | public class GoodLifePOIUpdateV1Response : DouyinOpenResponse<GoodLifePO...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class Task (line 14) | public class Task

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Partner/Commission/GoodLifePartnerCommissionRecordGetV1Request.cs
  class GoodLifePartnerCommissionRecordGetV1Request (line 6) | public class GoodLifePartnerCommissionRecordGetV1Request : DouyinOpenReq...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Partner/Commission/GoodLifePartnerCommissionRecordGetV1Response.cs
  class GoodLifePartnerCommissionRecordGetV1Response (line 6) | public class GoodLifePartnerCommissionRecordGetV1Response : DouyinOpenRe...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class CommissionRecordItem (line 14) | public class CommissionRecordItem

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Partner/Commission/GoodLifePartnerCommissionRecordQueryV1Request.cs
  class GoodLifePartnerCommissionRecordQueryV1Request (line 6) | public class GoodLifePartnerCommissionRecordQueryV1Request : DouyinOpenR...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Partner/Commission/GoodLifePartnerCommissionRecordQueryV1Response.cs
  class GoodLifePartnerCommissionRecordQueryV1Response (line 6) | public class GoodLifePartnerCommissionRecordQueryV1Response : DouyinOpen...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class CommissionRecord (line 14) | public class CommissionRecord

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Partner/Commission/GoodLifePartnerProductCommissionQueryV1Request.cs
  class GoodLifePartnerProductCommissionQueryV1Request (line 6) | public class GoodLifePartnerProductCommissionQueryV1Request : DouyinOpen...

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Partner/Commission/GoodLifePartnerProductCommissionQueryV1Response.cs
  class GoodLifePartnerProductCommissionQueryV1Response (line 6) | public class GoodLifePartnerProductCommissionQueryV1Response : DouyinOpe...
    class Types (line 8) | public static class Types
      class Data (line 10) | public class Data : DouyinOpenResponseData
        class Types (line 12) | public static class Types
          class ProductCommission (line 14) | public class ProductCommission
            class Types (line 16) | public static class Types
              class Product (line 18) | public class Product
              class CommissionRecordItem (line 65) | public class CommissionRecordItem

FILE: src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/GoodLife/Partner/Commission/GoodLifePartnerProductCommissionSaveV1Request.cs
  class GoodLifePartnerProductCommissionSaveV1Request (line 8) | public class GoodLifePartnerProductCommissionSaveV1Request : DouyinOpenR...
    class Types (line 10) | public static class T
Copy disabled (too large) Download .json
Condensed preview — 4644 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (10,408K chars).
[
  {
    "path": ".editorconfig",
    "chars": 259,
    "preview": "root = true\n\n[*]\ncharset = utf-8\nend_of_line = crlf\nindent_size = 4\nindent_style = space\ntab_width = 4\ntrim_trailing_whi"
  },
  {
    "path": ".gitee/ISSUE_TEMPLATE.zh-CN.md",
    "chars": 709,
    "preview": "> **⚠⚠ 请注意:不符合格式要求的 Issue 可能会被直接关闭。**\n\n---\n\n**问题类型**\n\n请在此选择你的问题类型:\n\n-   [ ] 报告缺陷:发现源代码中的漏洞、运行发生的异常、或文档里的错误。\n-   [ ] 请求新功"
  },
  {
    "path": ".gitee/PULL_REQUEST_TEMPLATE.zh-CN.md",
    "chars": 735,
    "preview": "> **⚠⚠ 请注意:不符合格式要求的 PR 可能会被直接关闭。**\n\n---\n\n感谢您对 SKIT.FlurlHttpClient.ByteDance 项目的贡献。\n\n在提交此 PR 之前,请确保:\n\n-   [ ] 检查新的代码是否遵循"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/1_bug_report.md",
    "chars": 624,
    "preview": "---\nname: 报告缺陷\nabout: 发现源代码中的漏洞、运行发生的异常、或文档里的错误。\ntitle: '[BUG] 请一句话描述此缺陷'\nlabels: bug\nassignees: ''\n---\n\n> **⚠⚠ 请注意:不符合格"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/2_feature_request.md",
    "chars": 267,
    "preview": "---\nname: 请求新功能\nabout: 需要某些新功能,或对现有实现提出更好的建议。\ntitle: '[FEATURE] 请一句话描述此建议'\nlabels: enhancement\nassignees: ''\n---\n\n> **⚠⚠"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/3_custom.md",
    "chars": 100,
    "preview": "---\nname: 其他类型 Issue\nabout: 遇到了问题,需要帮助。\ntitle: ''\nlabels: question\nassignees: ''\n---\n\n请简要描述你所遇到的问题。\n"
  },
  {
    "path": ".github/PULL_REQUEST_TEMPLATE/1_bugfix.md",
    "chars": 664,
    "preview": "---\nname: 修复缺陷\nabout: 修复源代码中的漏洞、运行发生的异常、或文档里的错误。\ntitle: '[BUGFIX] 请一句话描述此 PR 修复的缺陷'\nlabels: bug\nassignees: ''\n---\n\n> **⚠"
  },
  {
    "path": ".github/PULL_REQUEST_TEMPLATE/2_enhancement.md",
    "chars": 744,
    "preview": "---\nname: 增强或优化\nabout: 增加某些新功能,或对现有实现做出更好的优化。\ntitle: '[ENHANCEMENT] 请一句话描述此 PR 提供的内容'\nlabels: enhancement\nassignees: ''\n"
  },
  {
    "path": ".github/workflows/codeql-analysis.yml",
    "chars": 811,
    "preview": "# For more information, see:\n# https://github.com/github/codeql\nname: CodeQL\n\non:\n  push:\n    branches: [main]\n  pull_re"
  },
  {
    "path": ".github/workflows/super-linter.yml",
    "chars": 540,
    "preview": "# For more information, see:\n# https://github.com/github/super-linter\nname: CodeLint\n\non:\n  push:\n    branches: [ main ]"
  },
  {
    "path": ".gitignore",
    "chars": 2852,
    "preview": "## Ignore Visual Studio temporary files, build results, and\n## files generated by popular Visual Studio add-ons.\n\n# User"
  },
  {
    "path": "CHANGELOG.md",
    "chars": 9951,
    "preview": "# CHANGELOG\n\n### 版本说明\n\n各 SDK 的版本号将遵循语义化版本规则。\n\n在更新日志中会包含以下几种名词:\n\n1.  “**新增**”:\n    -   追加了新功能;\n    -   一般不会产生破坏性更新。\n2.  “"
  },
  {
    "path": "CONTRIBUTING.md",
    "chars": 3984,
    "preview": "# CONTRIBUTING\n\n在你参与贡献本项目之前,请先阅读如下指南:\n\n-   [如何提问?](#question)\n\n-   [如何报告缺陷?](#bug-report)\n\n-   [如何提出功能建议?](#feature-req"
  },
  {
    "path": "LICENSE",
    "chars": 1062,
    "preview": "MIT License\n\nCopyright (c) 2021 RHQYZ\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof t"
  },
  {
    "path": "README.md",
    "chars": 5988,
    "preview": "# SKIT.FlurlHttpClient.ByteDance\n\n[![Gitee Stars](https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance/b"
  },
  {
    "path": "SKIT.FlurlHttpClient.ByteDance.slnx",
    "chars": 1409,
    "preview": "<Solution>\n  <Folder Name=\"/src/\">\n    <Project Path=\"src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/SKIT.FlurlHttpClient"
  },
  {
    "path": "docs/DouyinOpen/Advanced_Dispose.md",
    "chars": 279,
    "preview": "## 避免内存泄漏\n\n---\n\n本功能来自于公共组件,请参阅公共组件下的相关文档:\n\n> [《SKIT.FlurlHttpClient 高级用法:避免内存泄漏》](https://github.com/fudiwei/DotNetCore"
  },
  {
    "path": "docs/DouyinOpen/Advanced_HttpClient.md",
    "chars": 293,
    "preview": "## 配置 HttpClient\n\n---\n\n本功能来自于公共组件,请参阅公共组件下的相关文档:\n\n> [《SKIT.FlurlHttpClient 高级用法:配置 HttpClient》](https://github.com/fudi"
  },
  {
    "path": "docs/DouyinOpen/Advanced_HttpClientFactory.md",
    "chars": 313,
    "preview": "## 与 `IHttpClientFactory` 集成\n\n---\n\n本功能来自于公共组件,请参阅公共组件下的相关文档:\n\n> [《SKIT.FlurlHttpClient 最佳实践:与 `IHttpClientFactory` 集成》]"
  },
  {
    "path": "docs/DouyinOpen/Advanced_Interceptor.md",
    "chars": 323,
    "preview": "## 使用拦截器\n\n---\n\n本功能来自于公共组件,请参阅公共组件下的相关文档:\n\n> [《SKIT.FlurlHttpClient 高级用法:使用拦截器》](https://github.com/fudiwei/DotNetCore.S"
  },
  {
    "path": "docs/DouyinOpen/Advanced_JsonSerializer.md",
    "chars": 291,
    "preview": "## 配置 JSON 序列化器\n\n---\n\n本功能来自于公共组件,请参阅公共组件下的相关文档:\n\n> [《SKIT.FlurlHttpClient 高级用法:配置 JSON 序列化器》](https://github.com/fudiwe"
  },
  {
    "path": "docs/DouyinOpen/Basic_EventDeserialization.md",
    "chars": 722,
    "preview": "## 如何解析 Webhook 事件?\n\n---\n\n对于抖音开放平台推送过来的 Webhook 事件,本库封装了直接解析成事件模型的扩展方法,下面给出一个示例:\n\n```csharp\n/* 以 authorize 事件为例 */\nstri"
  },
  {
    "path": "docs/DouyinOpen/Basic_EventSignatureVerification.md",
    "chars": 367,
    "preview": "## 如何验证 Webhook 事件签名?\n\n---\n\n> 请先自行阅读:\n>\n> [《抖音开放平台开发文档 - Webhooks:概述》](https://open.douyin.com/platform/doc/68504525828"
  },
  {
    "path": "docs/DouyinOpen/Basic_Extensions.md",
    "chars": 1934,
    "preview": "## 如何自定义额外的 API 接口?\n\n---\n\n如果有某些接口本库尚未支持,你可按照下面的示例自行扩展:\n\n```csharp\n/* 继承 DouyinOpenRequest 实现自定义请求类 */\npublic class MyFa"
  },
  {
    "path": "docs/DouyinOpen/Basic_GoodLifeSPIDecryption.md",
    "chars": 370,
    "preview": "## 如何解密抖音生活服务 SPI 接口中的加密字段?\n\n---\n\n> 请先自行阅读:\n>\n> [《抖音开放平台开发文档 - 生活服务开放能力 - 接入前准备:加密字段解密方法》](https://partner.open-douyin."
  },
  {
    "path": "docs/DouyinOpen/Basic_MobileNumberDecryption.md",
    "chars": 300,
    "preview": "## 如何解密用户公开信息中的手机号码?\n\n---\n\n> 请先自行阅读:\n>\n> [《抖音开放平台开发文档 - 用户管理:手机号解密代码示例》](https://open.douyin.com/platform/doc/694343991"
  },
  {
    "path": "docs/DouyinOpen/Basic_ModelDefinition.md",
    "chars": 1743,
    "preview": "## 如何快速找到需要调用的 API 模型类名 / 方法名?\n\n---\n\n本库提供的请求模型、响应模型和接口方法,三者均保持同名。\n\n例如,获取粉丝列表的请求是 `FansListRequest`,响应是 `FansListRespons"
  },
  {
    "path": "docs/DouyinOpen/Basic_Parameters.md",
    "chars": 701,
    "preview": "## 如何生成 JSBridge 初始化时所需的参数及签名?\n\n---\n\n> 请先自行阅读:\n>\n> [《抖音开放平台开发文档 - 授权:JS 验证签名》](https://open.douyin.com/platform/doc/685"
  },
  {
    "path": "docs/DouyinOpen/Migration_V3.md",
    "chars": 3857,
    "preview": "## v3.x 迁移指南\n\nv3.x 版本是一个主要版本,其中包括了一些破坏性的变化。从 v2.x 升级到 v3.x 之前,请仔细阅读本文档。\n\n---\n\n### 目标框架和基础库的变更\n\n微软官方已于 2022 年 4 月 26 日宣布"
  },
  {
    "path": "docs/DouyinOpen/README.md",
    "chars": 2294,
    "preview": "# SKIT.FlurlHttpClient.ByteDance.DouyinOpen\n\n基于 `Flurl.Http` 的[抖音开放平台](https://open.douyin.com/platform) HTTP API SDK。\n"
  },
  {
    "path": "docs/DouyinShop/README.md",
    "chars": 267,
    "preview": "# SKIT.FlurlHttpClient.ByteDance.DouyinShop\n\n基于 `Flurl.Http` 的[抖店开放平台](https://op.jinritemai.com/) HTTP API SDK。\n\n---\n\n"
  },
  {
    "path": "docs/MicroApp/Advanced_Dispose.md",
    "chars": 279,
    "preview": "## 避免内存泄漏\n\n---\n\n本功能来自于公共组件,请参阅公共组件下的相关文档:\n\n> [《SKIT.FlurlHttpClient 高级用法:避免内存泄漏》](https://github.com/fudiwei/DotNetCore"
  },
  {
    "path": "docs/MicroApp/Advanced_HttpClient.md",
    "chars": 293,
    "preview": "## 配置 HttpClient\n\n---\n\n本功能来自于公共组件,请参阅公共组件下的相关文档:\n\n> [《SKIT.FlurlHttpClient 高级用法:配置 HttpClient》](https://github.com/fudi"
  },
  {
    "path": "docs/MicroApp/Advanced_HttpClientFactory.md",
    "chars": 313,
    "preview": "## 与 `IHttpClientFactory` 集成\n\n---\n\n本功能来自于公共组件,请参阅公共组件下的相关文档:\n\n> [《SKIT.FlurlHttpClient 最佳实践:与 `IHttpClientFactory` 集成》]"
  },
  {
    "path": "docs/MicroApp/Advanced_Interceptor.md",
    "chars": 323,
    "preview": "## 使用拦截器\n\n---\n\n本功能来自于公共组件,请参阅公共组件下的相关文档:\n\n> [《SKIT.FlurlHttpClient 高级用法:使用拦截器》](https://github.com/fudiwei/DotNetCore.S"
  },
  {
    "path": "docs/MicroApp/Advanced_JsonSerializer.md",
    "chars": 291,
    "preview": "## 配置 JSON 序列化器\n\n---\n\n本功能来自于公共组件,请参阅公共组件下的相关文档:\n\n> [《SKIT.FlurlHttpClient 高级用法:配置 JSON 序列化器》](https://github.com/fudiwe"
  },
  {
    "path": "docs/MicroApp/Basic_EventDeserialization.md",
    "chars": 1209,
    "preview": "## 如何解析回调通知事件?\n\n---\n\n对于抖音小程序推送过来的回调通知事件,本库封装了直接解析成事件模型的扩展方法,下面给出一个示例:\n\n```csharp\n/* 如果是 JSON 格式的通知内容,以 text 事件为例 */\nstr"
  },
  {
    "path": "docs/MicroApp/Basic_EventSignatureVerification.md",
    "chars": 671,
    "preview": "## 如何验证回调通知事件签名?\n\n---\n\n> 请先自行阅读:\n>\n> [《抖音小程序文档 - 消息推送客服:验证消息来自今日头条》](https://microapp.bytedance.com/docs/zh-CN/mini-app"
  },
  {
    "path": "docs/MicroApp/Basic_Extensions.md",
    "chars": 1915,
    "preview": "## 如何自定义额外的 API 接口?\n\n---\n\n如果有某些接口本库尚未支持,你可按照下面的示例自行扩展:\n\n```csharp\n/* 继承 DouyinMicroAppRequest 实现自定义请求类 */\npublic class "
  },
  {
    "path": "docs/MicroApp/Basic_ModelDefinition.md",
    "chars": 5982,
    "preview": "## 如何快速找到需要调用的 API 模型类名 / 方法名?\n\n---\n\n本库提供的请求模型、响应模型和接口方法,三者均保持同名。\n\n例如,发送订阅消息的请求是 `AppsMessageCustomSendRequest`,响应是 `Ap"
  },
  {
    "path": "docs/MicroApp/Migration_V3.md",
    "chars": 4919,
    "preview": "## v3.x 迁移指南\n\nv3.x 版本是一个主要版本,其中包括了一些破坏性的变化。从 v2.x 升级到 v3.x 之前,请仔细阅读本文档。\n\n---\n\n### 目标框架和基础库的变更\n\n微软官方已于 2022 年 4 月 26 日宣布"
  },
  {
    "path": "docs/MicroApp/README.md",
    "chars": 3809,
    "preview": "# SKIT.FlurlHttpClient.ByteDance.MicroApp\n\n基于 `Flurl.Http` 的[抖音小程序开放平台](https://microapp.bytedance.com/) HTTP API SDK。\n"
  },
  {
    "path": "docs/TikTokGlobal/Basic_ModelDefinition.md",
    "chars": 2222,
    "preview": "## API Reference Manual\n\nNaming Policies:\n\n-   Request Models: _`${API}`_ + `Request`\n-   Response Models: _`${API}`_ +"
  },
  {
    "path": "docs/TikTokGlobal/README.md",
    "chars": 1580,
    "preview": "# SKIT.FlurlHttpClient.ByteDance.TikTokGlobal\n\nA HTTP API SDK for [TikTok Developer API](https://developers.tiktok.com/"
  },
  {
    "path": "docs/TikTokGlobalShop/Basic_LegacyAPI.md",
    "chars": 5365,
    "preview": "## Legacy API (pre-v202309)\n\nLegacy API versions (pre-v202309) will no longer be supported or maintained from 2024-06-3"
  },
  {
    "path": "docs/TikTokGlobalShop/Basic_ModelDefinition.md",
    "chars": 8383,
    "preview": "## API Reference Manual\n\nNaming Policies:\n\n-   Request Models: _`${API}`_ + `Request`\n-   Response Models: _`${API}`_ +"
  },
  {
    "path": "docs/TikTokGlobalShop/README.md",
    "chars": 1754,
    "preview": "# SKIT.FlurlHttpClient.ByteDance.TikTokGlobal\n\nA HTTP API SDK for [TikTok Shop Open Platform](https://partner.tiktoksho"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenClient.cs",
    "chars": 5695,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenClientBuilder.cs",
    "chars": 3240,
    "preview": "using System;\nusing System.Collections.Generic;\nusing System.Net.Http;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinO"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenClientOptions.cs",
    "chars": 1010,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen\n{\n    /// <summary>\n    /// 一个用于构造 <see cref=\"DouyinOpenClient\"/> 时使"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenEndpoints.cs",
    "chars": 442,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen\n{\n    /// <summary>\n    /// 抖音开放平台 API 接口域名。\n    /// </summary>\n    "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenEvent.cs",
    "chars": 1880,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen\n{\n    /// <summary>\n    /// 表示抖音开放平台 API Webhook 事件的基类。\n    /// </su"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenException.cs",
    "chars": 584,
    "preview": "using System;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen\n{\n    /// <summary>\n    /// 当调用抖音开放平台 API 出错时引发的异常。\n "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenRequest.cs",
    "chars": 427,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen\n{\n    /// <summary>\n    /// 抖音开放平台 API 请求的基类。\n    /// </summary>\n   "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/DouyinOpenResponse.cs",
    "chars": 5258,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen\n{\n    /// <summary>\n    /// 抖音开放平台 API 响应的基类。\n    /// </summary>\n   "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeMemberJoinEvent.cs",
    "chars": 1795,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 life_member_join 事件的数据。<"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeMemberLeaveEvent.cs",
    "chars": 1095,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 life_member_leave 事件的数据。"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeProductAuditEvent.cs",
    "chars": 1951,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 life_product_audit 事件的数据"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeTradeCertificateNotifyEvent.cs",
    "chars": 3506,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 life_trade_certificate_n"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/GoodLife/LifeTradeOrderNotifyEvent.cs",
    "chars": 5065,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 life_trade_order_notify "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/EnterGroupAuditChangeEvent.cs",
    "chars": 3096,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 enter_group_audit_change"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/GroupFansEventEvent.cs",
    "chars": 3024,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 group_fans_event 事件的数据。<"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMAuthorizeEvent.cs",
    "chars": 3930,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 im_authorize 事件的数据。</par"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMEnterDirectMessageEvent.cs",
    "chars": 9152,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 im_enter_direct_msg 事件的数"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMGroupReceiveMessageEvent.cs",
    "chars": 6466,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 im_group_receive_msg 事件的"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMGroupSendMessageEvent.cs",
    "chars": 792,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 im_group_send_msg 事件的数据。"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMReceiveMessageEvent.cs",
    "chars": 6754,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 im_receive_msg 事件的数据。</p"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/IM/IMSendMessageEvent.cs",
    "chars": 759,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 im_send_msg 事件的数据。</para"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Interaction/NewFollowActionEvent.cs",
    "chars": 1632,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 new_follow_action 事件的数据。"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Interaction/NewVideoDiggEvent.cs",
    "chars": 1913,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 new_video_digg 事件的数据。</p"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/UnionAuth/UnionAuthInfoForBEvent.cs",
    "chars": 2284,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 union_auth_info_for_b 事件"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/UnionAuth/UnionAuthInfoForCEvent.cs",
    "chars": 2423,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 union_auth_info_for_c 事件"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/AuthorizeEvent.cs",
    "chars": 799,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 authorize 事件的数据。</para>\n"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/CreateVideoEvent.cs",
    "chars": 1099,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 create_video 事件的数据。</par"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/DialogPhoneEvent.cs",
    "chars": 364,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 dial_phone 事件的数据。</para>"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/ItemCommentReplyEvent.cs",
    "chars": 3311,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 item_comment_reply 事件的数据"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/PersonalTabContactEvent.cs",
    "chars": 381,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 personal_tab_contact 事件的"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/ReceiveMessageEvent.cs",
    "chars": 4981,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/UnauthorizeEvent.cs",
    "chars": 543,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 unauthorize 事件的数据。</para"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/VerifyWebhookEvent.cs",
    "chars": 932,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 verify_webhook 事件的数据。</p"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Events/Webhook/WebsiteContactEvent.cs",
    "chars": 372,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Events\n{\n    /// <summary>\n    /// <para>表示 website_contact 事件的数据。</"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientDecryptionExtensions.cs",
    "chars": 1399,
    "preview": "using System;\nusing System.Text;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen\n{\n    /// <summary>\n    /// 为 <see"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientEventExtensions.cs",
    "chars": 2776,
    "preview": "using System;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen\n{\n    using SKIT.FlurlHttpClient.Primitives;\n\n    ///"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiAppsAuthExtensions.cs",
    "chars": 1553,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiAppsTradeExtensions.cs",
    "chars": 31593,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinAuthExtensions.cs",
    "chars": 4198,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinIMExtensions.cs",
    "chars": 4960,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinInteractiveExtensions.cs",
    "chars": 2025,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinRoleExtensions.cs",
    "chars": 1532,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinSchemaExtensions.cs",
    "chars": 6842,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinUserExtensions.cs",
    "chars": 1633,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinVideoExtensions.cs",
    "chars": 19064,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiIMExtensions.cs",
    "chars": 1734,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiIndustryExtensions.cs",
    "chars": 7457,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiMatchExtensions.cs",
    "chars": 13897,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteDataExternalExtensions.cs",
    "chars": 84937,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteDevToolExtensions.cs",
    "chars": 1602,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteDiscoveryExtensions.cs",
    "chars": 3246,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteEnterpriseExtensions.cs",
    "chars": 6827,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteEventExtensions.cs",
    "chars": 2755,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteFansExtensions.cs",
    "chars": 1582,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteGoodLifeExtensions.cs",
    "chars": 82488,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteHotSearchExtensions.cs",
    "chars": 4324,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteIMExtensions.cs",
    "chars": 23134,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteImageExtensions.cs",
    "chars": 3374,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteItemExtensions.cs",
    "chars": 6205,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteJSExtensions.cs",
    "chars": 1462,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteMarketServiceExtensions.cs",
    "chars": 6011,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteMessageExtensions.cs",
    "chars": 1578,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteNamekExtensions.cs",
    "chars": 1721,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteOAuthExtensions.cs",
    "chars": 11998,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteOpenExtensions.cs",
    "chars": 1469,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecutePOIExtensions.cs",
    "chars": 54617,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteRoomExtensions.cs",
    "chars": 6069,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteSandboxExtensions.cs",
    "chars": 1559,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteShareIdExtensions.cs",
    "chars": 1820,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteStarExtensions.cs",
    "chars": 4240,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteTaskExtensions.cs",
    "chars": 4127,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteToolExtensions.cs",
    "chars": 2162,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl.Http;\n\nnamespace "
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteVideoExtensions.cs",
    "chars": 13964,
    "preview": "using System;\nusing System.Net.Http;\nusing System.Threading;\nusing System.Threading.Tasks;\nusing Flurl;\nusing Flurl.Http"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientParameterExtensions.cs",
    "chars": 3296,
    "preview": "using System;\nusing System.Collections.Generic;\nusing System.Collections.ObjectModel;\nusing Flurl;\n\nnamespace SKIT.Flurl"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientSPIExtensions.cs",
    "chars": 4088,
    "preview": "using System;\nusing System.Text;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen\n{\n    using SKIT.FlurlHttpClient.P"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsAuth/AppsAuthGetOpenIdByCV1Request.cs",
    "chars": 266,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/v1/auth"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsAuth/AppsAuthGetOpenIdByCV1Response.cs",
    "chars": 268,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/v1/auth"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookCreateBookV2Request.cs",
    "chars": 8315,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookCreateBookV2Response.cs",
    "chars": 2323,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookMerchantCancelBookV2Request.cs",
    "chars": 786,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookMerchantCancelBookV2Response.cs",
    "chars": 466,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookQueryBookV2Request.cs",
    "chars": 737,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookQueryBookV2Response.cs",
    "chars": 9710,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookResultCallbackV2Request.cs",
    "chars": 1245,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookResultCallbackV2Response.cs",
    "chars": 458,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookUserCancelBookV2Request.cs",
    "chars": 1085,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeBookUserCancelBookV2Response.cs",
    "chars": 454,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentDeliveryPrepareV2Request.cs",
    "chars": 827,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentDeliveryPrepareV2Response.cs",
    "chars": 2957,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentDeliveryVerifyV2Request.cs",
    "chars": 3370,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentDeliveryVerifyV2Response.cs",
    "chars": 3055,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentOrderCanUseV2Request.cs",
    "chars": 751,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentOrderCanUseV2Response.cs",
    "chars": 1620,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentPushDeliveryV2Request.cs",
    "chars": 2172,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentPushDeliveryV2Response.cs",
    "chars": 2363,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentQueryUserCertificatesV2Request.cs",
    "chars": 1806,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentQueryUserCertificatesV2Response.cs",
    "chars": 13303,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentVerifyCancelV2Request.cs",
    "chars": 1044,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeFulfillmentVerifyCancelV2Response.cs",
    "chars": 468,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderCloseOrderV2Request.cs",
    "chars": 506,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderCloseOrderV2Response.cs",
    "chars": 260,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderCreateOrderV2Request.cs",
    "chars": 19896,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderCreateOrderV2Response.cs",
    "chars": 4284,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryCPSV2Request.cs",
    "chars": 806,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryCPSV2Response.cs",
    "chars": 16231,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryItemOrderInfoV2Request.cs",
    "chars": 831,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryItemOrderInfoV2Response.cs",
    "chars": 4897,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryOrderV2Request.cs",
    "chars": 810,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeOrderQueryOrderV2Response.cs",
    "chars": 5186,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundCreateRefundV2Request.cs",
    "chars": 4229,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundCreateRefundV2Response.cs",
    "chars": 749,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundMerchantAuditCallbackV2Request.cs",
    "chars": 1060,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundMerchantAuditCallbackV2Response.cs",
    "chars": 481,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundQueryRefundV2Request.cs",
    "chars": 1163,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeRefundQueryRefundV2Response.cs",
    "chars": 7592,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeSettleCreateSettleV2Request.cs",
    "chars": 3083,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeSettleCreateSettleV2Response.cs",
    "chars": 1231,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeSettleQuerySettleV2Request.cs",
    "chars": 1585,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiAppsTrade/AppsTradeSettleQuerySettleV2Response.cs",
    "chars": 4206,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/apps/trade/v"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetOpenIdByBV1Request.cs",
    "chars": 1061,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/au"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetOpenIdByBV1Response.cs",
    "chars": 1737,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/au"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetOpenIdByCV1Request.cs",
    "chars": 1061,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/au"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetOpenIdByCV1Response.cs",
    "chars": 1737,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/au"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetRelatedIdV1Request.cs",
    "chars": 507,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/au"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinAuth/DouyinAuthGetRelatedIdV1Response.cs",
    "chars": 1738,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/au"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMDeleteAppletTemplateV1Request.cs",
    "chars": 489,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/im"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMDeleteAppletTemplateV1Response.cs",
    "chars": 454,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/im"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMGetAppletTemplateV1Request.cs",
    "chars": 1207,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/im"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMGetAppletTemplateV1Response.cs",
    "chars": 5584,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/im"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMSetAppletTemplateV1Request.cs",
    "chars": 1689,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/im"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinIM/DouyinIMSetAppletTemplateV1Response.cs",
    "chars": 765,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/im"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinInteractive/DouyinInteractiveIntentionLogListV1Request.cs",
    "chars": 1556,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [GET] /api/douyin/v1/int"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinInteractive/DouyinInteractiveIntentionLogListV1Response.cs",
    "chars": 3938,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [GET] /api/douyin/v1/int"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinRole/DouyinRoleCheckV1Request.cs",
    "chars": 1097,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinRole/DouyinRoleCheckV1Response.cs",
    "chars": 2057,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetChatV1Request.cs",
    "chars": 1023,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/sc"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetChatV1Response.cs",
    "chars": 1749,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/sc"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetItemInfoV1Request.cs",
    "chars": 1265,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/sc"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetItemInfoV1Response.cs",
    "chars": 1758,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/sc"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetLiveV1Request.cs",
    "chars": 1023,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/sc"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetLiveV1Response.cs",
    "chars": 1749,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/sc"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetShareV1Request.cs",
    "chars": 4320,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetShareV1Response.cs",
    "chars": 1751,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/sc"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetUserProfileV1Request.cs",
    "chars": 1038,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/sc"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinSchema/DouyinSchemaGetUserProfileV1Response.cs",
    "chars": 1764,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/sc"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinUser/DouyinUserFansDataV1Request.cs",
    "chars": 463,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [GET] /api/douyin/v1/use"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinUser/DouyinUserFansDataV1Response.cs",
    "chars": 6207,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [GET] /api/douyin/v1/use"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoBasicInfoV1Request.cs",
    "chars": 1077,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoBasicInfoV1Response.cs",
    "chars": 3249,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/vi"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoCreateVideoV1Request.cs",
    "chars": 8275,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoCreateVideoV1Response.cs",
    "chars": 1024,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/vi"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoDataV1Request.cs",
    "chars": 768,
    "preview": "using System.Collections.Generic;\n\nnamespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    //"
  },
  {
    "path": "src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Models/ApiDouyinVideo/DouyinVideoDataV1Response.cs",
    "chars": 4554,
    "preview": "namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models\n{\n    /// <summary>\n    /// <para>表示 [POST] /api/douyin/v1/vi"
  }
]

// ... and 4444 more files (download for full content)

About this extraction

This page contains the full source code of the fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 4644 files (8.5 MB), approximately 2.6M tokens, and a symbol index with 9141 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!