sharedParams.profile to scrape pages behind a website login. Subscribing to any paid plan enables browser profiles for your organization.
Create a profile
Settype to new and provide the website’s username or email and password. Context discovers the sign-in flow from your target URL, verifies authentication, and saves the session. Passwords are never stored in the profile.
Send this body to POST /web/scrape. See the Quickstart for authentication and SDK setup.
profile.id:
profile: null when you omit sharedParams.profile. New and existing profile requests both return the profile ID.
Reuse a profile
Settype to existing and pass the saved ID as profileId. Credentials are unnecessary for reuse.
Send this body to POST /web/scrape. See the Quickstart for authentication and SDK setup.
PROFILE_BUSY.
Handle expiry
When Context confirms that the website session has expired, it deletes the profile and returns HTTP422:
profile.id. Context cannot sign in again automatically because the password is not saved.
Constraints
- Target URLs must use HTTPS and stay within the profile’s permitted origins.
- Browser profiles bypass shared caches and use private request logging. They persist session state, so
zdr: "enabled"is unsupported. - Custom headers, raw
bytes, iframe capture, popup dismissal, image enrichment, visual image deduplication, filtered image outputs, and product image deduplication are unsupported with profiles. - Keep the viewport, theme, and proxy settings compatible with the saved profile. Profile viewports are 320–3840 pixels wide and 240–2160 pixels high.
- Residential proxy identities expire after 30 minutes. Static ISP identities remain pinned while their endpoint is available.
- MFA, CAPTCHA, passkeys, popup login, and HTTP authentication are unsupported. Cross-origin sign-in discovery is automatic.