{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/snyk/main/json-schema/snyk-lesson-assignment-decorated-resource-schema.json", "title": "LessonAssignmentDecoratedResource", "x-generated": "2026-10-04", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/snyk-learn-assignment-api-openapi.yml#/components/schemas/LessonAssignmentDecoratedResource", "properties": { "attributes": { "$ref": "#/$defs/LessonAssignmentDecoratedAttributes" }, "id": { "format": "uuid", "type": "string" }, "type": { "enum": [ "lesson_assignment" ], "type": "string" } }, "required": [ "id", "type", "attributes" ], "type": "object", "$defs": { "LessonAssignmentCreationAttributes": { "properties": { "due_date": { "format": "date", "type": "string" }, "lesson_id": { "type": "string" }, "user_id": { "format": "uuid", "type": "string" } }, "required": [ "user_id", "lesson_id" ], "type": "object" }, "LessonAssignmentDecoratedAttributes": { "allOf": [ { "$ref": "#/$defs/LessonAssignmentRecordAttributes" }, { "properties": { "assigning_user_email": { "type": "string" }, "is_active": { "type": "boolean" }, "learning_path_ids": { "items": { "format": "uuid", "type": "string" }, "type": "array" }, "learning_program_id": { "format": "uuid", "type": "string" }, "lesson_created_at": { "format": "date-time", "type": "string" }, "lesson_slug": { "type": "string" }, "lesson_title": { "type": "string" }, "lesson_updated_at": { "format": "date-time", "type": "string" }, "user_email": { "format": "email", "type": "string" } }, "required": [ "user_email", "lesson_title", "lesson_slug", "lesson_created_at", "lesson_updated_at" ], "type": "object" } ] }, "LessonAssignmentRecordAttributes": { "allOf": [ { "$ref": "#/$defs/LessonAssignmentCreationAttributes" }, { "properties": { "assigning_user_id": { "format": "uuid", "type": "string" }, "completed_date": { "format": "date-time", "type": "string" }, "created_at": { "format": "date-time", "type": "string" }, "updated_at": { "format": "date-time", "type": "string" } }, "required": [ "created_at", "updated_at", "assigning_user_id" ], "type": "object" } ] } } }