v2 API rate limits self-hosted installs by IP even with billing disabled

Đang mở Phù hợp với người mới
#8,452 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@Rajkumar2002-Rk đang làm issue này rồi.

Từ ngày 30/9/2026.

  • #8453 của @Rajkumar2002-Rk — đang mở

Đánh giá

Độ khó
1/5
Thời gian dự kiến
Dưới một giờ
Mức phù hợp với người mới
75/100
Loại issue
Tài liệu
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
docker-compose, typescript
Lĩnh vực
backend

Hướng nghiên cứu

Đọc phần “Limits” của Environment Variables trong tài liệu self-hosting và so sánh phần này với apps/sim/lib/api/server/routes/v2-json-route.ts, nơi V2_PREAUTH_IP_LIMIT được định nghĩa. Issue đề xuất ít nhất phải ghi lại giới hạn cố định theo IP; cập nhật phần “Limits” để giải thích hành vi của giới hạn này trong các cài đặt self-hosted là một kết quả đầu tiên rõ ràng. Các thay đổi tùy chọn đối với hành vi của biến môi trường hoặc việc tính phí vẫn để ngỏ.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

The self-hosting docs (Environment Variables, "Limits") say installs with billing disabled "run without plan limits: no rate limits". The v2 API still enforces a fixed per-IP limit before auth: V2_PREAUTH_IP_LIMIT in apps/sim/lib/api/server/routes/v2-json-route.ts (600 burst, 300 per minute). It isn't affected by BILLING_ENABLED or the RATE_LIMIT_FREE_* variables, and there's no way to change it.

On a Docker Compose install, every request from the host arrives from the bridge gateway (172.19.0.1 here), so all local callers share one bucket. A batch job running sync executes with a log fetch after each one hit it and got 429 RATE_LIMITED. The server logs show storageKey: v2:preauth:ip:172.19.0.1.

Repro (billing off, no RATE_LIMIT_* set): send 800 quick requests to POST /api/v2/workflows/{id}/execute, even with an invalid API key. The first 600 return 401 and the rest return 429 with x-ratelimit-limit: 600.

At minimum it would help to mention this limit in the Limits section. It might also make sense to let self-hosters raise it with an env var, or to skip it when billing is disabled, but that's your call since it's there for abuse protection. Happy to send a docs PR.

Ngôn ngữ chính
TypeScript
Star
29.8k
Fork
3.9k
Merge trung bình
1 giờ 44 phút
Pull request đã merge (30 ngày)
841

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của simstudioai/sim

Tất cả issue của simstudioai/sim

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.