Thankly SDK for JavaScript
    Preparing search index...

    Interface ThanklyApi

    The subset of API calls widgets need, supplied by whichever package constructed them.

    interface ThanklyApi {
        addCapabilities: (
            experienceId: string,
            capabilities: CapabilityRequest[],
            accessToken: string,
            signal?: AbortSignal,
        ) => Promise<GetExperienceWidgetResponse>;
        fetchExperience: (
            experienceId: string,
            accessToken: string,
            signal?: AbortSignal,
            onUpdate?: (data: GetExperienceWidgetResponse) => void,
        ) => Promise<GetExperienceWidgetResponse>;
        getPresignedUrl: (
            contentType: string,
            purpose?: UploadPurpose,
        ) => Promise<PresignedUrlResponse>;
        hydrateProducts: (
            productIds: string[],
            accessToken: string,
            signal?: AbortSignal,
            purchaseContext?: PurchaseContext,
        ) => Promise<CatalogProduct[]>;
        refineCapability: (
            experienceId: string,
            capabilityId: string,
            refinement: RefinementRequest,
            accessToken: string,
            signal?: AbortSignal,
        ) => Promise<GetExperienceWidgetResponse>;
        uploadFile: (
            presignedResponse: PresignedUrlResponse,
            file: File,
            onProgress?: (percent: number) => void,
            signal?: AbortSignal,
        ) => Promise<void>;
    }
    Index
    addCapabilities: (
        experienceId: string,
        capabilities: CapabilityRequest[],
        accessToken: string,
        signal?: AbortSignal,
    ) => Promise<GetExperienceWidgetResponse>

    Add capabilities to an existing experience.

    fetchExperience: (
        experienceId: string,
        accessToken: string,
        signal?: AbortSignal,
        onUpdate?: (data: GetExperienceWidgetResponse) => void,
    ) => Promise<GetExperienceWidgetResponse>

    Poll an experience until it is ready.

    getPresignedUrl: (
        contentType: string,
        purpose?: UploadPurpose,
    ) => Promise<PresignedUrlResponse>

    Request a short-lived direct-upload target.

    hydrateProducts: (
        productIds: string[],
        accessToken: string,
        signal?: AbortSignal,
        purchaseContext?: PurchaseContext,
    ) => Promise<CatalogProduct[]>

    Expand product ids into full product records.

    refineCapability: (
        experienceId: string,
        capabilityId: string,
        refinement: RefinementRequest,
        accessToken: string,
        signal?: AbortSignal,
    ) => Promise<GetExperienceWidgetResponse>

    Regenerate a capability from user feedback.

    uploadFile: (
        presignedResponse: PresignedUrlResponse,
        file: File,
        onProgress?: (percent: number) => void,
        signal?: AbortSignal,
    ) => Promise<void>

    Upload a file to a presigned target.

    Type Declaration

      • (
            presignedResponse: PresignedUrlResponse,
            file: File,
            onProgress?: (percent: number) => void,
            signal?: AbortSignal,
        ): Promise<void>
      • Parameters

        • presignedResponse: PresignedUrlResponse
        • file: File
        • OptionalonProgress: (percent: number) => void

          Called with progress updates during generation.

        • Optionalsignal: AbortSignal

        Returns Promise<void>