Skip to content
Back to skills

Onboard To Openapi Server

ASecurity

Migrate a Backstage backend plugin from a hand-written Express router to the repository's typed OpenAPI server tooling while preserving routes, auth, permissions, errors, tests, and optional client generation. Use when onboarding createOpenApiRouter or modernizing a router with OpenAPI.

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 4, 2026
ai-agentsexpressgitapibackend

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 4, 2026

npx -y skills add paulasilvatech/awesome-harness-primitives --skill onboard-to-openapi-server --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Onboard To Openapi Server?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Onboard To Openapi Server
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/paulasilvatech-onboard-to-openapi-server/badge)](https://www.skillsdirectory.com/skills/paulasilvatech-onboard-to-openapi-server)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: onboard-to-openapi-server
description: "Migrate a Backstage backend plugin from a hand-written Express router to the repository's typed OpenAPI server tooling while preserving routes, auth, permissions, errors, tests, and optional client generation. Use when onboarding createOpenApiRouter or modernizing a router with OpenAPI."
license: Apache-2.0
metadata:
  source-repository: "https://github.com/backstage/backstage"
  source-commit: "eeac444a9aba7c107525d2a726851e907418c181"
---

# Onboard a Backstage plugin to the OpenAPI server

Reverse-engineer the current router once, make the OpenAPI specification authoritative, and
preserve runtime behavior through generated server types and focused tests.

## When to invoke

- "Convert this Backstage Express router to createOpenApiRouter."
- "Generate an OpenAPI server stub for this backend plugin."
- "Add a typed client for this Backstage API."
- "Migrate router tests to the OpenAPI wrapper."

## Procedure

1. Confirm Backstage core or compatible fork mode, target plugin, green baseline, and exact source
   commit.
2. Read [the pinned upstream procedure](references/upstream/SKILL.md).
3. Keep typed client generation, test-wrapper migration, and changesets opt-in unless already
   required by the task.
4. Inventory every mounted route, parameter, body, response, error, auth check, permission check,
   and nested router.
5. Review the inventory before writing the specification.
6. Author `openapi.yaml` as the new source of truth and validate it with repository tooling.
7. Generate the server stub and switch to `createOpenApiRouter` without dropping auth,
   permissions, middleware, or error behavior.
8. Add or migrate tests for success, validation, auth, permission, and error responses.
9. Run targeted tests and exact root `yarn tsc` for Backstage core.
10. Add optional client, test-wrapper, and changeset work only when in scope.

## Output template

```markdown
## OpenAPI onboarding result

**Plugin:** <path>
**Optional work:** <client, test wrapper, changeset>

| Route | Spec operation | Auth and permission | Test | Status |
| --- | --- | --- | --- | --- |
```

## Quality gate

- [ ] A green baseline exists before migration.
- [ ] Every route and nested router is inventoried.
- [ ] OpenAPI covers parameters, bodies, responses, and errors.
- [ ] Auth, permissions, middleware, and runtime behavior are preserved.
- [ ] Generated artifacts and optional work match the approved scope.
- [ ] Targeted tests and exact root `yarn tsc` pass.

Files in this skill

  • SKILL.md2.5 KB
  • references/upstream/SKILL.md16 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…