Class Provider

Provider class for managing a provider

Constructors

Properties

_alt_id: undefined | null | string

Alt ID of the provider

_uuid: undefined | string

UUID of the provider

accountServiceEnabled: undefined | boolean
apiKey: string

API key for the provider

providerProfile: undefined | Promise<{
    __typename?: "AuthorizedProvider";
    account_service: {
        __typename?: "AccountServiceQuery";
        enabled: boolean;
    };
    alt_id?: null | string;
    script_groups?: null | {
        __typename?: "ProviderScriptGroup";
        alt_id: string;
        scripts?: null | (null | {
            __typename?: (...) | (...);
            alt_id: string;
            uuid: string;
        })[];
        uuid: string;
    }[];
    uuid: string;
}>
scriptGroups: ScriptGroup[] = []

Script groups belonging to this provider

secretKey: string

Secret key for the provider

url: string

MyScribae remote URL.

Accessors

  • get secretKeyHeaders(): {
        X-MyScribae-SecretKey: string;
    }
  • Headers to be used for requests that require the secret key

    Returns {
        X-MyScribae-SecretKey: string;
    }

    • X-MyScribae-SecretKey: string

Methods

  • Updates the provider's profile from MyScribae

    Parameters

    • assertion: ProviderStruct

    Returns Promise<void>

  • Fetches the provider's profile from MyScribae

    Parameters

    • from: Date
    • Optional to: Date

    Returns Promise<{
        __typename?: "ProviderEarnings";
        amount_in_cents: number;
        unique_subscribers: number;
    }>

  • Parameters

    • subscriber_id: string

    Returns Promise<string[]>

  • Returns Promise<{
        __typename?: "AuthorizedProvider";
        account_service: {
            __typename?: "AccountServiceQuery";
            enabled: boolean;
        };
        alt_id?: null | string;
        script_groups?: null | {
            __typename?: "ProviderScriptGroup";
            alt_id: string;
            scripts?: null | (null | {
                __typename?: "ProviderScript";
                alt_id: string;
                uuid: string;
            })[];
            uuid: string;
        }[];
        uuid: string;
    }>

  • Issues a token on behalf of the provider

    Parameters

    • subscriberId: string

    Returns Promise<string>

  • Fetches the public key for the provider from MyScribae

    Returns Promise<string>

  • Validates a MyScribae token provided by a subscriber

    Parameters

    • token: string

      JWT token provided by the subscriber

    Returns Promise<SubscriptionToken>

    A promise that resolves to a SubscriptionToken

  • Safe constructor for Provider

    Parameters

    • config: ProviderConfig

      Configuration for the provider

    • assertion: ProviderStruct
    • debug: boolean = false

    Returns Promise<Provider>

    A promise that resolves to a fully initialized provider

    Example: Initializing a provider

    const config = {
    url: 'https://api.myscribae.com',
    apiKey: '...',
    secretKey: '...',
    };

    const provider = await Provider.initialize(config, providerProfile);

Generated using TypeDoc