Commit Graph

80 Commits

Author SHA1 Message Date
wukko
810e0a865c api/package: replace youtubei.js with a fork, update undici 2025-07-01 16:15:12 +06:00
wukko
d70180b23c api/core: merge isApiKey and isSession into authType
cuz they can't be true at the same time
2025-06-28 17:05:18 +06:00
wukko
c16444126e api/env: backwards compatibility with SESSION_RATELIMIT 2025-06-28 16:37:54 +06:00
wukko
3243564f77 api/api-keys: add allowedServices to limit or extend access
it's useful for limiting access to services per key, or for overriding default list of enabled services with "all"
2025-06-26 22:20:09 +06:00
wukko
b8801570a9 api/env: SESSION_RATELIMIT -> SESSION_RATELIMIT_MAX 2025-06-17 13:33:50 +06:00
wukko
af99e7218c api: disable youtube HLS by default & add env to enable it 2025-06-17 13:21:16 +06:00
jj
e2b6879ea2 api/env: log information about dynamic env changes 2025-06-07 08:35:36 +00:00
jj
57eba51959 api/env: broadcast raw contents instead of parsed 2025-05-31 13:43:30 +00:00
wukko
c2d76010c5 api/core: remove durationLimit from server info
it's not used, no clue why it was here in the first place
2025-05-27 17:12:58 +06:00
jj
c392864c82 api/env: unquote variables if needed 2025-05-25 12:44:40 +00:00
jj
ba2d266de7 api: dynamic env reloading from path/url 2025-05-24 15:52:27 +00:00
jj
e76ccd1941 api: move env loading into separate file 2025-05-24 14:47:01 +00:00
wukko
0ae0bbfa1f api/core: use new tunnel rate limit env 2025-05-14 19:07:11 +06:00
wukko
c5acb45557 api/core: mark request as session when bearer token is used
and pass it to match() for future consumption
2025-05-06 16:16:29 +06:00
wukko
06bc51db54 merge: 10.9 from main 2025-04-02 21:48:58 +06:00
wukko
f70f88bc4c api/core: customizable session rate limit params 2025-03-31 22:32:21 +06:00
jj
1f768df4ec api: bind session tokens to ip hash 2025-03-30 17:08:34 +00:00
wukko
0b29121c53 merge: changes from main 2025-03-27 20:02:46 +06:00
lostdusty
0a7cf7580c api/core: remove non-printable unicode character in boot message (#1182) 2025-03-21 22:43:53 +06:00
wukko
b6cd0ad727 api: automatically pull youtube session tokens from a session server
if provided, cobalt will pull poToken & visitor_data from an instance of invidious' youtube-trusted-session-generator or its counterpart
2025-03-19 19:54:20 +06:00
lostdusty
fa267ae54b api/core: return 429 http status for rate-limit (#1066)
Co-authored-by: jj <log@riseup.net>
2025-02-11 14:42:31 +06:00
jj
c4c47bdc27 merge: 10.6 updates 2025-01-21 13:36:37 +00:00
jj
c07940bfa4 api/itunnel: pass itunnel object by reference 2025-01-20 15:46:03 +00:00
jj
45e7b69937 api/tunnel: add Content-Disposition to exposed headers 2024-12-25 20:05:18 +00:00
jj
fec07d0e10 api: add cors headers for tunnels 2024-12-16 17:45:02 +00:00
jj
bc597c817f api: move itunnel handlers to separate file 2024-12-16 10:38:31 +00:00
jj
f06aa65801 api: always create separate server for itunnels 2024-12-16 10:19:15 +00:00
jj
e7c2872e40 api/stream: rename getInternalStream to getInternalTunnel 2024-12-16 10:16:48 +00:00
jj
382873dc11 api/core: fix main cluster being unable to handle itunnels 2024-11-02 09:59:48 +00:00
jj
2317da5ba5 api: add support for redis to ratelimiter cache 2024-11-01 13:26:18 +00:00
jj
d466f8a4af api: upgrade express-rate-limit to v7, reuse key generator 2024-11-01 12:54:16 +00:00
jj
66cb8d360d api: move hmac secrets to single file 2024-11-01 12:16:53 +00:00
jj
40d6a02b61 api: cluster support
still missing synchronization for some structures
2024-10-31 22:59:06 +00:00
jj
132255b004 api/stream/manage: use cobalt Store for stream cache 2024-10-31 22:33:32 +00:00
wukko
cdfc91844d api/schema: update youtubeDubLang to accept all valid language codes 2024-10-28 19:56:18 +06:00
jj
7dc0121031 api: defer file loads until api is running 2024-10-27 18:12:59 +00:00
jj
5a5a65b373 api/cookies: trigger cookie load from api entrypoint 2024-10-27 18:10:57 +00:00
jj
d55dddea2e core/api: normalize bearer authorization 2024-10-20 10:05:34 +00:00
dumbmoron
9cc6fd13fa api/core: skip turnstile verification if user authed with api key 2024-10-04 17:37:57 +00:00
dumbmoron
81818f8741 api/core: implement authentication with api keys 2024-10-04 16:50:55 +00:00
dumbmoron
dcd33803c1 api/core: generate JWT rate limiting key in auth handler 2024-10-04 17:03:57 +00:00
dumbmoron
418602ca87 api/core: add rate limiter for session 2024-10-04 17:02:00 +00:00
dumbmoron
38fcee4a50 api/core: rename tunnel limiter, move to endpoint 2024-10-04 17:00:58 +00:00
dumbmoron
f2248d4e9a api/core: move api limiter after authentication 2024-10-04 16:59:53 +00:00
dumbmoron
034f7ebe4a api/core: extract rate limit response to function 2024-10-04 16:58:15 +00:00
wukko
2a42ed38b6 repo: merge new commits from main into develop 2024-09-23 20:27:32 +06:00
wukko
0cc18b488c api/core: return public turnstile sitekey in server info 2024-09-17 22:40:07 +06:00
dumbmoron
29f967a3ec api: fix accept & content-type validation when not using authentication 2024-09-17 15:37:21 +00:00
dumbmoron
57c9836f56 api/core: move ratelimiters before authentication handler 2024-09-09 14:21:19 +00:00
wukko
3317726afe api/core: rename req and next args to indicate that they're unused 2024-09-09 19:44:40 +06:00