Routes
interfaces.entity.routes
Summary
Entity REST handlers — thin API entry points for the entity resource, wired to openapi.yaml operationIds by the OpenAPI-first router. All handlers delegate to EntityCrudsService via request.app.state.db_resources.
Classes
Functions
create_entity
async
Create a new entity.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request |
Request
|
Incoming HTTP request; carries app.state.db_resources. |
required |
body |
dict
|
Entity payload forwarded to the service. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
EntityDocument |
The created entity. |
delete_entity
async
Delete an entity by id.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request |
Request
|
Incoming HTTP request; carries app.state.db_resources. |
required |
id |
str
|
Entity id. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
Response |
Empty 204 response on successful delete. |
Raises:
| Type | Description |
|---|---|
HTTPException
|
404 when no entity matches the id. |
get_entity
async
Get an entity by id.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request |
Request
|
Incoming HTTP request; carries app.state.db_resources. |
required |
id |
str
|
Entity id. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
EntityDocument |
The matching entity. |
Raises:
| Type | Description |
|---|---|
HTTPException
|
404 when no entity matches the id. |
list_entities
async
List entities with pagination.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request |
Request
|
Incoming HTTP request; carries app.state.db_resources. |
required |
skip |
int
|
Number of entities to skip (offset). Defaults to 0. |
0
|
limit |
int
|
Maximum number of entities to return. Defaults to 100. |
100
|
Returns:
| Type | Description |
|---|---|
|
list[EntityDocument]: Matching entities from EntityCrudsService.search. |
update_entity
async
Update an entity by id.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request |
Request
|
Incoming HTTP request; carries app.state.db_resources. |
required |
id |
str
|
Entity id. |
required |
body |
dict
|
Fields to update, forwarded to the service. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
EntityDocument |
The updated entity. |
Raises:
| Type | Description |
|---|---|
HTTPException
|
404 when no entity matches the id. |
upload_entity_logo
async
Upload a logo for an entity and persist it to the logo directory.
The file contents are hashed to derive a stable filename, written under LOGO_DIR, and the entity's logo field is updated with the served URL.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request |
Request
|
Incoming HTTP request; carries app.state.db_resources. |
required |
id |
str
|
Entity id. |
required |
file |
UploadFile
|
Uploaded logo image. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
dict |
A mapping with keys id, url, logo, and status. |
Raises:
| Type | Description |
|---|---|
HTTPException
|
404 when no entity matches the id. |