# Observability / Org Limits

## Get org limits summary for all monitored environments in a repository

> Returns all monitoring-enabled environments with their worst-limit status. Environments are discovered from existing metrics in VictoriaMetrics.

```json
{"openapi":"3.0.0","info":{"title":"sfp server","version":"51.9.0"},"security":[{"access-token":[]}],"components":{"securitySchemes":{"access-token":{"scheme":"bearer","bearerFormat":"JWT","type":"http","in":"header"}},"schemas":{"EnvironmentLimitsSummaryDto":{"type":"object","properties":{"orgUsername":{"type":"string","description":"Salesforce username that uniquely identifies the org being observed"},"environmentLabels":{"description":"Every (env name, repo) pair that points to this org","type":"array","items":{"$ref":"#/components/schemas/EnvironmentLabelDto"}},"status":{"type":"string","enum":["ok","warning","critical"],"description":"Overall status"},"lastPolledAt":{"type":"string","description":"Last polled timestamp"},"worstLimit":{"description":"Worst limit for this org","allOf":[{"$ref":"#/components/schemas/WorstLimitDto"}]}},"required":["orgUsername","environmentLabels","status","lastPolledAt"]},"EnvironmentLabelDto":{"type":"object","properties":{"name":{"type":"string","description":"Environment name within its repository"},"repositoryIdentifier":{"type":"string","description":"Repository the environment belongs to"}},"required":["name","repositoryIdentifier"]},"WorstLimitDto":{"type":"object","properties":{"name":{"type":"string","description":"Limit name"},"usagePct":{"type":"number","description":"Usage percentage"},"alertLevel":{"type":"string","enum":["ok","warning","critical"]}},"required":["name","usagePct","alertLevel"]}}},"paths":{"/sfp/api/observability/limits/summary":{"get":{"operationId":"ObservabilityController_getSummary","summary":"Get org limits summary for all monitored environments in a repository","description":"Returns all monitoring-enabled environments with their worst-limit status. Environments are discovered from existing metrics in VictoriaMetrics.","parameters":[{"name":"repositoryIdentifier","required":false,"in":"query","description":"Repository identifier in format owner/repo. When omitted, returns a tenant-wide summary across every monitored environment.","schema":{"type":"string"}}],"responses":{"200":{"description":"Summary retrieved successfully","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/EnvironmentLimitsSummaryDto"}}}}},"403":{"description":"Forbidden - Requires role: member, owner, application"}},"tags":["Observability / Org Limits"]}}}}
```

## Get org limits dashboard for a specific environment

> Returns time-series chart data, current snapshot table, and alerts for a specific environment. Results are cached based on the time range type.

