ClientIdentifier
Every built-in browser and app profile.
import { Session, ClientIdentifier } from "node-tls-client";
const session = new Session({ clientIdentifier: ClientIdentifier.firefox_148 });ClientIdentifier is a string enum of the profiles built into the native library. Each one sets the whole TLS and HTTP/2 fingerprint of that browser or app version. It does not set headers such as User-Agent; send those yourself. See Browser profiles.
- Default:
chrome_150, used when a session has neitherclientIdentifiernorja3string. _psk/_PSKvariants add the TLSpre_shared_keyextension, so repeat connections resume the TLS session the way a returning browser does.- HTTP/3: only
chrome_144,chrome_144_psk,firefox_147,firefox_147_pskandfirefox_148carry real HTTP/3 settings (native 1.16.0). See HTTP/3. - Unknown names fall back to the native library's default profile (
chrome_150) without an error.chrome_154,chrome_154_pskandsafari_27_2need native 1.18.1 or newer:initTLS()downloads that, but a previously cached library it falls back to (with a warning) may be older.
In code, use the enum key (ClientIdentifier.chrome_131_psk). In plain JavaScript you can also pass the value string ("chrome_131_PSK"); for some profiles the two differ in case.
Chrome
| Enum key | Value sent to native |
|---|---|
chrome_103 | chrome_103 |
chrome_104 | chrome_104 |
chrome_105 | chrome_105 |
chrome_106 | chrome_106 |
chrome_107 | chrome_107 |
chrome_108 | chrome_108 |
chrome_109 | chrome_109 |
chrome_110 | chrome_110 |
chrome_111 | chrome_111 |
chrome_112 | chrome_112 |
chrome_116_PSK | chrome_116_PSK |
chrome_116_PSK_PQ | chrome_116_PSK_PQ |
chrome_117 | chrome_117 |
chrome_120 | chrome_120 |
chrome_124 | chrome_124 |
chrome_131 | chrome_131 |
chrome_131_psk | chrome_131_PSK |
chrome_130_psk | chrome_130_PSK |
chrome_133 | chrome_133 |
chrome_133_psk | chrome_133_PSK |
chrome_144 | chrome_144 |
chrome_144_psk | chrome_144_PSK |
chrome_146 | chrome_146 |
chrome_146_psk | chrome_146_PSK |
chrome_150 | chrome_150 |
chrome_150_psk | chrome_150_PSK |
chrome_152 | chrome_152 |
chrome_152_psk | chrome_152_PSK |
chrome_154 | chrome_154 |
chrome_154_psk | chrome_154_PSK |
Brave
| Enum key | Value sent to native |
|---|---|
brave_146 | brave_146 |
brave_146_psk | brave_146_PSK |
Safari
| Enum key | Value sent to native |
|---|---|
safari_15_6_1 | safari_15_6_1 |
safari_16_0 | safari_16_0 |
safari_27_2 | safari_27_2 |
safari_ipad_15_6 | safari_ipad_15_6 |
safari_ios_15_5 | safari_ios_15_5 |
safari_ios_15_6 | safari_ios_15_6 |
safari_ios_16_0 | safari_ios_16_0 |
safari_ios_17_0 | safari_ios_17_0 |
safari_ios_18_0 | safari_ios_18_0 |
safari_ios_18_5 | safari_ios_18_5 |
safari_ios_26_0 | safari_ios_26_0 |
Firefox
| Enum key | Value sent to native |
|---|---|
firefox_102 | firefox_102 |
firefox_104 | firefox_104 |
firefox_105 | firefox_105 |
firefox_106 | firefox_106 |
firefox_108 | firefox_108 |
firefox_110 | firefox_110 |
firefox_117 | firefox_117 |
firefox_120 | firefox_120 |
firefox_123 | firefox_123 |
firefox_132 | firefox_132 |
firefox_133 | firefox_133 |
firefox_135 | firefox_135 |
firefox_146_psk | firefox_146_PSK |
firefox_147 | firefox_147 |
firefox_147_psk | firefox_147_PSK |
firefox_148 | firefox_148 |
Opera
| Enum key | Value sent to native |
|---|---|
opera_89 | opera_89 |
opera_90 | opera_90 |
opera_91 | opera_91 |
Zalando apps
| Enum key | Value sent to native |
|---|---|
zalando_android_mobile | zalando_android_mobile |
zalando_ios_mobile | zalando_ios_mobile |
Nike apps
| Enum key | Value sent to native |
|---|---|
nike_ios_mobile | nike_ios_mobile |
nike_android_mobile | nike_android_mobile |
Other
| Enum key | Value sent to native |
|---|---|
cloudscraper | cloudscraper |
MMS iOS
| Enum key | Value sent to native |
|---|---|
mms_ios | mms_ios |
mms_ios_1 | mms_ios_1 |
mms_ios_2 | mms_ios_2 |
mms_ios_3 | mms_ios_3 |
Mesh apps
| Enum key | Value sent to native |
|---|---|
mesh_ios | mesh_ios |
mesh_ios_1 | mesh_ios_1 |
mesh_ios_2 | mesh_ios_2 |
mesh_android | mesh_android |
mesh_android_1 | mesh_android_1 |
mesh_android_2 | mesh_android_2 |
Confirmed apps
| Enum key | Value sent to native |
|---|---|
confirmed_ios | confirmed_ios |
confirmed_android | confirmed_android |
OkHttp (Android)
| Enum key | Value sent to native |
|---|---|
okhttp4_android_7 | okhttp4_android_7 |
okhttp4_android_8 | okhttp4_android_8 |
okhttp4_android_9 | okhttp4_android_9 |
okhttp4_android_10 | okhttp4_android_10 |
okhttp4_android_11 | okhttp4_android_11 |
okhttp4_android_12 | okhttp4_android_12 |
okhttp4_android_13 | okhttp4_android_13 |