IGPAPI
    Preparing search index...

    Variable ChallengeSetContactPointScreenConst

    ChallengeSetContactPointScreen: ScreenDefinition<
        "ChallengeSetContactPoint",
        "screen",
        {
            contactPointType: "EMAIL"
            | "SMS";
            flow: {
                authenticity_product?: number;
                challenge_root_id?: string;
                enrollment_id?: number;
                external_flow_id?: number;
                hashed_ui_state?: string;
                ig_container_module?: string;
                is_blocking?: number;
                ixt_initial_screen_id?: string;
                location?: string;
                trigger_event_type?: string;
                trigger_session_id?: string;
                v2_polling?: number;
            };
            serverParams: {
                challenge_root_id?: string;
                INTERNAL__latency_qpl_instance_id?: string;
                INTERNAL__latency_qpl_marker_id: number;
                persisted_data?: string;
            };
        },
        {
            contactPointType: "EMAIL"
            | "SMS";
            flow: {
                authenticity_product?: number;
                challenge_root_id?: string;
                enrollment_id?: number;
                external_flow_id?: number;
                hashed_ui_state?: string;
                ig_container_module?: string;
                is_blocking?: number;
                ixt_initial_screen_id?: string;
                location?: string;
                trigger_event_type?: string;
                trigger_session_id?: string;
                v2_polling?: number;
            };
            serverParams: {
                challenge_root_id?: string;
                INTERNAL__latency_qpl_instance_id?: string;
                INTERNAL__latency_qpl_marker_id: number;
                persisted_data?: string;
            };
        },
        {
            contactPointType: "EMAIL"
            | "SMS";
            flow: {
                authenticity_product?: number;
                challenge_root_id?: string;
                enrollment_id?: number;
                external_flow_id?: number;
                hashed_ui_state?: string;
                ig_container_module?: string;
                is_blocking?: number;
                ixt_initial_screen_id?: string;
                location?: string;
                trigger_event_type?: string;
                trigger_session_id?: string;
                v2_polling?: number;
            };
            serverParams: {
                challenge_root_id?: string;
                INTERNAL__latency_qpl_instance_id?: string;
                INTERNAL__latency_qpl_marker_id: number;
                persisted_data?: string;
            };
        },
        never,
        MobileNavigation,
        ChallengeSetContactPointActions,
        Record<never, never>,
        never,
        never,
    > = ...

    "Add Phone Number to Get Back Into Instagram", or the email variant of the same UFAC step: the account-review flow asks for a contact point it can reach the person on. The screen keeps the step's serverParams (derived from the controller payload once), the UFAC state accumulated so far, and whether the step wants a phone number or an email (contactPointType) — the field the person fills.

    Reached only as an interruption of a request (OpenChallenge(error)): the challenge's classification fetched the UFAC controller before this screen opened, so its enter sends nothing. It has no back and is no step of a trail.

    Its one action, submitContactPoint(contactPoint), sends the typed phone number or email to the step's set_contact_point.submit action unchanged — a number with a leading + is sent the way the app sends it, with the WhatsApp medium — and continues into the next step, usually the code entry (ChallengeContactPointCodeScreen). A payload the library does not model is ChallengeStepNotModelledError. The action runs only while this screen is on top; the interrupted action is never retried.

    Ships with screens.challenge.set-contact-point.jpg, the screen as the old class was observed on a test account.

    Unverified by recording. No recording of the Android 451 app on this step exists, and the challenge module has no sample of this step in the library's own sources. A recording of the Android app on the contact-point prompt would settle the page and both variants.