julee.api.requests ================== .. py:module:: julee.api.requests .. autoapi-nested-parse:: Pydantic models for API requests. These define the contract between the API and external clients. Following clean architecture principles, request models delegate validation to domain model class methods and reuse field descriptions to avoid duplication while maintaining single source of truth in the domain layer. Classes ------- .. autoapisummary:: julee.api.requests.CreateAssemblySpecificationRequest julee.api.requests.CreateKnowledgeServiceQueryRequest Module Contents --------------- .. py:class:: CreateAssemblySpecificationRequest(/, **data) Bases: :py:obj:`pydantic.BaseModel` Request model for creating an assembly specification. This model defines what clients need to provide when creating a new assembly specification. Validation logic is delegated to the domain model to ensure consistency and avoid duplication. Fields excluded from client control: - assembly_specification_id: Always generated by the server - status: Always set to DRAFT initially by the server - created_at/updated_at: System-managed timestamps .. py:method:: to_domain_model(assembly_specification_id) Convert this request to a complete AssemblySpecification object. :param assembly_specification_id: The ID to assign to the new spec :returns: Complete domain object with system fields :rtype: AssemblySpecification .. py:method:: validate_applicability(v) :classmethod: .. py:method:: validate_jsonschema(v) :classmethod: .. py:method:: validate_knowledge_service_queries(v, info) :classmethod: .. py:method:: validate_name(v) :classmethod: .. py:method:: validate_version(v) :classmethod: .. py:attribute:: applicability :type: str :value: None .. py:attribute:: jsonschema :type: Dict[str, Any] :value: None .. py:attribute:: knowledge_service_queries :type: Dict[str, str] :value: None .. py:attribute:: name :type: str :value: None .. py:attribute:: version :type: str :value: None .. py:class:: CreateKnowledgeServiceQueryRequest(/, **data) Bases: :py:obj:`pydantic.BaseModel` Request model for creating a knowledge service query. This model defines what clients need to provide when creating a new knowledge service query. Validation logic is delegated to the domain model and descriptions are reused to avoid duplication while maintaining single source of truth in the domain layer. Fields excluded from client control: - query_id: Always generated by the server - created_at/updated_at: System-managed timestamps .. py:method:: to_domain_model(query_id) Convert this request to a complete KnowledgeServiceQuery object. :param query_id: The ID to assign to the new query :returns: Complete domain object with system fields :rtype: KnowledgeServiceQuery .. py:method:: validate_knowledge_service_id(v) :classmethod: .. py:method:: validate_name(v) :classmethod: .. py:method:: validate_prompt(v) :classmethod: .. py:attribute:: assistant_prompt :type: Optional[str] :value: None .. py:attribute:: knowledge_service_id :type: str :value: None .. py:attribute:: name :type: str :value: None .. py:attribute:: prompt :type: str :value: None .. py:attribute:: query_metadata :type: Dict[str, Any] :value: None