IGPAPI
    Preparing search index...

    Interface LoginOverrides

    Platform-specific overlays merged over the shared bloks login form.

    Shape of the real form is (roughly) identical on Android and iOS, but three sections carry platform-specific values:

    • serverParams — experiment / surface flags (offline_experiment_group, layered_homepage_experiment_group, reg_flow_source, left_nav_button_action, …)
    • clientInputParams — platform permissions/state (sim_phones, device_emails, flash_call_permission_status on Android; zero_balance_state on iOS; different gms_incoming_call_retriever_eligibility values on each platform)
    • bkClientContext — full value of the bk_client_context form field, defaults to { styles_id: 'instagram' } when not supplied

    Each platform package (@igpapi/ios, @igpapi/android) wraps this base Login with its own fixed overrides.

    interface LoginOverrides {
        bkClientContext?: Record<string, unknown>;
        clientInputParams?: Record<string, unknown>;
        clientInputParamsOrder?: readonly string[];
        context?: RequestContext;
        friendlyName?: string;
        headers?: HttpHeaders;
        paramsOrder?: "server-first" | "client-first";
        serverParams?: Record<string, unknown>;
        serverParamsOrder?: readonly string[];
        twoFactor?: {
            cloudTrustToken?: string | null;
            context?: RequestContext;
            methodPicker?: boolean;
            url?: string;
        };
        url?: string;
    }
    Index

    Properties

    bkClientContext?: Record<string, unknown>
    clientInputParams?: Record<string, unknown>
    clientInputParamsOrder?: readonly string[]

    Explicit client_input_params key order. When supplied, the merged clientInputParams are re-emitted in this order (keys present in the object; any unlisted keys keep their relative position at the end). Android uses it to match the captured 448 order without changing the shared base or the iOS output.

    context?: RequestContext
    friendlyName?: string
    headers?: HttpHeaders
    paramsOrder?: "server-first" | "client-first"
    serverParams?: Record<string, unknown>
    serverParamsOrder?: readonly string[]

    Explicit server_params key order. When supplied, the merged serverParams are re-emitted in this order (keys present in the object; any unlisted keys keep their relative position at the end), matching the Android 448 capture without changing the shared base or the iOS output.

    twoFactor?: {
        cloudTrustToken?: string | null;
        context?: RequestContext;
        methodPicker?: boolean;
        url?: string;
    }

    2FA challenge handling. methodPicker defaults to true (the iOS behavior: fetch the entrypoint screen and then the method-picker screen). Set methodPicker: false on platforms where the app goes straight to a trusted-notification poll and never requests the picker.

    Type Declaration

    • Optional ReadonlycloudTrustToken?: string | null

      Android sends cloud_trust_token: null on the entrypoint request.

    • Optional Readonlycontext?: RequestContext
    • Optional ReadonlymethodPicker?: boolean
    • Optional Readonlyurl?: string
    url?: string