DRF Serializers
Connection serializers.
- class smarter.apps.connection.serializers.ApiConnectionSerializer(*args, **kwargs)[source]
Bases:
MetaDataWithOwnershipModelSerializerSerializer for the ApiConnection model.
This serializer exposes API connection configuration fields, including user_profile, name, description, base URL, API key, authentication method, timeout, and optional proxy settings. It is used to serialize and deserialize API connection information.
- Returns:
Serialized API connection configuration.
- Return type:
Note
Sensitive fields such as api_key and proxy_password are handled as Smarter Secret instances and are read-only for security.
See also
ApiConnectionAccountMiniSerializersmarter.apps.secret.serializers.SecretSerializer
Example usage:
from smarter.apps.connection.serializers import ApiConnectionSerializer from smarter.apps.connection.models import ApiConnection api_conn = ApiConnection.objects.first() serializer = ApiConnectionSerializer(api_conn) print(serializer.data) # Output: { # "userProfile": {...}, # "name": "...", # "description": "...", # "baseUrl": "...", # "apiKey": "...", # "authMethod": "...", # "timeout": ..., # "proxyProtocol": "...", # "proxyHost": "...", # "proxyPort": ..., # "proxyUsername": "...", # "proxyPassword": "..." # }
- class smarter.apps.connection.serializers.ConnectionSerializer(*args, **kwargs)[source]
Bases:
MetaDataWithOwnershipModelSerializer
- class smarter.apps.connection.serializers.SqlConnectionSerializer(*args, **kwargs)[source]
Bases:
MetaDataWithOwnershipModelSerializerSerializer for the SqlConnection model.
This serializer exposes SQL connection configuration fields in camelCase format, including connection details and optional proxy settings. It is used to serialize and deserialize SQL connection information.
- Returns:
Serialized SQL connection configuration.
- Return type:
Note
password and proxy_password are references to Smarter Secrets instances. These do not expose raw passwords.
See also
SqlConnection
Example usage:
from smarter.apps.connection.serializers import SqlConnectionSerializer from smarter.apps.connection.models import SqlConnection conn = SqlConnection.objects.first() serializer = SqlConnectionSerializer(conn) print(serializer.data) # Output: { # "name": "...", # "description": "...", # "hostname": "...", # ..... # }
- smarter.apps.connection.serializers.is_sphinx_build()[source]