APIKeyAuth in scopes

This commit is contained in:
Laura Klünder 2023-12-04 23:13:58 +01:00
parent 68d9d535c7
commit 78ee84842e
2 changed files with 12 additions and 12 deletions

View file

@ -18,7 +18,7 @@ editor_api_router = APIRouter(tags=["editor"], auth=APIKeyAuth(permissions={"edi
@editor_api_router.get('/bounds/', summary="boundaries",
description="get maximum boundaries of everything on the map",
response={200: WithBoundsSchema, **auth_permission_responses},
openapi_extra={"security": [{"APITokenAuth": ["editor_access"]}]})
openapi_extra={"security": [{"APIKeyAuth": ["editor_access"]}]})
@api_etag()
def bounds(request):
return {
@ -29,7 +29,7 @@ def bounds(request):
@editor_api_router.get('/geometrystyles/', summary="geometry styles",
description="get the default colors for each geometry type",
response={200: GeometryStylesSchema, **auth_permission_responses},
openapi_extra={"security": [{"APITokenAuth": ["editor_access"]}]})
openapi_extra={"security": [{"APIKeyAuth": ["editor_access"]}]})
@api_etag(permissions=False)
def geometrystyles(request):
return {
@ -57,7 +57,7 @@ def geometrystyles(request):
description="get the geometries to display on the editor map for a space",
response={200: list[EditorGeometriesElemSchema], **API404.dict(),
**auth_permission_responses},
openapi_extra={"security": [{"APITokenAuth": ["editor_access"]}]})
openapi_extra={"security": [{"APIKeyAuth": ["editor_access"]}]})
@api_etag_with_update_cache_key(etag_func=editor_etag_func)
def space_geometries(request, space_id: EditorID, update_cache_key: UpdateCacheKey = None, **kwargs):
# newapi_etag_with_update_cache_key does the following, don't let it confuse you:
@ -76,7 +76,7 @@ def space_geometries(request, space_id: EditorID, update_cache_key: UpdateCacheK
description="get the geometries to display on the editor map for a space",
response={200: list[EditorGeometriesElemSchema], **API404.dict(),
**auth_permission_responses},
openapi_extra={"security": [{"APITokenAuth": ["editor_access"]}]})
openapi_extra={"security": [{"APIKeyAuth": ["editor_access"]}]})
@api_etag_with_update_cache_key(etag_func=editor_etag_func)
def level_geometries(request, level_id: EditorID, update_cache_key: UpdateCacheKey = None, **kwargs):
# newapi_etag_with_update_cache_key does the following, don't let it confuse you:
@ -114,7 +114,7 @@ def resolve_editor_path_api(request, path):
@editor_api_router.get('/as_api/{path:path}', summary="raw editor access",
response={200: dict, **API404.dict(), **auth_permission_responses},
openapi_extra={"security": [{"APITokenAuth": ["editor_access"]}]})
openapi_extra={"security": [{"APIKeyAuth": ["editor_access"]}]})
@api_etag() # todo: correct?
def view_as_api(request, path: str):
"""
@ -136,7 +136,7 @@ def view_as_api(request, path: str):
@editor_api_router.post('/as_api/{path:path}', summary="raw editor access",
response={200: dict, **API404.dict(), **auth_permission_responses},
openapi_extra={"security": [{"APITokenAuth": ["editor_access", "write"]}]})
openapi_extra={"security": [{"APIKeyAuth": ["editor_access", "write"]}]})
@api_etag() # todo: correct?
def view_as_api(request, path: str):
"""

View file

@ -73,7 +73,7 @@ class FirmwareSchema(Schema):
@mesh_api_router.get('/firmwares/', summary="firmware list",
response={200: list[FirmwareSchema], **validate_responses, **auth_responses},
openapi_extra={"security": [{"APITokenAuth": ["mesh_control"]}]})
openapi_extra={"security": [{"APIKeyAuth": ["mesh_control"]}]})
@paginate
def firmware_list(request):
return FirmwareVersion.objects.all()
@ -81,7 +81,7 @@ def firmware_list(request):
@mesh_api_router.get('/firmwares/{firmware_id}/', summary="firmware by ID",
response={200: FirmwareSchema, **API404.dict(), **auth_responses},
openapi_extra={"security": [{"APITokenAuth": ["mesh_control"]}]})
openapi_extra={"security": [{"APIKeyAuth": ["mesh_control"]}]})
def firmware_by_id(request, firmware_id: int):
try:
return FirmwareVersion.objects.get(id=firmware_id)
@ -99,7 +99,7 @@ def firmware_by_id(request, firmware_id: int):
'url': "https://docs.espressif.com/projects/esp-idf/en/latest/esp32/"
"api-guides/build-system.html#build-system-metadata"
},
"security": [{"APITokenAuth": ["mesh_control"]}]
"security": [{"APIKeyAuth": ["mesh_control"]}]
})
def firmware_build_image(request, firmware_id: int, variant: str):
try:
@ -119,7 +119,7 @@ def firmware_build_image(request, firmware_id: int, variant: str):
'url': "https://docs.espressif.com/projects/esp-idf/en/latest/esp32/"
"api-guides/build-system.html#build-system-metadata"
},
"security": [{"APITokenAuth": ["mesh_control"]}]
"security": [{"APIKeyAuth": ["mesh_control"]}]
})
def firmware_project_description(request, firmware_id: int, variant: str):
try:
@ -157,7 +157,7 @@ class UploadFirmwareSchema(Schema):
@mesh_api_router.post(
'/firmwares/upload', summary="upload firmware",
response={200: FirmwareSchema, **validate_responses, **auth_permission_responses, **APIConflict.dict()},
openapi_extra={"security": [{"APITokenAuth": ["mesh_control", "write"]}]}
openapi_extra={"security": [{"APIKeyAuth": ["mesh_control", "write"]}]}
)
def firmware_upload(request, firmware_data: UploadFirmwareSchema, binary_files: list[UploadedFile]):
binary_files_by_name = {binary_file.name: binary_file for binary_file in binary_files}
@ -228,7 +228,7 @@ class NodeMessageSchema(Schema):
'/messages/', summary="mesh messages list",
description="query and filter all received mesh messages",
response={200: list[NodeMessageSchema], **auth_permission_responses},
openapi_extra={"security": [{"APITokenAuth": ["mesh_control"]}]}
openapi_extra={"security": [{"APIKeyAuth": ["mesh_control"]}]}
)
@paginate
def messages_list(request, filters: Query[MessagesFilter]):