How azure/azure-rest-api-specs works
Azure REST API Specifications is the canonical source repository for Azure REST API definitions. Contributors author specifications; the engineering tools support validation, change assessment, breaking-change checks, SDK generation, and release planning. The README documents SDK and API-reference generation as a next step after a specification is complete. Source excerpts show selected internal calls, but many tools and the specification tree were not sampled, so their internal wiring is omitted.
Main entry points: commands.ts Diff commands · src/index.ts TypeSpec validation · src/index.ts Breaking-change runner · package.json API definitions
Components 19
API specifications
- API definitions
specification/automation/resource-manager/Microsoft.Automation/Automation/preview/2023-05-15-preview/package.json
Specification validation
- TypeSpec validation
eng/tools/typespec-validation/src/index.ts - Service manifest rule
eng/tools/typespec-validation/src/rules/service-yaml.ts - Manifest parser
eng/tools/typespec-validation/src/service-yaml.ts - Client import rule
eng/tools/typespec-validation/src/rules/client-tsp-import.ts - Migration comparison
eng/tools/typespec-migration-validation/src/index.ts - Document comparison
eng/tools/typespec-migration-validation/src/compare.ts
Change assessment
- Lint change analysis
eng/tools/lint-diff/src/processChanges.ts - PR impact assessment
eng/tools/summarize-impact/src/impact.ts - Breaking-change runner
eng/tools/openapi-diff-runner/src/index.ts - Diff commands
eng/tools/openapi-diff-runner/src/commands.ts - Diff command helpers
eng/tools/openapi-diff-runner/src/command-helpers.ts - Breaking-change detection
eng/tools/openapi-diff-runner/src/detect-breaking-change.ts - Diff message processing
eng/tools/openapi-diff-runner/src/utils/oad-message-processor.ts
SDK workflows
- SDK generation runner
eng/tools/spec-gen-sdk-runner/src/commands.ts - SDK generation helpers
eng/tools/spec-gen-sdk-runner/src/command-helpers.ts - Release planning
eng/tools/release-plan/src/index.ts
Other components
- Contributors
- SDKs and API docs
Connections 12
- Contributors → API definitions: author specifications
README.md - API definitions → SDKs and API docs: generate next
README.md - Service manifest rule → Manifest parser: parses manifest
eng/tools/typespec-validation/src/rules/service-yaml.ts - TypeSpec validation → Service manifest rule: runs rule
- TypeSpec validation → Client import rule: runs rule
- Migration comparison → Document comparison: compares documents
eng/tools/typespec-migration-validation/src/index.ts - Breaking-change runner → Diff command helpers: builds context
eng/tools/openapi-diff-runner/src/index.ts - Breaking-change runner → Diff commands: validates changes
eng/tools/openapi-diff-runner/src/index.ts - Diff commands → Breaking-change detection: detects changes
eng/tools/openapi-diff-runner/src/commands.ts - Diff commands → Diff message processing: processes messages
eng/tools/openapi-diff-runner/src/commands.ts - SDK generation runner → SDK generation helpers: generates artifacts
eng/tools/spec-gen-sdk-runner/src/commands.ts - Release planning → SDKs and API docs: plans releases