Emails the Rubicon admins whenever trailing-30d OpenAI spend crosses each $50 rung ($50, $100, ...). One email per crossing — no daily re-sends. Replaces the balance-based credits watchdog (deleted 2026-07-13).
cron 0 9 * * * (America/New_York) · runs as Yoga · next 2026-10-22 13:00:00
| Run | Status | Started | Took | Steps | Artifact |
|---|---|---|---|---|---|
| #101 | failed | 2026-10-21 13:00:41 | 0.7s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #100 | failed | 2026-10-20 13:01:27 | 0.7s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #99 | ran | 2026-10-19 13:02:09 | 1.5s | openai_credits_check·ok | — |
| #98 | failed | 2026-10-18 13:01:15 | 0.8s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #97 | failed | 2026-10-17 13:00:44 | 0.7s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #96 | failed | 2026-10-16 13:00:28 | 0.7s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #95 | ran | 2026-10-15 13:02:01 | 1.1s | openai_credits_check·ok | — |
| #94 | ran | 2026-10-14 13:01:51 | 1.2s | openai_credits_check·ok | — |
| #93 | ran | 2026-10-13 13:00:53 | 1.4s | openai_credits_check·ok | — |
| #92 | ran | 2026-10-12 13:01:55 | 1.0s | openai_credits_check·ok | — |
| #91 | failed | 2026-10-11 13:01:16 | 0.6s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #90 | failed | 2026-10-10 13:01:31 | 0.6s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #89 | failed | 2026-10-09 13:01:17 | 0.8s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #88 | failed | 2026-10-08 13:01:13 | 0.8s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #87 | failed | 2026-10-07 13:00:41 | 0.7s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #86 | failed | 2026-10-06 13:01:35 | 0.7s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #85 | failed | 2026-10-05 13:01:08 | 0.6s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #84 | failed | 2026-10-04 13:01:40 | 0.6s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
| #83 | ran | 2026-10-03 13:01:06 | 1.1s | openai_credits_check·ok | — |
| #82 | failed | 2026-10-02 13:00:27 | 0.6s | openai_credits_check·error step #0 (openai_credits_check) raised OpenAIHTTPError: OpenAI HTTP 429: {
"error": {
"message": "You've exceeded the 30 request(s) every 1 minute(s) rate limit, please slow down and try again.",
"type": "invalid_request_error",
"param": null,
"code": "rate_limit_exceeded"
}
} | — |
Live view · refreshes every 15s · id 03dae87a-321b-406c-bb4b-3283c428eae7