igpapi — Instagram private API Simulator for Node.js (API reference) 4.14.0
    Preparing search index...

    Variable ChallengeWebRecaptchaScreenConst

    ChallengeWebRecaptchaScreen: ScreenDefinition<
        "ChallengeWebRecaptcha",
        "screen",
        { url: string },
        { url: string },
        { url: string },
        never,
        MobileNavigation,
        ChallengeWebRecaptchaActions,
        Record<never, never>,
        never,
        never,
    > = ...

    The web challenge's reCAPTCHA form: Instagram answers a request with a web challenge (flow_render_type: 4) whose type is RecaptchaRestrictChallengeForm, and the app shows an in-app browser page with the reCAPTCHA widget. The screen keeps the page the person opens — url, the challenge's own page — and the token the person solves is the input the caller passes to the action.

    Reached only as an interruption of a request (OpenChallenge(error)); the challenge's own classification read the page and the web challenge state before this screen opened, so its enter sends nothing. It has no back and is no step of a trail.

    Its one action, submitRecaptcha(captcha), posts the token to the web challenge's form unchanged (g-recaptcha-response, next: '/'), then reads the challenge again and continues into the step the server answers with — the challenge's end when the answer is a close, or the next web form. The action runs only while this screen is on top; the interrupted action is never retried.

    Ships without a screenshot: the old class had none.

    Unverified against the app. The Android 451 app's behavior on this step is not known: the web challenge state is the challenge module's own sample. Seeing the Android app on this web reCAPTCHA would settle the page, the token and the post.

    Guide: Challenges