Hi - I answer from the OpenSmartRoute documentation: routing, the API, plans and quotas, self-hosting. Ask away, or open a support ticket if you need a person.
Grounded in the docs - follow a source before acting on it.
web-server-openapi - Skill - OpenSmartRoute
Skillv1.0.0
web-server-openapi
Files in `api/specs/web-server/` are **FastAPI stubs used only to generate `openapi.json`**. They are NOT the runtime implementation.
Instruction file imported from ITISFoundation/osparc-simcore (.github/instructions/web-server-openapi.instructions.md). Copyright stays with the author.
Web-Server OpenAPI Spec Stubs
Files in api/specs/web-server/ are FastAPI stubs used only to generate openapi.json. They are NOT the runtime implementation.
Key Rules
Stubs, not implementation: These FastAPI route functions have empty bodies (e.g. ...). The real handlers live in services/web/server/src/simcore_service_webserver/ using aiohttp.
operationId = function name: The FastAPI function name becomes the operationId in the spec. The corresponding aiohttp route must use name="operationId" to match.
Wrap query models with as_query(): Import from _common.py. This unwraps Pydantic fields into individual query parameters in the spec.
Response wrappers: Use Envelope[T] for single-resource responses and Page[T] for paginated lists (from models_library).
Use it
Copy one of these into your project. Installing also returns the manifest and these snippets.
yaml
targets:
- https://api.opensmartroute.ai/api/v1/registry/itisfoundation-osparc-simcore-web-server-openapi-instructions/manifest # or paste the manifest below
Manifest
An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.
{
"ocm": "1",
"id": "itisfoundation-osparc-simcore-web-server-openapi-instructions",
"kind": "skill",
"name": "web-server-openapi",
"description": "Files in `api/specs/web-server/` are **FastAPI stubs used only to generate `openapi.json`**. They are NOT the runtime implementation.",
"publisher": "ITISFoundation",
"version": "1.0.0",
"capabilities": {
"domains": [
"coding"
],
"tags": [
"skill-md",
"github-instructions"
],
"languages": [
"en"
]
},
"quality_prior": 0.6,
"examples": [
"Files in `api/specs/web-server/` are **FastAPI stubs used only to generate `openapi.json`**. They are NOT the runtime implementation."
],
"primary": false,
"metadata": {
"source": {
"provider": "github-instructions",
"repository": "https://github.com/ITISFoundation/osparc-simcore",
"path": ".github/instructions/web-server-openapi.instructions.md",
"ref": "40a47b843136fe4f058d6af907750f20712dc6fc",
"url": "https://github.com/ITISFoundation/osparc-simcore/blob/40a47b843136fe4f058d6af907750f20712dc6fc/.github/instructions/web-server-openapi.instructions.md",
"key": "ITISFoundation/osparc-simcore/.github/instructions/web-server-openapi.instructions.md"
},
"applies_to": "api/specs/web-server/**"
},
"instructions": "## Web-Server OpenAPI Spec Stubs\n\nFiles in `api/specs/web-server/` are **FastAPI stubs used only to generate `openapi.json`**. They are NOT the runtime implementation.\n\n### Key Rules\n\n1. **Stubs, not implementation**: These FastAPI route functions have empty bodies (e.g. `...`). The real handlers live in `services/web/server/src/simcore_service_webserver/` using aiohttp.\n2. **`operationId` = function name**: The FastAPI function name becomes the `operationId` in the spec. The corresponding aiohttp route must use `name=\"operationId\"` to match.\n3. **Wrap query models with `as_query()`**: Import ",
"cost": {
"context_tokens": 206
}
}
Fetch it by URL: GET /api/v1/registry/itisfoundation-osparc-simcore-web-server-openapi-instructions/manifest?version=1.0.0
Reviews
Star ratings from people who tried it. One review per account; edit yours any time.
No reviews yet. Install it, try it, and be the first to rate it.