
Backstage Entity Overview
Users
A UserEntity represents an individual—an employee, contractor, or consultant. Each user follows the same YAML structure:- metadata.name: unique identifier for the user
- spec.profile: contains
displayName,email,picture - memberOf: lists Backstage groups the user belongs to
You can synchronize users automatically from LDAP, SSO, or an HR system instead of hand-authoring each YAML file.

Groups
A GroupEntity models teams, business units, or communities of interest. Groups help organize users and reflect your company’s hierarchy:- spec.type: e.g.,
business-unit,team - parent/children: build a hierarchy of groups
- members: list of user
metadata.namevalues
When syncing groups from GitHub or an identity provider, ensure the
metadata.name matches the external group’s identifier to avoid duplicates.
APIs
Backstage treats APIs as first-class entities. Define Component and API resources to model service interfaces:
providesApis) or from the API (apiProvidedBy).
Systems
A SystemEntity groups related components and resources, exposing only public APIs to consumers:


Domains
A DomainEntity defines a logical business area. Systems are grouped under domains to reflect products or services:
Resources
A ResourceEntity represents infrastructure—databases, message queues, buckets, or CDNs—that a system relies on: