# 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.3.0"},"security":[{"access-token":[]}],"components":{"securitySchemes":{"access-token":{"scheme":"bearer","bearerFormat":"JWT","type":"http","in":"header"}},"schemas":{"EnvironmentLimitsSummaryDto":{"type":"object","properties":{"environmentName":{"type":"string","description":"Environment name"},"repositoryIdentifier":{"type":"string","description":"Repository identifier"},"status":{"type":"string","enum":["ok","warning","critical"],"description":"Overall status"},"lastPolledAt":{"type":"string","description":"Last polled timestamp"},"worstLimit":{"description":"Worst limit for this environment","allOf":[{"$ref":"#/components/schemas/WorstLimitDto"}]}},"required":["environmentName","repositoryIdentifier","status","lastPolledAt"]},"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":true,"in":"query","description":"Repository identifier in format owner/repo","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.3.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.3.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"]}}}}
```
