{"openapi":"3.0.1","info":{"title":"API for Rule Engine.","description":"This API is for Rule Engine.","version":"1"},"servers":[{"url":"https://educ-rule-engine-api-e8a97a-dev.apps.silver.devops.gov.bc.ca","description":"Generated server url"}],"security":[{"OAUTH2":["RUN_RULE_ENGINE"]}],"paths":{"/api/v1/rule-engine/run-grad-algorithm-rules":{"post":{"tags":["rule-engine-controller"],"operationId":"processGradAlgorithmRules","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuleProcessorData"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/RuleProcessorData"}}}}}}},"/api/v1/metadata":{"get":{"tags":["Metadata"],"summary":"API Metadata","description":"API Metadata","operationId":"generateMetadata","responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"type":"string"}}}}}}}},"components":{"schemas":{"AlgorithmRuleCode":{"type":"object","properties":{"algoRuleCode":{"type":"string"},"ruleImplementation":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"displayOrder":{"type":"integer","format":"int32"},"isActiveRule":{"type":"string"}}},"Assessment":{"type":"object","properties":{"assessmentCode":{"type":"string"},"assessmentName":{"type":"string"},"language":{"type":"string"},"startDate":{"type":"string","format":"date-time"},"endDate":{"type":"string","format":"date-time"}}},"AssessmentRequirement":{"type":"object","properties":{"assessmentRequirementId":{"type":"string","format":"uuid"},"assessmentCode":{"type":"string"},"ruleCode":{"$ref":"#/components/schemas/AssessmentRequirementCode"}}},"AssessmentRequirementCode":{"type":"object","properties":{"assmtRequirementCode":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"effectiveDate":{"type":"string","format":"date-time"},"expiryDate":{"type":"string","format":"date-time"}}},"CourseRequirement":{"type":"object","properties":{"courseRequirementId":{"type":"string","format":"uuid"},"courseCode":{"type":"string"},"courseLevel":{"type":"string"},"ruleCode":{"$ref":"#/components/schemas/CourseRequirementCodeDTO"},"courseName":{"type":"string"}}},"CourseRequirementCodeDTO":{"type":"object","properties":{"courseRequirementCode":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"effectiveDate":{"type":"string","format":"date-time"},"expiryDate":{"type":"string","format":"date-time"}}},"CourseRestriction":{"type":"object","properties":{"courseRestrictionId":{"type":"string","format":"uuid"},"mainCourse":{"type":"string"},"mainCourseLevel":{"type":"string"},"restrictedCourse":{"type":"string"},"restrictedCourseLevel":{"type":"string"},"restrictionStartDate":{"type":"string"},"restrictionEndDate":{"type":"string"}}},"GradAlgorithmGraduationStatus":{"type":"object","properties":{"pen":{"type":"string"},"program":{"type":"string"},"programCompletionDate":{"type":"string"},"gpa":{"type":"string"},"honoursStanding":{"type":"string"},"recalculateGradStatus":{"type":"string"},"schoolOfRecord":{"type":"string"},"schoolOfRecordId":{"type":"string","format":"uuid"},"studentGrade":{"type":"string"},"studentStatus":{"type":"string"},"studentID":{"type":"string","format":"uuid"},"consumerEducationRequirementMet":{"type":"string"},"adultStartDate":{"type":"string","format":"date"}}},"GradRequirement":{"type":"object","properties":{"transcriptRule":{"type":"string"},"description":{"type":"string"},"rule":{"type":"string"}}},"GradSearchStudent":{"type":"object","properties":{"studentID":{"type":"string"},"pen":{"type":"string"},"legalFirstName":{"type":"string"},"legalMiddleNames":{"type":"string"},"legalLastName":{"type":"string"},"dob":{"type":"string"},"sexCode":{"type":"string"},"genderCode":{"type":"string"},"studentCitizenship":{"type":"string"},"usualFirstName":{"type":"string"},"usualMiddleNames":{"type":"string"},"usualLastName":{"type":"string"},"email":{"type":"string"},"emailVerified":{"type":"string"},"deceasedDate":{"type":"string"},"postalCode":{"type":"string"},"mincode":{"type":"string"},"localID":{"type":"string"},"gradeCode":{"type":"string"},"gradeYear":{"type":"string"},"demogCode":{"type":"string"},"statusCode":{"type":"string"},"memo":{"type":"string"},"trueStudentID":{"type":"string"},"program":{"type":"string"},"schoolOfRecord":{"type":"string"},"schoolOfRecordId":{"type":"string"},"schoolOfRecordName":{"type":"string"},"schoolOfRecordindependentAffiliation":{"type":"string"},"studentGrade":{"type":"string"},"studentStatus":{"type":"string"}}},"GraduationProgramCode":{"type":"object","properties":{"programCode":{"type":"string"},"programName":{"type":"string"},"description":{"type":"string"},"displayOrder":{"type":"integer","format":"int32"},"effectiveDate":{"type":"string","format":"date-time"},"expiryDate":{"type":"string","format":"date-time"}}},"LetterGrade":{"type":"object","properties":{"grade":{"type":"string"},"gpaMarkValue":{"type":"string"},"passFlag":{"type":"string"}}},"OptionalGradAlgorithmGraduationStatus":{"type":"object","properties":{"pen":{"type":"string"},"optionalProgramID":{"type":"string","format":"uuid"},"studentOptionalProgramData":{"type":"string"},"optionalProgramCompletionDate":{"type":"string"},"optionalStudentCourses":{"$ref":"#/components/schemas/StudentCourses"},"optionalNonGradReasons":{"type":"array","items":{"$ref":"#/components/schemas/GradRequirement"}},"optionalRequirementsMet":{"type":"array","items":{"$ref":"#/components/schemas/GradRequirement"}},"studentID":{"type":"string","format":"uuid"},"optionalGraduated":{"type":"boolean"}}},"OptionalProgram":{"type":"object","properties":{"optionalProgramID":{"type":"string","format":"uuid"},"optProgramCode":{"type":"string"},"optionalProgramName":{"type":"string"},"description":{"type":"string"},"displayOrder":{"type":"integer","format":"int32"},"effectiveDate":{"type":"string","format":"date-time"},"expiryDate":{"type":"string","format":"date-time"},"graduationProgramCode":{"type":"string"}}},"OptionalProgramRequirement":{"type":"object","properties":{"optionalProgramRequirementID":{"type":"string","format":"uuid"},"optionalProgramID":{"$ref":"#/components/schemas/OptionalProgram"},"optionalProgramRequirementCode":{"$ref":"#/components/schemas/OptionalProgramRequirementCode"}}},"OptionalProgramRequirementCode":{"type":"object","properties":{"optProReqCode":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"requirementTypeCode":{"$ref":"#/components/schemas/RequirementTypeCode"},"requiredCredits":{"type":"string"},"notMetDesc":{"type":"string"},"requiredLevel":{"type":"string"},"languageOfInstruction":{"type":"string"},"activeRequirement":{"type":"string"},"requirementCategory":{"type":"string"},"traxReqNumber":{"type":"string"},"passed":{"type":"boolean"}}},"OptionalProgramRuleProcessor":{"type":"object","properties":{"optionalProgramID":{"type":"string","format":"uuid"},"optionalProgramRules":{"type":"array","items":{"$ref":"#/components/schemas/OptionalProgramRequirement"}},"studentCoursesOptionalProgram":{"type":"array","items":{"$ref":"#/components/schemas/StudentCourse"}},"studentAssessmentsOptionalProgram":{"type":"array","items":{"$ref":"#/components/schemas/StudentAssessment"}},"nonGradReasonsOptionalProgram":{"type":"array","items":{"$ref":"#/components/schemas/GradRequirement"}},"requirementsMetOptionalProgram":{"type":"array","items":{"$ref":"#/components/schemas/GradRequirement"}},"studentOptionalProgramData":{"type":"string"},"optionalProgramName":{"type":"string"},"hasOptionalProgram":{"type":"boolean"},"optionalProgramGraduated":{"type":"boolean"}}},"ProgramAlgorithmRule":{"type":"object","properties":{"programAlgoRuleID":{"type":"string","format":"uuid"},"graduationProgramCode":{"type":"string"},"sortOrder":{"type":"integer","format":"int32"},"algorithmRuleCode":{"$ref":"#/components/schemas/AlgorithmRuleCode"}}},"ProgramRequirement":{"type":"object","properties":{"programRequirementID":{"type":"string","format":"uuid"},"graduationProgramCode":{"type":"string"},"programRequirementCode":{"$ref":"#/components/schemas/ProgramRequirementCode"}}},"ProgramRequirementCode":{"type":"object","properties":{"proReqCode":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"requirementTypeCode":{"$ref":"#/components/schemas/RequirementTypeCode"},"requiredCredits":{"type":"string"},"notMetDesc":{"type":"string"},"requiredLevel":{"type":"string"},"languageOfInstruction":{"type":"string"},"activeRequirement":{"type":"string"},"requirementCategory":{"type":"string"},"traxReqNumber":{"type":"string"},"passed":{"type":"boolean"},"tempFailed":{"type":"boolean"}}},"RequirementTypeCode":{"type":"object","properties":{"reqTypeCode":{"type":"string"},"label":{"type":"string"},"displayOrder":{"type":"integer","format":"int32"},"description":{"type":"string"},"effectiveDate":{"type":"string","format":"date-time"},"expiryDate":{"type":"string","format":"date-time"}}},"RuleProcessorData":{"type":"object","properties":{"gradStudent":{"$ref":"#/components/schemas/GradSearchStudent"},"letterGradeList":{"type":"array","items":{"$ref":"#/components/schemas/LetterGrade"}},"specialCaseList":{"type":"array","items":{"$ref":"#/components/schemas/SpecialCase"}},"algorithmRules":{"type":"array","items":{"$ref":"#/components/schemas/ProgramAlgorithmRule"}},"gradProgramRules":{"type":"array","items":{"$ref":"#/components/schemas/ProgramRequirement"}},"mapOptional":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/OptionalProgramRuleProcessor"}},"studentCourses":{"type":"array","items":{"$ref":"#/components/schemas/StudentCourse"}},"excludedCourses":{"type":"array","items":{"$ref":"#/components/schemas/StudentCourse"}},"excludedAssessments":{"type":"array","items":{"$ref":"#/components/schemas/StudentAssessment"}},"studentAssessments":{"type":"array","items":{"$ref":"#/components/schemas/StudentAssessment"}},"courseRequirements":{"type":"array","items":{"$ref":"#/components/schemas/CourseRequirement"}},"courseRestrictions":{"type":"array","items":{"$ref":"#/components/schemas/CourseRestriction"}},"assessmentRequirements":{"type":"array","items":{"$ref":"#/components/schemas/AssessmentRequirement"}},"assessmentList":{"type":"array","items":{"$ref":"#/components/schemas/Assessment"}},"nonGradReasons":{"type":"array","items":{"$ref":"#/components/schemas/GradRequirement"}},"requirementsMet":{"type":"array","items":{"$ref":"#/components/schemas/GradRequirement"}},"gradStatus":{"$ref":"#/components/schemas/GradAlgorithmGraduationStatus"},"gradOptionalProgramStatus":{"$ref":"#/components/schemas/OptionalGradAlgorithmGraduationStatus"},"gradProgram":{"$ref":"#/components/schemas/GraduationProgramCode"},"school":{"$ref":"#/components/schemas/School"},"ldCounter":{"type":"integer","format":"int32"},"cpList":{"type":"array","items":{"$ref":"#/components/schemas/StudentCareerProgram"}},"consumerEdFlagUsed":{"type":"boolean"},"projected":{"type":"boolean"},"graduated":{"type":"boolean"}}},"School":{"type":"object","properties":{"minCode":{"type":"string"},"schoolId":{"type":"string"},"schoolName":{"type":"string"},"districtId":{"type":"string"},"districtName":{"type":"string"},"transcriptEligibility":{"type":"string"},"certificateEligibility":{"type":"string"},"address1":{"type":"string"},"address2":{"type":"string"},"city":{"type":"string"},"provCode":{"type":"string"},"countryCode":{"type":"string"},"postal":{"type":"string"},"openFlag":{"type":"string"},"schoolCategoryCode":{"type":"string"},"schoolCategoryLegacyCode":{"type":"string"}}},"SpecialCase":{"type":"object","properties":{"spCase":{"type":"string"},"label":{"type":"string"},"displayOrder":{"type":"integer","format":"int32"},"description":{"type":"string"},"passFlag":{"type":"string"},"effectiveDate":{"type":"string","format":"date-time"},"expiryDate":{"type":"string","format":"date-time"}}},"StudentAssessment":{"type":"object","properties":{"pen":{"type":"string"},"assessmentCode":{"type":"string"},"assessmentName":{"type":"string"},"sessionDate":{"type":"string"},"gradReqMet":{"type":"string"},"gradReqMetDetail":{"type":"string"},"specialCase":{"type":"string"},"exceededWriteFlag":{"type":"string"},"proficiencyScore":{"type":"number","format":"double"},"wroteFlag":{"type":"string"},"rawScore":{"type":"number","format":"double"},"percentComplete":{"type":"number","format":"double"},"irtScore":{"type":"number","format":"double"},"equivalentCode":{"type":"string"},"didNotAttemptFlag":{"type":"boolean"},"projected":{"type":"boolean"},"used":{"type":"boolean"},"notCompleted":{"type":"boolean"},"failed":{"type":"boolean"},"duplicate":{"type":"boolean"},"cutOffAssessment":{"type":"boolean"}}},"StudentCareerProgram":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"careerProgramCode":{"type":"string"},"careerProgramName":{"type":"string"},"studentID":{"type":"string","format":"uuid"}}},"StudentCourse":{"type":"object","properties":{"pen":{"type":"string"},"courseCode":{"type":"string"},"courseName":{"type":"string"},"originalCredits":{"type":"integer","format":"int32"},"courseLevel":{"type":"string"},"sessionDate":{"type":"string"},"customizedCourseName":{"type":"string"},"gradReqMet":{"type":"string"},"gradReqMetDetail":{"type":"string"},"completedCoursePercentage":{"type":"number","format":"double"},"completedCourseLetterGrade":{"type":"string"},"interimPercent":{"type":"number","format":"double"},"interimLetterGrade":{"type":"string"},"bestSchoolPercent":{"type":"number","format":"double"},"bestExamPercent":{"type":"number","format":"double"},"schoolPercent":{"type":"number","format":"double"},"examPercent":{"type":"number","format":"double"},"equivOrChallenge":{"type":"string"},"fineArtsAppliedSkills":{"type":"string"},"metLitNumRequirement":{"type":"string"},"credits":{"type":"integer","format":"int32"},"creditsUsedForGrad":{"type":"integer","format":"int32"},"relatedCourse":{"type":"string"},"relatedCourseName":{"type":"string"},"relatedLevel":{"type":"string"},"hasRelatedCourse":{"type":"string"},"genericCourseType":{"type":"string"},"language":{"type":"string"},"workExpFlag":{"type":"string"},"specialCase":{"type":"string"},"toWriteFlag":{"type":"string"},"provExamCourse":{"type":"string"},"boardAuthorityAuthorized":{"type":"boolean"},"projected":{"type":"boolean"},"used":{"type":"boolean"},"usedInMatchRule":{"type":"boolean"},"notCompleted":{"type":"boolean"},"failed":{"type":"boolean"},"duplicate":{"type":"boolean"},"careerPrep":{"type":"boolean"},"locallyDeveloped":{"type":"boolean"},"independentDirectedStudies":{"type":"boolean"},"restricted":{"type":"boolean"},"notEligibleForElective":{"type":"boolean"},"lessCreditCourse":{"type":"boolean"},"validationCourse":{"type":"boolean"},"cutOffCourse":{"type":"boolean"},"grade10Course":{"type":"boolean"}}},"StudentCourses":{"type":"object","properties":{"studentCourseList":{"type":"array","items":{"$ref":"#/components/schemas/StudentCourse"}}}}},"securitySchemes":{"OAUTH2":{"type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"https://soam-dev.apps.silver.devops.gov.bc.ca/auth/realms/master/protocol/openid-connect/token"}}}}}}