```json
{"openapi":"3.0.0","info":{"title":"sfp server","version":"51.9.0"},"security":[{"access-token":[]}],"components":{"securitySchemes":{"access-token":{"scheme":"bearer","bearerFormat":"JWT","type":"http","in":"header"}},"schemas":{"LimitsDashboardResponseDto":{"type":"object","properties":{"meta":{"description":"Response metadata","allOf":[{"$ref":"#/components/schemas/LimitsDashboardMetaDto"}]},"timeSeries":{"description":"Time-series data per limit","type":"array","items":{"$ref":"#/components/schemas/LimitTimeSeriesDto"}},"snapshot":{"description":"Current snapshot of all limits","type":"array","items":{"$ref":"#/components/schemas/LimitSnapshotDto"}},"alerts":{"description":"Limits that exceed alert thresholds","type":"array","items":{"$ref":"#/components/schemas/LimitSnapshotDto"}}},"required":["meta","timeSeries","snapshot","alerts"]},"LimitsDashboardMetaDto":{"type":"object","properties":{"range":{"type":"string","enum":["today","yesterday","last_7_days"]},"rangeLabel":{"type":"string","description":"Human-readable range label"},"start":{"type":"string","description":"Range start (ISO 8601)"},"end":{"type":"string","description":"Range end (ISO 8601)"},"environmentName":{"type":"string","description":"Environment name"},"repositoryIdentifier":{"type":"string","description":"Repository identifier"},"generatedAt":{"type":"string","description":"Response generation timestamp"},"cached":{"type":"boolean","description":"Whether result was served from cache"},"queryDurationMs":{"type":"number","description":"Query execution time in milliseconds"}},"required":["range","rangeLabel","start","end","environmentName","repositoryIdentifier","generatedAt","cached","queryDurationMs"]},"LimitTimeSeriesDto":{"type":"object","properties":{"limitName":{"type":"string","description":"Limit name"},"dataPoints":{"description":"Time-series data points","type":"array","items":{"$ref":"#/components/schemas/LimitTimeSeriesDataPointDto"}}},"required":["limitName","dataPoints"]},"LimitTimeSeriesDataPointDto":{"type":"object","properties":{"timestamp":{"type":"string","description":"Timestamp (ISO 8601)"},"usagePct":{"type":"number","description":"Usage percentage at this point"}},"required":["timestamp","usagePct"]},"LimitSnapshotDto":{"type":"object","properties":{"name":{"type":"string","description":"Salesforce limit name"},"max":{"type":"number","description":"Maximum allowed value"},"used":{"type":"number","description":"Currently used value"},"remaining":{"type":"number","description":"Remaining value"},"usagePct":{"type":"number","description":"Usage percentage (0-100)"},"alertLevel":{"type":"string","enum":["ok","warning","critical"],"description":"Alert level based on usage"}},"required":["name","max","used","remaining","usagePct","alertLevel"]}}},"paths":{"/sfp/api/observability/limits/dashboard":{"get":{"operationId":"ObservabilityController_getDashboard","summary":"Get org limits dashboard for a specific environment","description":"Returns time-series chart data, current snapshot table, and alerts for a specific environment. Results are cached based on the time range type.","parameters":[{"name":"environmentName","required":true,"in":"query","description":"Environment name","schema":{"type":"string"}},{"name":"repositoryIdentifier","required":true,"in":"query","description":"Repository identifier in format owner/repo","schema":{"type":"string"}},{"name":"range","required":true,"in":"query","description":"Time range for metrics","schema":{"enum":["today","yesterday","last_7_days"],"type":"string"}},{"name":"forceRefresh","required":false,"in":"query","description":"Force refresh - bypass cache and fetch fresh data","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"description":"Dashboard data retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitsDashboardResponseDto"}}}},"403":{"description":"Forbidden - Requires role: member, owner, application"}},"tags":["Observability / Org Limits"]}}}}
```

## Get current org limits snapshot for a specific environment

> Returns lightweight current values only (no time-series data).

```json
{"openapi":"3.0.0","info":{"title":"sfp server","version":"51.9.0"},"security":[{"access-token":[]}],"components":{"securitySchemes":{"access-token":{"scheme":"bearer","bearerFormat":"JWT","type":"http","in":"header"}},"schemas":{"LimitSnapshotDto":{"type":"object","properties":{"name":{"type":"string","description":"Salesforce limit name"},"max":{"type":"number","description":"Maximum allowed value"},"used":{"type":"number","description":"Currently used value"},"remaining":{"type":"number","description":"Remaining value"},"usagePct":{"type":"number","description":"Usage percentage (0-100)"},"alertLevel":{"type":"string","enum":["ok","warning","critical"],"description":"Alert level based on usage"}},"required":["name","max","used","remaining","usagePct","alertLevel"]}}},"paths":{"/sfp/api/observability/limits/snapshot":{"get":{"operationId":"ObservabilityController_getSnapshot","summary":"Get current org limits snapshot for a specific environment","description":"Returns lightweight current values only (no time-series data).","parameters":[{"name":"environmentName","required":true,"in":"query","description":"Environment name","schema":{"type":"string"}},{"name":"repositoryIdentifier","required":true,"in":"query","description":"Repository identifier in format owner/repo","schema":{"type":"string"}}],"responses":{"200":{"description":"Snapshot retrieved successfully","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/LimitSnapshotDto"}}}}},"403":{"description":"Forbidden - Requires role: member, owner, application"}},"tags":["Observability / Org Limits"]}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.flxbl.io/flxbl/sfp-server/api-reference/observability-org-limits.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
