You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
if (remainingRequests <10|| remainingTokens <10000) {
@@ -214,11 +214,19 @@ data: Your final answer from the agent.
214
214
215
215
event: done
216
216
data: {
217
-
"maxRequests": 200,
218
-
"remainingRequests": 193,
219
-
"maxTokens": 200000,
220
-
"remainingTokens": 179910,
221
-
"remainingTimeMs": 903
217
+
"rateLimitUsage": {
218
+
"maxRequests": 200,
219
+
"remainingRequests": 193,
220
+
"maxTokens": 200000,
221
+
"remainingTokens": 179910,
222
+
"remainingTimeMs": 903
223
+
},
224
+
"monthlyQuotaUsage": {
225
+
"monthlyLimit": 20,
226
+
"remainingQuota": 19,
227
+
"month": "2025-09",
228
+
"remainingTimeMs": 1766899073
229
+
}
222
230
}
223
231
```
224
232
@@ -283,12 +291,18 @@ Signals that the agent has finished processing and the response stream is comple
283
291
284
292
```json showLineNumbers
285
293
{
286
-
"quotaUsage": {
294
+
"rateLimitUsage": {
287
295
"maxRequests": 200,
288
296
"remainingRequests": 193,
289
297
"maxTokens": 200000,
290
298
"remainingTokens": 179910,
291
299
"remainingTimeMs": 903
300
+
},
301
+
"monthlyQuotaUsage": {
302
+
"monthlyLimit": 20,
303
+
"remainingQuota": 19,
304
+
"month": "2025-09",
305
+
"remainingTimeMs": 1766899073
292
306
}
293
307
}
294
308
```
@@ -395,19 +409,40 @@ We limit this data storage strictly to these purposes. You can contact us to opt
395
409
396
410
## Limits
397
411
398
-
Port applies limits to AI agent interactions to ensure fair usage across all customers:
412
+
Port applies two different types of limits to AI agent interactions to ensure fair usage across all customers:
413
+
414
+
### Rate limits
415
+
-**Query limit**: ~40 queries per hour
416
+
-**Token usage limit**: 800,000 tokens per hour
417
+
- These limits reset hourly
418
+
419
+
### Monthly quota
420
+
-**Default quota**: 20 AI invocations per month
421
+
- Each invocation of Port AI counts as one request against your quota
422
+
- Quota resets monthly
399
423
400
-
-**Query limit**: ~40 queries per hour.
401
-
-**Token usage limit**: 800,000 tokens per hour.
402
424
403
-
You can view your quota limits are available in the API response.
404
425
405
426
:::caution Usage limits
406
427
Usage limits may change without prior notice. Once a limit is reached, you will need to wait until it resets.
407
428
If you attempt to interact with an agent after reaching a limit, you will receive an error message indicating that the limit has been exceeded.
408
429
The query limit is estimated and depends on the actual token usage.
409
430
:::
410
431
432
+
### Monitor your usage
433
+
434
+
You can monitor your current usage in several ways:
435
+
436
+
#### Rate limits
437
+
- Check the final `done` event in streaming responses for remaining requests, tokens, and reset time
438
+
439
+
#### Monthly quota
440
+
You can monitor your current monthly quota usage by making a GET request to the `/v1/quota/ai-invocations` endpoint
441
+
442
+
:::tip Proactive quota monitoring
443
+
Check your monthly quota before making multiple AI agent requests to avoid hitting limits. When `remainingQuota` is low, consider implementing rate limiting or queuing requests until the monthly quota resets. Note that you may also encounter hourly rate limits, which are separate from this monthly quota.
444
+
:::
445
+
411
446
## Common errors
412
447
413
448
Here are some common errors you might encounter when working with AI agents and how to resolve them:
@@ -513,7 +548,38 @@ Port applies the following limits to AI agent interactions:
513
548
-**Query limit**: ~40 queries per hour
514
549
-**Token usage limit**: 800,000 tokens per hour
515
550
516
-
You can monitor your current usage in the final `done` event showing your remaining requests, tokens, and reset time.
551
+
You can monitor your current usage in several ways:
552
+
- Check the final `done` event in streaming responses for remaining requests, tokens, and reset time (hourly rate limits)
553
+
- Make a GET request to `/v1/quota/ai-invocations` to see your monthly quota status
554
+
555
+
Note that Port has both hourly rate limits and monthly quotas. For detailed information, see the [Limits](#limits) section above.
556
+
557
+
</details>
558
+
559
+
<details>
560
+
<summary><b>What happens when I reach a limit and what can I do? (Click to expand)</b></summary>
561
+
562
+
**What happens when you reach a limit:**
563
+
- You are temporarily blocked from making new AI agent requests
564
+
- You will receive an error message indicating which limit has been exceeded
565
+
- Access resumes automatically when the limit resets
566
+
567
+
**What you can do:**
568
+
569
+
**For rate limits (hourly):**
570
+
- Wait for the limits to reset (they reset every hour)
571
+
- Monitor the `remainingTimeMs` field to know exactly when you can make requests again
572
+
- The error message will indicate it's a rate limit issue
573
+
574
+
**For monthly quota:**
575
+
- Wait for the monthly quota to reset at the beginning of the next month
576
+
- Contact our support team to learn more about our plans and quota upgrades available for your organization
577
+
- The error message will indicate it's a quota limit issue
578
+
579
+
**General recommendations:**
580
+
- Implement rate limiting in your applications to avoid hitting limits
581
+
- Monitor your usage proactively using the monitoring methods described above
582
+
- Consider batching requests or optimizing your AI agent interactions for efficiency
Copy file name to clipboardExpand all lines: docs/api-reference/approve-an-action-run.api.mdx
+11-4Lines changed: 11 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,11 @@
1
1
---
2
2
id: approve-an-action-run
3
3
title: "Approve an action run"
4
-
description: "This route allows you to approve or decline a request to execute an action that requires approval.<br/><br/>To learn more about manual approval for actions, check out the [documentation](https://docs.port.io/create-self-service-experiences/set-self-service-actions-rbac/#configure-manual-approval-for-actions)."
4
+
description: "This route allows you to approve or decline a request to execute an"
@@ -36,7 +36,14 @@ import Heading from "@theme/Heading";
36
36
37
37
38
38
39
-
This route allows you to approve or decline a request to execute an action that requires approval.<br/><br/>To learn more about manual approval for actions, check out the [documentation](https://docs.port.io/create-self-service-experiences/set-self-service-actions-rbac/#configure-manual-approval-for-actions).
39
+
This route allows you to approve or decline a request to execute an
40
+
action that requires approval.<br/><br/>To learn more about manual
Set the `version` parameter to `v2` for the latest version of the API.
45
+
:::
46
+
40
47
41
48
<Heading
42
49
id={"request"}
@@ -47,7 +54,7 @@ This route allows you to approve or decline a request to execute an action that
47
54
</Heading>
48
55
49
56
<ParamsDetails
50
-
parameters={[{"schema":{"type":"string","enum":["v1","v2"]},"in":"query","name":"version","required":false},{"schema":{"type":"string"},"in":"path","name":"run_id","required":true,"description":"The identifier of the action run."}]}
57
+
parameters={[{"schema":{"type":"string","enum":["v1","v2"]},"in":"query","name":"version","required":false,"description":"Specifies the API version to use. Please use `v2` for the latest version of the API."},{"schema":{"type":"string"},"in":"path","name":"run_id","required":true,"description":"The identifier of the action run."}]}
0 commit comments