# Repository / DORA

## Get consolidated DORA dashboard metrics for a repository

> Returns all DORA (DevOps Research and Assessment) dashboard metrics with predefined time ranges. Includes PR metrics, validation metrics, deploy metrics by environment, build metrics, release metrics, install metrics, apex test metrics, and workflow duration metrics. 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":{"DashboardMetricsResponseDto":{"type":"object","properties":{"meta":{"description":"Response metadata","allOf":[{"$ref":"#/components/schemas/DashboardMetricsMetaDto"}]},"metrics":{"description":"Dashboard metrics data","allOf":[{"$ref":"#/components/schemas/DashboardMetricsDataDto"}]}},"required":["meta","metrics"]},"DashboardMetricsMetaDto":{"type":"object","properties":{"range":{"type":"string","enum":["this_week","last_week","this_month","last_month","this_quarter","last_quarter","this_year","last_year","custom"],"description":"Time range type"},"rangeLabel":{"type":"string","description":"Human-readable range label"},"start":{"type":"string","description":"Range start (ISO 8601)"},"end":{"type":"string","description":"Range end (ISO 8601)"},"repositoryIdentifier":{"type":"string","description":"Repository identifier"},"environment":{"type":"string","description":"Environment filter (if applied)"},"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","repositoryIdentifier","generatedAt","cached","queryDurationMs"]},"DashboardMetricsDataDto":{"type":"object","properties":{"pr":{"description":"Pull request metrics","allOf":[{"$ref":"#/components/schemas/PRMetricsDto"}]},"validation":{"description":"Validation metrics","allOf":[{"$ref":"#/components/schemas/ValidationMetricsDto"}]},"deploy":{"description":"Deployment metrics","allOf":[{"$ref":"#/components/schemas/DeployMetricsDto"}]},"build":{"description":"Build metrics","allOf":[{"$ref":"#/components/schemas/BuildMetricsDto"}]},"release":{"description":"Release metrics","allOf":[{"$ref":"#/components/schemas/ReleaseMetricsDto"}]},"install":{"description":"Install metrics","allOf":[{"$ref":"#/components/schemas/InstallMetricsDto"}]},"apexTests":{"description":"Apex test metrics","allOf":[{"$ref":"#/components/schemas/ApexTestMetricsDto"}]},"workflow":{"description":"Workflow duration metrics","allOf":[{"$ref":"#/components/schemas/WorkflowMetricsDto"}]}},"required":["pr","validation","deploy","build","release","install","apexTests","workflow"]},"PRMetricsDto":{"type":"object","properties":{"turnaroundTime":{"description":"PR turnaround time metrics","allOf":[{"$ref":"#/components/schemas/DurationMetricDto"}]},"filesImpacted":{"type":"object","description":"Average files impacted per PR"},"opened":{"description":"Number of PRs opened","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"validationRuns":{"description":"Number of validation runs","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]}},"required":["turnaroundTime","filesImpacted","opened","validationRuns"]},"DurationMetricDto":{"type":"object","properties":{"avg":{"type":"number","description":"Average duration in milliseconds"},"p95":{"type":"number","description":"95th percentile duration in milliseconds"},"unit":{"type":"string","description":"Unit of measurement"}},"required":["avg","unit"]},"CountMetricDto":{"type":"object","properties":{"count":{"type":"number","description":"Count value"}},"required":["count"]},"ValidationMetricsDto":{"type":"object","properties":{"duration":{"description":"Validation duration metrics","allOf":[{"$ref":"#/components/schemas/DurationMetricDto"}]},"succeeded":{"description":"Successful validations","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"failed":{"description":"Failed validations","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"scheduled":{"description":"Scheduled validations","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"successRate":{"type":"number","description":"Success rate (0-1)"}},"required":["duration","succeeded","failed","scheduled","successRate"]},"DeployMetricsDto":{"type":"object","properties":{"byEnvironment":{"type":"object","description":"Deploy metrics grouped by environment"},"totals":{"description":"Aggregate totals across all environments","allOf":[{"$ref":"#/components/schemas/DeployTotalsDto"}]}},"required":["byEnvironment","totals"]},"DeployTotalsDto":{"type":"object","properties":{"scheduled":{"type":"number","description":"Total scheduled deploys"},"succeeded":{"type":"number","description":"Total successful deploys"},"failed":{"type":"number","description":"Total failed deploys"},"successRate":{"type":"number","description":"Overall success rate (0-1)"}},"required":["scheduled","succeeded","failed","successRate"]},"BuildMetricsDto":{"type":"object","properties":{"succeeded":{"description":"Successful builds","allOf":[{"$ref":"#/components/schemas/BuildSucceededDto"}]},"failed":{"description":"Failed builds","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"scheduled":{"description":"Scheduled builds","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"avgCreationTime":{"description":"Average package creation time","allOf":[{"$ref":"#/components/schemas/MetricValueDto"}]},"successRate":{"type":"number","description":"Success rate (0-1)"}},"required":["succeeded","failed","scheduled","avgCreationTime","successRate"]},"BuildSucceededDto":{"type":"object","properties":{"count":{"type":"number","description":"Count value"},"byPackage":{"type":"object","description":"Breakdown by package name"}},"required":["count"]},"MetricValueDto":{"type":"object","properties":{"value":{"type":"number","description":"Metric value"},"unit":{"type":"string","description":"Unit of measurement"}},"required":["value"]},"ReleaseMetricsDto":{"type":"object","properties":{"scheduled":{"description":"Scheduled releases","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"succeeded":{"description":"Successful releases","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"failed":{"description":"Failed releases","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"avgDuration":{"description":"Average release duration","allOf":[{"$ref":"#/components/schemas/MetricValueDto"}]},"avgPackagesPerRelease":{"type":"number","description":"Average packages per release"},"successRate":{"type":"number","description":"Success rate (0-1)"}},"required":["scheduled","succeeded","failed","avgDuration","avgPackagesPerRelease","successRate"]},"InstallMetricsDto":{"type":"object","properties":{"scheduled":{"description":"Scheduled installs","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"succeeded":{"description":"Successful installs","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"failed":{"description":"Failed installs","allOf":[{"$ref":"#/components/schemas/CountMetricDto"}]},"avgDuration":{"description":"Average install duration","allOf":[{"$ref":"#/components/schemas/MetricValueDto"}]},"successRate":{"type":"number","description":"Success rate (0-1)"}},"required":["scheduled","succeeded","failed","avgDuration","successRate"]},"ApexTestMetricsDto":{"type":"object","properties":{"avgExecutionTime":{"description":"Average test execution time","allOf":[{"$ref":"#/components/schemas/MetricValueDto"}]},"avgCoverage":{"type":"number","description":"Average test coverage percentage"},"totalTestsRun":{"type":"number","description":"Total number of tests run"}},"required":["avgExecutionTime","avgCoverage","totalTestsRun"]},"WorkflowMetricsDto":{"type":"object","properties":{"validation":{"description":"Validation workflow metrics","allOf":[{"$ref":"#/components/schemas/WorkflowDurationMetricsDto"}]},"build":{"description":"Build workflow metrics","allOf":[{"$ref":"#/components/schemas/WorkflowDurationMetricsDto"}]},"release":{"description":"Release workflow metrics","allOf":[{"$ref":"#/components/schemas/WorkflowDurationMetricsDto"}]}},"required":["validation","build","release"]},"WorkflowDurationMetricsDto":{"type":"object","properties":{"avgDuration":{"type":"number","description":"Average workflow duration in ms"},"p95":{"type":"number","description":"95th percentile duration in ms"},"count":{"type":"number","description":"Number of workflow runs"}},"required":["avgDuration","count"]}}},"paths":{"/sfp/api/repository/dora/dashboard":{"get":{"operationId":"DoraController_getDashboardMetrics","summary":"Get consolidated DORA dashboard metrics for a repository","description":"Returns all DORA (DevOps Research and Assessment) dashboard metrics with predefined time ranges. Includes PR metrics, validation metrics, deploy metrics by environment, build metrics, release metrics, install metrics, apex test metrics, and workflow duration metrics. Results are cached based on the time range type.","parameters":[{"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":["this_week","last_week","this_month","last_month","this_quarter","last_quarter","this_year","last_year","custom"],"type":"string"}},{"name":"start","required":false,"in":"query","description":"Start timestamp (Unix seconds) - required for custom range","schema":{"type":"number"}},{"name":"end","required":false,"in":"query","description":"End timestamp (Unix seconds) - required for custom range","schema":{"type":"number"}},{"name":"environment","required":false,"in":"query","description":"Filter by environment/targetorg","schema":{"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 metrics retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DashboardMetricsResponseDto"}}}},"400":{"description":"Invalid request parameters"},"403":{"description":"Forbidden - Requires role: member, owner, application"}},"tags":["Repository / DORA"]}}}}
```
