API Reference
Polaris API — v0.6.85
Overview
Polaris Technology Catalog API
The Polaris API provides programmatic access to the technology catalog, enabling automation, integration, and custom tooling.
Key Features
- RESTful Design - Resource-based URLs with proper HTTP methods
- Comprehensive Coverage - Systems, Teams, Technologies, Components, Policies, and more
- Developer-Friendly - Clear error messages and consistent response structure
Authentication
Most endpoints require authentication using session-based authentication integrated with the web application.
Authorization Levels:
- Public - No authentication required
- Authenticated - Valid user session required
- Team Member - User must belong to a team
- Team Owner - User must belong to team that owns the resource
- Superuser - User must have superuser role
Response Format
All successful responses follow this structure:
{
"success": true,
"data": [...],
"count": 10
}All errors follow this structure:
{
"statusCode": 404,
"message": "Resource 'example' not found"
}Richardson Maturity Model
This API implements RMM Level 2 with proper use of HTTP methods and status codes.
Health
Health check endpoints
GET
/versionApplication versionGET
/healthHealth check endpointGET
/health/summaryGet cross-system component health summarySystems
System management endpoints
POST
/systemsCreate a new systemGET
/systemsList all systemsPUT
/systems/{name}Fully update/replace a system Auth Required PATCH
/systems/{name}Partially update a system Auth Required GET
/systems/{name}Get system by nameDELETE
/systems/{name}Delete a system Auth Required GET
/api/systems/{name}/scorecardGet the compliance scorecard for a systemPOST
/api/systems/{name}/repositoriesRegister a repository for a systemGET
/api/systems/{name}/repositoriesList repositories for a systemGET
/api/systems/{name}/issuesGet active issues for a systemGET
/systems/{name}/graphGet dependency graph data for a systemComponents
Component management endpoints
GET
/componentsList all componentsGET
/version-sprawl/summaryGet version sprawl counts by severityGET
/version-sprawlList detected version sprawlPOST
/components/undismiss-linkRestore a dismissed component to the link suggestions queue Auth Required GET
/components/link-suggestionsGet pending PURL-to-Technology link suggestions Auth Required GET
/components/groupedList grouped componentsGET
/components/eolGet component end-of-life visibilityGET
/components/dismissed-linksGet components dismissed from the link-suggestions queue Auth Required POST
/components/dismiss-linkDismiss a component from the link suggestions queue Auth Required GET
/components/descriptionFetch package description from registryGET
/components/{key}Get component detailsGET
/components/{key}/dependenciesGet component dependency treeTechnologies
Technology catalog endpoints
POST
/technologiesCreate a new technology from an unlinked component Auth Required GET
/technologiesList all technologiesGET
/technologies/radarGet technologies shaped for the radar visualizationPUT
/technologies/{name}Update a technology Auth Required GET
/technologies/{name}Get technology detailsDELETE
/technologies/{name}Delete a technology Auth Required GET
/technologies/{name}/graphGet impact/blast-radius graph data for a technologyPOST
/technologies/{name}/componentsLink a component to a technology Auth Required POST
/technologies/{name}/approvalsSet a team's TIME approval for a technologyTeams
Team management endpoints
POST
/teamsCreate a new team Auth Required GET
/teamsList all teamsPUT
/teams/{name}Update a team Auth Required GET
/teams/{name}Get team detailsDELETE
/teams/{name}Delete a team Auth Required GET
/teams/{name}/usageGet team technology usageGET
/api/teams/{name}/scorecardGet the compliance scorecard for a teamGET
/teams/{name}/approvalsGet team approvalsVersion Constraints
Version constraint endpoints
Compliance
Compliance violation and audit endpoints
GET
/compliance/violationsGet compliance violationsRepositories
Repository management endpoints
GET
/repositoriesList all repositoriesUsers
User management endpoints
GET
/usersList all users (superuser only) Auth Required GET
/users/{id}Get user detailsApprovals
Technology approval endpoints
GET
/approvalsCheck technology approval statusAdmin
Administrative endpoints
POST
/admin/users/inviteInvite a GitHub user Auth Required POST
/admin/usersCreate a technical userGET
/admin/usersList all users Auth Required POST
/admin/users/{userId}/tokensGenerate an API token for a technical userGET
/admin/users/{userId}/tokensList API tokens for a userPOST
/admin/users/{userId}/teamsAssign user to teams Auth Required PUT
/admin/users/{userId}/roleUpdate user role Auth Required DELETE
/admin/users/{userId}Delete a technical userDELETE
/admin/users/{userId}/tokens/{tokenId}Revoke an API tokenPUT
/admin/licenses/allowedUpdate license allowed status Auth Required GET
/admin/licenses/allowedGet license allowed management data Auth Required POST
/admin/import/githubImport a system from a GitHub repository Auth Required POST
/admin/import/github-orgStart a GitHub owner import job Auth Required GET
/admin/import/jobsList GitHub import jobs Auth Required GET
/admin/import/jobs/{jobId}Get import job status Auth Required DELETE
/admin/import/jobs/{jobId}Delete a GitHub import job Auth Required POST
/admin/import/jobs/{jobId}/cancelCancel a GitHub import job Auth Required POST
/admin/import/github-org/repositoriesPreview GitHub owner repositories Auth Required GET
/admin/health-refresh/jobsList health-refresh jobs Auth Required GET
/admin/health-refresh/jobs/{jobId}Get health-refresh job status Auth Required DELETE
/admin/health-refresh/jobs/{jobId}Delete a health-refresh job Auth Required POST
/admin/health-refresh/jobs/{jobId}/cancelCancel a health-refresh job Auth Required