Skip to content

docs: add docs on Client IP#704

Draft
wooorm-arcjet wants to merge 6 commits intomainfrom
wooorm/client-ip
Draft

docs: add docs on Client IP#704
wooorm-arcjet wants to merge 6 commits intomainfrom
wooorm/client-ip

Conversation

@wooorm-arcjet
Copy link
Copy Markdown
Contributor

This is based on current workings, with additions of how it could work, marked with visible TODOs, linking to issues in arcjet/arcjet-js.

This introduces a new “Concepts” section.
Some users want to get started, some want to see Arcjets features, but some come in with a problem around a particular “topic”. I hope to put stuff like “Environment variables”, “Request body”, “Fingerprints”, and such typically finicky stuff under here. I explicitly want these a bit higher that “Advanced”, to not dissuade folks.
But that’s where I want to go and as this is the lonely first, open to have it somewhere else.

(note: not draft because I explicitly want to hear thoughts)

Closes GH-703.

@wooorm-arcjet wooorm-arcjet requested a review from a team as a code owner November 6, 2025 15:46
@vercel
Copy link
Copy Markdown

vercel bot commented Nov 6, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
arcjet-docs Ready Ready Preview, Comment Feb 3, 2026 0:17am

Request Review

@blaine-arcjet
Copy link
Copy Markdown
Contributor

We decided to hold this until the Proxy work has been completed so I'm going to move to a draft for now.

@blaine-arcjet blaine-arcjet marked this pull request as draft November 12, 2025 20:16
wooorm-arcjet added a commit that referenced this pull request Dec 5, 2025
Related-to: GH-704.
Related-to: ENG-127.
wooorm-arcjet added a commit that referenced this pull request Dec 8, 2025
Related-to: GH-704.
Related-to: ENG-127.
wooorm-arcjet added a commit that referenced this pull request Dec 11, 2025
Related-to: GH-704.
Related-to: ENG-127.
This is based on current workings, with additions of how it *could* work,
marked with visible TODOs, linking to issues in `arcjet/arcjet-js`.

This introduces a new “Concepts” section.
Some users want to get started, some want to see Arcjets features,
but some come in with a problem around a particular “topic”.
I hope to put stuff like “Environment variables”, “Request body”,
“Fingerprints”, and such typically finicky stuff under here.
I explicitly want these a bit higher that “Advanced”, to not dissuade
folks.
But that’s where I want to go and as this is the lonely first, open to
have it somewhere else.

(note: not draft because I explicitly want to hear thoughts)

Closes GH-703.
@wooorm-arcjet
Copy link
Copy Markdown
Contributor Author

@qw-in I am trying to launch this again.
I removed references to “services” (a sort of IP to headers mapping), as that wasn’t going anywhere.
This does still talk about trustedHeaderIp, which is not implemented in the JS SDKs yet. I still think such an API is useful to have.
And it talks as if arcjet/arcjet-js/pull/5409 is correctly supported.
Otherwise this reflects reality!

@qw-in
Copy link
Copy Markdown
Member

qw-in commented Feb 3, 2026

I think this will be replaced by a feature similar to https://github.com/arcjet/arcjet-py?tab=readme-ov-file#overriding-automatic-ip-detection for now


I do certainly think there are parts that are worth keeping though! I'll have a closer look

@wooorm-arcjet
Copy link
Copy Markdown
Contributor Author

The JS version is a lot smarter than https://redirect.github.com/arcjet/arcjet-py/blob/a5ec064dea2e1df22bc30c291fd2da594186e51b/src/arcjet/context.py#L231-L254 though.
As it has so many fallbacks, turning it off makes less sense: it’s likely that an IP will be found. Except if it’s not known where to find it, and a trustedIpHeader or so should do that

@qw-in qw-in self-assigned this Feb 6, 2026
@arcjet-rei arcjet-rei marked this pull request as draft March 4, 2026 07:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Document everything about Client IPs in one place

4 participants