Skip to content

Routes

openapi_first.templates.model_app.routes

CRUD route handlers bound via OpenAPI operationId.

This module defines OpenAPI-bound operation handlers for a model-based CRUD service. Functions in this module are bound to HTTP routes exclusively via OpenAPI operationId values.

Handlers explicitly control HTTP response status codes to ensure runtime behavior matches the OpenAPI contract. Domain models defined using Pydantic are used for request and response payloads.

No routing decorators, path definitions, or implicit framework behavior appear in this module. All routing, HTTP methods, and schemas are defined in the OpenAPI specification.

Functions

create_item

1
2
3
create_item(
    payload: ItemCreate, response: Response
) -> Item

Create a new item.

Implements the OpenAPI operation identified by operationId: create_item.

Parameters

payload : ItemCreate Request body describing the item to create. response : Response Response object used to set the HTTP status code.

Returns

Item The newly created item.

delete_item

delete_item(item_id: int, response: Response) -> None

Delete an existing item.

Implements the OpenAPI operation identified by operationId: delete_item.

Parameters

item_id : int Identifier of the item to delete. response : Response Response object used to set the HTTP status code.

Returns

None No content.

Raises

HTTPException 404 if the item does not exist.

get_item

get_item(item_id: int) -> Item

Retrieve a single item by ID.

Implements the OpenAPI operation identified by operationId: get_item.

Parameters

item_id : int Identifier of the item to retrieve.

Returns

Item The requested item.

Raises

HTTPException 404 if the item does not exist.

list_items

list_items() -> list[Item]

List all items.

Implements the OpenAPI operation identified by operationId: list_items.

Returns

list[Item] A list of item domain objects.

update_item

update_item(item_id: int, payload: ItemCreate) -> Item

Update an existing item.

Implements the OpenAPI operation identified by operationId: update_item.

Parameters

item_id : int Identifier of the item to update. payload : ItemCreate New item data.

Returns

Item The updated item.

Raises

HTTPException 404 if the item does not exist.