2# +==== BEGIN CatFeeder =================+
5# ...............)..(.')
7# ...............\(__)|
8# Inspired by Joan Stark
9# source https://www.asciiart.eu/
13# FILE: decorator_constants.py
14# CREATION DATE: 24-01-2026
15# LAST Modified: 23:49:49 24-01-2026
17# This is the project in charge of making the connected cat feeder project work.
19# COPYRIGHT: (c) Cat Feeder
20# PURPOSE: This is the file containing the constants for the decorators.
21# Constants for API endpoint decorators.
23# Provides enums and constants to ensure consistency and reduce spelling mistakes in decorator usage.
25# +==== END CatFeeder =================+
30from ...http_codes.http_constants
import DataTypes
as ContentType
34 """Enumeration of supported authentication schemes."""
44 """Enumeration of commonly used HTTP headers."""
45 AUTHORIZATION =
"Authorization"
47 API_TOKEN =
"X-API-Token"
48 CLIENT_ID =
"X-Client-ID"
49 CONTENT_TYPE =
"Content-Type"
50 USER_AGENT =
"User-Agent"
52 ACCEPT_LANGUAGE =
"Accept-Language"
56 """Enumeration of security levels for endpoints."""
58 AUTHENTICATED =
"authenticated"
60 SUPER_ADMIN =
"super_admin"
65 """Enumeration of deployment environments."""
66 DEVELOPMENT =
"development"
69 PRODUCTION =
"production"
74 """Enumeration of HTTP methods."""
85 """Enumeration of common API endpoint categories for tagging."""
92 FRONT_END =
"Front-End"
93 AUTHENTICATED =
"Authenticated"
94 CAT_MANAGEMENT =
"Cat Management"
95 AUTHENTICATION =
"Authentication"
96 FRONT_END_ASSETS =
"Front-End Assets"
100 """Common HTTP status codes for response documentation."""
109 METHOD_NOT_ALLOWED = 405
111 UNPROCESSABLE_ENTITY = 422
112 INTERNAL_SERVER_ERROR = 500
114 SERVICE_UNAVAILABLE = 503
118 """Common query parameter types."""
127BEARER_AUTH = AuthScheme.BEARER.value
128BASIC_AUTH = AuthScheme.BASIC.value
129AUTH_HEADER = CommonHeaders.AUTHORIZATION.value
130API_KEY_HEADER = CommonHeaders.API_KEY.value
133PUBLIC_SECURITY = SecurityLevel.PUBLIC.value
134AUTHENTICATED_SECURITY = SecurityLevel.AUTHENTICATED.value
135ADMIN_SECURITY = SecurityLevel.ADMIN.value
138DEV_ENV = Environment.DEVELOPMENT.value
139PROD_ENV = Environment.PRODUCTION.value
140TEST_ENV = Environment.TESTING.value
143PUBLIC_TAG = TagCategory.PUBLIC.value
144USER_TAG = TagCategory.USERS.value
145ADMIN_TAG = TagCategory.ADMIN.value
148JSON_CONTENT = ContentType.JSON
149FORM_CONTENT = ContentType.FORM
150MULTIPART_CONTENT = ContentType.MULTIPART
151TEXT_CONTENT = ContentType.TEXT
152HTML_CONTENT = ContentType.HTML
153BINARY_CONTENT = ContentType.OCTET_STREAM