diff --git a/README.md b/README.md
index 9f8eed8..a5cd60f 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# UCD.Rosetta.Client
-
+
Official .NET client library for the UC Davis IAM Rosetta API. Provides easy access to identity and access management data from UC Davis IAM services.
diff --git a/UCD.Rosetta.Client/Generated/RosettaApiClient.g.cs b/UCD.Rosetta.Client/Generated/RosettaApiClient.g.cs
index d57d492..43e78ba 100644
--- a/UCD.Rosetta.Client/Generated/RosettaApiClient.g.cs
+++ b/UCD.Rosetta.Client/Generated/RosettaApiClient.g.cs
@@ -6574,6 +6574,13 @@ public partial class EmployeeAssociation
[System.Text.Json.Serialization.JsonPropertyName("position_title")]
public string? Position_title { get; set; } = default!;
+ ///
+ /// Job indicator. Values are N (Not Applicable), S (Secondary Job), P (Primary Job).
+ ///
+ [System.Text.Json.Serialization.JsonPropertyName("job_indicator")]
+ [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.JsonStringEnumConverter))]
+ public EmployeeAssociationJob_indicator? Job_indicator { get; set; } = default!;
+
[System.Text.Json.Serialization.JsonPropertyName("relationship_to_organization")]
public string? Relationship_to_organization { get; set; } = default!;
@@ -8009,6 +8016,13 @@ public partial class Employee_association
[System.Text.Json.Serialization.JsonPropertyName("position_title")]
public string? Position_title { get; set; } = default!;
+ ///
+ /// Job indicator. Values are N (Not Applicable), S (Secondary Job), P (Primary Job).
+ ///
+ [System.Text.Json.Serialization.JsonPropertyName("job_indicator")]
+ [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.JsonStringEnumConverter))]
+ public Employee_associationJob_indicator? Job_indicator { get; set; } = default!;
+
[System.Text.Json.Serialization.JsonPropertyName("relationship_to_organization")]
public string? Relationship_to_organization { get; set; } = default!;
@@ -8101,6 +8115,21 @@ public partial class Employee_association
}
+ [System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.6.2.0 (NJsonSchema v11.5.2.0 (Newtonsoft.Json v13.0.0.0))")]
+ public enum EmployeeAssociationJob_indicator
+ {
+
+ [System.Runtime.Serialization.EnumMember(Value = @"N")]
+ N = 0,
+
+ [System.Runtime.Serialization.EnumMember(Value = @"S")]
+ S = 1,
+
+ [System.Runtime.Serialization.EnumMember(Value = @"P")]
+ P = 2,
+
+ }
+
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.6.2.0 (NJsonSchema v11.5.2.0 (Newtonsoft.Json v13.0.0.0))")]
public partial class Divisions
{
@@ -8215,6 +8244,21 @@ public partial class Mail_id
}
+ [System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.6.2.0 (NJsonSchema v11.5.2.0 (Newtonsoft.Json v13.0.0.0))")]
+ public enum Employee_associationJob_indicator
+ {
+
+ [System.Runtime.Serialization.EnumMember(Value = @"N")]
+ N = 0,
+
+ [System.Runtime.Serialization.EnumMember(Value = @"S")]
+ S = 1,
+
+ [System.Runtime.Serialization.EnumMember(Value = @"P")]
+ P = 2,
+
+ }
+
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.6.2.0 (NJsonSchema v11.5.2.0 (Newtonsoft.Json v13.0.0.0))")]
public partial class Subdivisions2
{
diff --git a/specs/rosetta-api.graphql b/specs/rosetta-api.graphql
index de3f2cc..00ec559 100644
--- a/specs/rosetta-api.graphql
+++ b/specs/rosetta-api.graphql
@@ -178,6 +178,8 @@ type EmployeeAssociation {
employee_id: String
position_number: String
position_title: String
+ "Values: N (Not Applicable), S (Secondary Job), P (Primary Job)."
+ job_indicator: String
relationship_to_organization: String
employee_classification: String
employee_classification_description: String
@@ -238,6 +240,8 @@ type PpsAssociationRecord {
employee_record: String
position_number: String
position_title: String
+ "Values: N (Not Applicable), S (Secondary Job), P (Primary Job)."
+ job_indicator: String
relationship_to_organization: String
employee_classification: String
employee_classification_description: String
@@ -461,6 +465,8 @@ input PeopleFilterInput {
iamid: String
firstname: String
lastname: String
+ firstnamelike: String
+ lastnamelike: String
manager_iam_id: String
iamids: [String]
email: String
diff --git a/specs/rosetta-api.json b/specs/rosetta-api.json
index 244de92..cf76310 100644
--- a/specs/rosetta-api.json
+++ b/specs/rosetta-api.json
@@ -12,7 +12,7 @@
],
"externalDocs": {
"url": "http://",
- "description": "```\n###TYPES###\n\n##Groups##\ntype GroupBucket {\n sourceName: String\n sourceId: String\n groups: [String]\n}\n\ntype GroupSource {\n sourceName: String\n sourceId: String\n}\n\ntype GroupMembership {\n name: String\n iamid: String\n loginId: String\n employeeId: String\n email: String\n groups: [GroupBucket]\n}\n\ntype GroupMember {\n name: String\n iamid: String\n email: String\n}\n\ntype GroupById {\n groupName: String\n groupSource: String\n groupId: String\n groupMembers: [GroupMember]\n}\n\n##Roles##\ntype Role {\n roleName: String\n roleId: String\n description: String\n enabled: Boolean\n requestable: Boolean\n}\n\ntype RoleMembership {\n name: String\n iamid: String\n loginId: String\n employeeId: String\n email: String\n roles: [Role]\n}\n\ntype RoleById {\n roleName: String\n roleId: String\n description: String\n enabled: Boolean\n requestable: Boolean\n roleMembers: [GroupMember]\n}\n\n##People##\ntype ProvisioningStatus {\n primary: String\n primary_override: String\n cosmos_affiliate: String\n cpe_affiliate: String\n employee: String\n faculty: String\n health_affiliate: String\n student: String\n student_applicant: String\n temporary_affiliate: String\n ucanr_affiliate: String\n usda_whnrc_affiliate: String\n}\n\ntype EmploymentStatus {\n is_without_salary: String\n is_academic: String\n is_academic_senate: String\n is_academic_federation: String\n is_faculty: String\n is_ladder_rank: String\n is_manager: String\n is_teaching_faculty: String\n is_msp: String\n is_ssp: String\n is_supervisor: String\n is_msp_career: String\n is_msp_career_partial_year: String\n is_msp_contract: String\n is_msp_casual: String\n is_msp_senior_management: String\n is_ssp_career: String\n is_ssp_career_partial_year: String\n is_ssp_contract: String\n is_ssp_casual: String\n is_ssp_casual_restricted: String\n is_ssp_per_diem: String\n is_ssp_floater: String\n is_health_employee: String\n is_campus_employee: String\n}\n\ntype Affiliation {\n employee: String\n faculty: String\n student: String\n student_applicant: String\n health_affiliate: String\n temporary_affiliate: String\n cosmos_affiliate: String\n cpe_affiliate: String\n ucanr_affiliate: String\n usda_whnrc_affiliate: String\n}\n\ntype NameRecord {\n lived_first_name: String\n lived_middle_name: String\n lived_last_name: String\n lived_pronouns: String\n legal_first_name: String\n legal_middle_name: String\n legal_last_name: String\n}\n\ntype MailId {\n campus: String\n health: String\n}\n\ntype IdentityIds {\n iam_id: String\n login_id: String\n student_id: String\n mothra_id: String\n employee_id: String\n mail_id: MailId\n pidm: String\n pps_id: String\n cosmos_id: String\n cpe_id: String\n health_affiliate_id: String\n ucanr_id: String\n usda_whnrc_id: String\n affiliate_id: String\n ucnet_id: String\n}\n\ntype EmailAddresses {\n campus: String\n health: String\n personal: String\n}\n\ntype PhoneNumbers {\n primary: String\n work: String\n personal: String\n}\n\ntype StudentAssociation {\n college_code: String\n college_title: String\n major_code: String\n major_title: String\n academic_level: String\n class_level: String\n}\n\ntype EmployeeAssociation {\n iam_id: String\n employee_record: String\n employee_id: String\n position_number: String\n position_title: String\n relationship_to_organization: String\n employee_classification: String\n employee_classification_description: String\n status: String\n hire_date: String\n start_date: String\n termination_date: String\n fte_percentage: String\n job_type_id: String\n job_type_description: String\n job_family_id: String\n job_family_description: String\n organization_id: String\n organization_title: String\n division_id: String\n division_title: String\n subdivision_id: String\n subdivision_title: String\n subdivision_l4_id: String\n subdivision_l4_title: String\n business_unit_id: String\n business_unit_title: String\n department_id: String\n department_title: String\n department_short_title: String\n reports_to_position: String\n reports_to_iam_id: String\n reports_to_employee_id: String\n is_health_position: String\n is_campus_position: String\n}\n\ntype Person {\n iam_id: ID\n displayname: String\n birth_date: String\n manager_iam_id: String\n provisioning_status: [ProvisioningStatus]\n affiliation: Affiliation\n employment_status: EmploymentStatus\n name: [NameRecord]\n id: [IdentityIds]\n email: [EmailAddresses]\n phone: [PhoneNumbers]\n student_association: [StudentAssociation]\n employee_association: [EmployeeAssociation]\n modified_date: String\n create_date: String\n}\n\n##Position Association##\n\ntype PpsAssociationRecord {\n iam_id: String\n reports_to_iam_id: String\n reports_to_employee_id: String\n employee_id: String\n employee_record: String\n position_number: String\n position_title: String\n relationship_to_organization: String\n employee_classification: String\n employee_classification_description: String\n status: String\n hire_date: String\n start_date: String\n termination_date: String\n fte_percentage: String\n reports_to_position: String\n job_type_id: String\n job_type_description: String\n job_family_id: String\n job_family_description: String\n organization_id: String\n organization_title: String\n division_id: String\n division_title: String\n subdivision_id: String\n subdivision_title: String\n business_unit_id: String\n business_unit_title: String\n department_id: String\n department_title: String\n department_short_title: String\n is_health_position: String\n is_campus_position: String\n modified_date: String\n create_date: String\n}\n\n##Student Association##\ntype SisAssociationRecord {\n iam_id: String\n pidm: String\n student_id: String\n college_code: String\n college_title: String\n major_code: String\n major_title: String\n lvl_affiliation_code: String\n cls_affiliation_code: String\n rank: String\n modified_date: String\n create_date: String\n}\n\n##College Info##\ntype College {\n college_code: String\n college_title: String\n}\n\n##Major Info##\ntype Major {\n major_code: String\n major_title: String\n major_status: String\n}\n\ntype JobTypeId {\n job_type_id: String\n job_type_description: String\n}\n\n##Organizations##\ntype OrganizationDepartmentNode {\n department_id: String\n department_title: String\n department_short_title: String\n}\n\ntype OrganizationSubdivisionL4Node {\n subdivision_l4_id: String\n subdivision_l4_title: String\n departments: [OrganizationDepartmentNode]\n}\n\ntype OrganizationSubdivisionNode {\n subdivision_id: String\n subdivision_title: String\n subdivision_l4s: [OrganizationSubdivisionL4Node]\n}\n\ntype OrganizationDivisionNode {\n division_id: String\n division_title: String\n subdivisions: [OrganizationSubdivisionNode]\n}\n\ntype OrganizationNode {\n organization_id: String\n organization_title: String\n divisions: [OrganizationDivisionNode]\n}\n\ntype OrganizationDivisionDetail {\n organization_id: String\n organization_title: String\n division_id: String\n division_title: String\n subdivisions: [OrganizationSubdivisionNode]\n}\n\ntype OrganizationSubdivisionDetail {\n organization_id: String\n organization_title: String\n division_id: String\n division_title: String\n subdivision_id: String\n subdivision_title: String\n subdivision_l4s: [OrganizationSubdivisionL4Node]\n}\n\ntype OrganizationSubdivisionL4Detail {\n organization_id: String\n organization_title: String\n division_id: String\n division_title: String\n subdivision_id: String\n subdivision_title: String\n subdivision_l4_id: String\n subdivision_l4_title: String\n departments: [OrganizationDepartmentNode]\n}\n\ntype OrganizationDepartmentDetail {\n department_id: String\n department_title: String\n department_short_title: String\n subdivision_id: String\n subdivision_title: String\n subdivision_l4_id: String\n subdivision_l4_title: String\n division_id: String\n division_title: String\n organization_id: String\n organization_title: String\n}\n\n##Accounts##\ntype AccountSourceCount {\n sourceId: String\n sourceName: String\n accountCount: Int\n}\n\ntype AccountSource {\n sourceId: String\n sourceName: String\n}\n\ntype AccountSummary {\n sourceName: String\n accountId: String\n isAdmin: String\n objectPath: String\n objectType: String\n lastLoginTime: String\n created: String\n modified: String\n}\n\ntype AccountLookupIdentity {\n identityId: String\n name: String\n iamid: String\n loginId: String\n email: String\n accounts: [AccountSummary]\n}\n\n##Meta Info##\ntype Meta {\n x_total_count: Int\n x_response_count: Int\n}\n\nenum AcademicLevel {\n GR\n LW\n MD\n ND\n U2\n UG\n UL\n VM\n graduate\n undergrad\n}\n\nenum ClassLevel {\n D1\n D2\n FR\n GM\n JR\n L1\n L2\n L3\n LM\n M1\n M2\n M3\n M4\n ND\n PB\n SO\n SR\n U2\n UL\n V1\n V2\n V3\n V4\n VALUE_00\n}\n\n###INPUTS###\n###Query parameter / filters for queries###\ninput PeopleFilterInput {\n iamid: String\n firstname: String\n lastname: String\n manager_iam_id: String\n iamids: [String]\n email: String\n emails: [String]\n loginid: String\n employeeid: String\n studentid: String\n mailid: String\n pidm: String\n mothraid: String\n pps_id: String\n cosmos_id: String\n cpe_id: String\n health_affiliate_id: String\n ucanr_id: String\n usda_whnrc_id: String\n affiliate_id: String\n ucnet_id: String\n affiliationContains: String\n affiliationNotContains: String\n affiliationState: String = \"withAffiliation\"\n department: String\n collegecode: String\n majorcode: String\n academic_level: AcademicLevel\n class_level: ClassLevel\n organizationid: String\n divisionid: String\n subdivisionid: String\n subdivisionl4id: String\n employmentStatus: String\n count: Boolean = false\n modifiedsince: String\n limit: Int = 10000\n offset: Int = 0\n}\n\ninput CollegesFilterInput {\n college_code: String\n college_title: String\n}\n\ninput MajorsFilterInput {\n major_code: String\n major_title: String\n major_status: String\n}\n\ninput GroupsFilterInput {\n source: String\n limit: Int = 10000\n}\n\ninput GroupMembershipFilterInput {\n iamid: String\n iamids: [String]\n email: String\n loginid: String\n employeeid: String\n source: String\n limit: Int = 10000\n}\n\ninput GroupsByIdFilterInput {\n id: String!\n limit: Int = 10000\n}\n\ninput RolesFilterInput {\n limit: Int = 10000\n}\n\ninput RoleMembershipFilterInput {\n iamid: String\n iamids: [String]\n email: String\n loginid: String\n employeeid: String\n limit: Int = 10000\n}\n\ninput RolesByIdFilterInput {\n id: String!\n limit: Int = 10000\n}\n\ninput EmployeeAssociationFilterInput {\n iamid: String\n iamids: [String]\n loginid: String\n employeeid: String\n jobtypeid: String\n organizationid: String\n departmentid: String\n divisionid: String\n subdivisionid: String\n subdivisionl4id: String\n count: Boolean = false\n modifiedsince: String\n offset: Int = 0\n limit: Int = 1000\n}\n\n input EmployeeAssociationJobTypeIdsFilterInput {\n job_type_id: String\n jobtypeid: String\n }\n\n input StudentAssociationFilterInput {\n iamid: String\n iamids: [String]\n pidm: String\n studentid: String\n majorcode: String\n collegecode: String\n count: Boolean = false\n modifiedsince: String\n offset: Int = 0\n limit: Int = 1000\n}\n\ninput OrganizationHierarchyFilterInput {\n departmentid: String\n subdivisionid: String\n subdivisionl4id: String\n organizationid: String\n divisionid: String\n limit: Int = 10000\n}\n\ninput OrganizationByIdFilterInput {\n id: String!\n departmentid: String\n subdivisionid: String\n subdivisionl4id: String\n organizationid: String\n divisionid: String\n limit: Int = 10000\n}\n\ninput AccountLookupFilterInput {\n iamid: String\n iamids: [String]\n email: String\n loginid: String\n}\n\n##Results##\ntype PeopleResult {\n results: [Person]\n meta: Meta\n}\n\ntype EmployeeAssociationResult {\n results: [PpsAssociationRecord]\n meta: Meta\n}\n\ntype StudentAssociationResult {\n results: [SisAssociationRecord]\n meta: Meta\n}\n\ntype MajorsResult {\n results: [Major]\n}\n\ntype JobTypeIdsResult {\n results: [JobTypeId]\n}\n\ntype CollegeResult {\n results: [College]\n}\n\ntype GroupsResult {\n results: [GroupBucket]\n}\n\ntype GroupSourceResults {\n results: [GroupSource]\n}\n\ntype GroupMembershipResult {\n results: [GroupMembership]\n}\n\ntype GroupByIdResult {\n results: GroupById\n}\n\ntype RolesResult {\n results: [Role]\n}\n\ntype RoleMembershipResult {\n results: [RoleMembership]\n}\n\ntype RoleByIdResult {\n results: RoleById\n}\n\ntype OrganizationsResult {\n results: [OrganizationNode]\n}\n\ntype OrganizationByIdResult {\n results: OrganizationNode\n}\n\ntype OrganizationDivisionByIdResult {\n results: OrganizationDivisionDetail\n}\n\ntype OrganizationSubdivisionByIdResult {\n results: OrganizationSubdivisionDetail\n}\n\ntype OrganizationSubdivisionL4ByIdResult {\n results: OrganizationSubdivisionL4Detail\n}\n\ntype OrganizationDepartmentByIdResult {\n results: OrganizationDepartmentDetail\n}\n\ntype AccountSourceCountsResult {\n results: [AccountSourceCount]\n}\n\ntype AccountSourcesResult {\n results: [AccountSource]\n}\n\ntype AccountLookupResult {\n results: [AccountLookupIdentity]\n}\n\n##Query types##\ntype Query {\n #Colleges\n colleges(filter: CollegesFilterInput): CollegeResult\n\n #Majors\n majors(filter: MajorsFilterInput): MajorsResult\n \n #People\n people(filter: PeopleFilterInput): PeopleResult\n people_students(filter: PeopleFilterInput): PeopleResult\n people_employees(filter: PeopleFilterInput): PeopleResult\n people_faculty(filter: PeopleFilterInput): PeopleResult\n people_external(filter: PeopleFilterInput): PeopleResult\n \n #Groups\n groups(filter: GroupsFilterInput): GroupsResult\n groupSources: GroupSourceResults\n groupMembership(filter: GroupMembershipFilterInput): GroupMembershipResult\n groupById(filter: GroupsByIdFilterInput): GroupByIdResult\n\n #Roles\n roles(filter: RolesFilterInput): RolesResult\n roleMembership(filter: RoleMembershipFilterInput): RoleMembershipResult\n roleById(filter: RolesByIdFilterInput): RoleByIdResult\n\n #Position Association\n employee_association(filter: EmployeeAssociationFilterInput): EmployeeAssociationResult\n employee_association_jobtypeids(filter: EmployeeAssociationJobTypeIdsFilterInput): JobTypeIdsResult\n\n #Organizations\n organizations(filter: OrganizationHierarchyFilterInput): OrganizationsResult\n organizationById(filter: OrganizationByIdFilterInput): OrganizationByIdResult\n organizationDivisions(filter: OrganizationHierarchyFilterInput): OrganizationsResult\n organizationDivisionById(filter: OrganizationByIdFilterInput): OrganizationDivisionByIdResult\n organizationSubdivisions(filter: OrganizationHierarchyFilterInput): OrganizationsResult\n organizationSubdivisionById(filter: OrganizationByIdFilterInput): OrganizationSubdivisionByIdResult\n organizationSubdivisionL4s(filter: OrganizationHierarchyFilterInput): OrganizationsResult\n organizationSubdivisionL4ById(filter: OrganizationByIdFilterInput): OrganizationSubdivisionL4ByIdResult\n organizationDepartments(filter: OrganizationHierarchyFilterInput): OrganizationsResult\n organizationDepartmentById(filter: OrganizationByIdFilterInput): OrganizationDepartmentByIdResult\n\n #Accounts\n accounts: AccountSourceCountsResult\n accountLookup(filter: AccountLookupFilterInput): AccountLookupResult\n accountSources: AccountSourcesResult\n\n #Student Association\n student_association(filter: StudentAssociationFilterInput): StudentAssociationResult\n}\n```",
+ "description": "```\n###TYPES###\n\n##Groups##\ntype GroupBucket {\n sourceName: String\n sourceId: String\n groups: [String]\n}\n\ntype GroupSource {\n sourceName: String\n sourceId: String\n}\n\ntype GroupMembership {\n name: String\n iamid: String\n loginId: String\n employeeId: String\n email: String\n groups: [GroupBucket]\n}\n\ntype GroupMember {\n name: String\n iamid: String\n email: String\n}\n\ntype GroupById {\n groupName: String\n groupSource: String\n groupId: String\n groupMembers: [GroupMember]\n}\n\n##Roles##\ntype Role {\n roleName: String\n roleId: String\n description: String\n enabled: Boolean\n requestable: Boolean\n}\n\ntype RoleMembership {\n name: String\n iamid: String\n loginId: String\n employeeId: String\n email: String\n roles: [Role]\n}\n\ntype RoleById {\n roleName: String\n roleId: String\n description: String\n enabled: Boolean\n requestable: Boolean\n roleMembers: [GroupMember]\n}\n\n##People##\ntype ProvisioningStatus {\n primary: String\n primary_override: String\n cosmos_affiliate: String\n cpe_affiliate: String\n employee: String\n faculty: String\n health_affiliate: String\n student: String\n student_applicant: String\n temporary_affiliate: String\n ucanr_affiliate: String\n usda_whnrc_affiliate: String\n}\n\ntype EmploymentStatus {\n is_without_salary: String\n is_academic: String\n is_academic_senate: String\n is_academic_federation: String\n is_faculty: String\n is_ladder_rank: String\n is_manager: String\n is_teaching_faculty: String\n is_msp: String\n is_ssp: String\n is_supervisor: String\n is_msp_career: String\n is_msp_career_partial_year: String\n is_msp_contract: String\n is_msp_casual: String\n is_msp_senior_management: String\n is_ssp_career: String\n is_ssp_career_partial_year: String\n is_ssp_contract: String\n is_ssp_casual: String\n is_ssp_casual_restricted: String\n is_ssp_per_diem: String\n is_ssp_floater: String\n is_health_employee: String\n is_campus_employee: String\n}\n\ntype Affiliation {\n employee: String\n faculty: String\n student: String\n student_applicant: String\n health_affiliate: String\n temporary_affiliate: String\n cosmos_affiliate: String\n cpe_affiliate: String\n ucanr_affiliate: String\n usda_whnrc_affiliate: String\n}\n\ntype NameRecord {\n lived_first_name: String\n lived_middle_name: String\n lived_last_name: String\n lived_pronouns: String\n legal_first_name: String\n legal_middle_name: String\n legal_last_name: String\n}\n\ntype MailId {\n campus: String\n health: String\n}\n\ntype IdentityIds {\n iam_id: String\n login_id: String\n student_id: String\n mothra_id: String\n employee_id: String\n mail_id: MailId\n pidm: String\n pps_id: String\n cosmos_id: String\n cpe_id: String\n health_affiliate_id: String\n ucanr_id: String\n usda_whnrc_id: String\n affiliate_id: String\n ucnet_id: String\n}\n\ntype EmailAddresses {\n campus: String\n health: String\n personal: String\n}\n\ntype PhoneNumbers {\n primary: String\n work: String\n personal: String\n}\n\ntype StudentAssociation {\n college_code: String\n college_title: String\n major_code: String\n major_title: String\n academic_level: String\n class_level: String\n}\n\ntype EmployeeAssociation {\n iam_id: String\n employee_record: String\n employee_id: String\n position_number: String\n position_title: String\n \"Values: N (Not Applicable), S (Secondary Job), P (Primary Job).\"\n job_indicator: String\n relationship_to_organization: String\n employee_classification: String\n employee_classification_description: String\n status: String\n hire_date: String\n start_date: String\n termination_date: String\n fte_percentage: String\n job_type_id: String\n job_type_description: String\n job_family_id: String\n job_family_description: String\n organization_id: String\n organization_title: String\n division_id: String\n division_title: String\n subdivision_id: String\n subdivision_title: String\n subdivision_l4_id: String\n subdivision_l4_title: String\n business_unit_id: String\n business_unit_title: String\n department_id: String\n department_title: String\n department_short_title: String\n reports_to_position: String\n reports_to_iam_id: String\n reports_to_employee_id: String\n is_health_position: String\n is_campus_position: String\n}\n\ntype Person {\n iam_id: ID\n displayname: String\n birth_date: String\n manager_iam_id: String\n provisioning_status: [ProvisioningStatus]\n affiliation: Affiliation\n employment_status: EmploymentStatus\n name: [NameRecord]\n id: [IdentityIds]\n email: [EmailAddresses]\n phone: [PhoneNumbers]\n student_association: [StudentAssociation]\n employee_association: [EmployeeAssociation]\n modified_date: String\n create_date: String\n}\n\n##Position Association##\n\ntype PpsAssociationRecord {\n iam_id: String\n reports_to_iam_id: String\n reports_to_employee_id: String\n employee_id: String\n employee_record: String\n position_number: String\n position_title: String\n \"Values: N (Not Applicable), S (Secondary Job), P (Primary Job).\"\n job_indicator: String\n relationship_to_organization: String\n employee_classification: String\n employee_classification_description: String\n status: String\n hire_date: String\n start_date: String\n termination_date: String\n fte_percentage: String\n reports_to_position: String\n job_type_id: String\n job_type_description: String\n job_family_id: String\n job_family_description: String\n organization_id: String\n organization_title: String\n division_id: String\n division_title: String\n subdivision_id: String\n subdivision_title: String\n business_unit_id: String\n business_unit_title: String\n department_id: String\n department_title: String\n department_short_title: String\n is_health_position: String\n is_campus_position: String\n modified_date: String\n create_date: String\n}\n\n##Student Association##\ntype SisAssociationRecord {\n iam_id: String\n pidm: String\n student_id: String\n college_code: String\n college_title: String\n major_code: String\n major_title: String\n lvl_affiliation_code: String\n cls_affiliation_code: String\n rank: String\n modified_date: String\n create_date: String\n}\n\n##College Info##\ntype College {\n college_code: String\n college_title: String\n}\n\n##Major Info##\ntype Major {\n major_code: String\n major_title: String\n major_status: String\n}\n\ntype JobTypeId {\n job_type_id: String\n job_type_description: String\n}\n\n##Organizations##\ntype OrganizationDepartmentNode {\n department_id: String\n department_title: String\n department_short_title: String\n}\n\ntype OrganizationSubdivisionL4Node {\n subdivision_l4_id: String\n subdivision_l4_title: String\n departments: [OrganizationDepartmentNode]\n}\n\ntype OrganizationSubdivisionNode {\n subdivision_id: String\n subdivision_title: String\n subdivision_l4s: [OrganizationSubdivisionL4Node]\n}\n\ntype OrganizationDivisionNode {\n division_id: String\n division_title: String\n subdivisions: [OrganizationSubdivisionNode]\n}\n\ntype OrganizationNode {\n organization_id: String\n organization_title: String\n divisions: [OrganizationDivisionNode]\n}\n\ntype OrganizationDivisionDetail {\n organization_id: String\n organization_title: String\n division_id: String\n division_title: String\n subdivisions: [OrganizationSubdivisionNode]\n}\n\ntype OrganizationSubdivisionDetail {\n organization_id: String\n organization_title: String\n division_id: String\n division_title: String\n subdivision_id: String\n subdivision_title: String\n subdivision_l4s: [OrganizationSubdivisionL4Node]\n}\n\ntype OrganizationSubdivisionL4Detail {\n organization_id: String\n organization_title: String\n division_id: String\n division_title: String\n subdivision_id: String\n subdivision_title: String\n subdivision_l4_id: String\n subdivision_l4_title: String\n departments: [OrganizationDepartmentNode]\n}\n\ntype OrganizationDepartmentDetail {\n department_id: String\n department_title: String\n department_short_title: String\n subdivision_id: String\n subdivision_title: String\n subdivision_l4_id: String\n subdivision_l4_title: String\n division_id: String\n division_title: String\n organization_id: String\n organization_title: String\n}\n\n##Accounts##\ntype AccountSourceCount {\n sourceId: String\n sourceName: String\n accountCount: Int\n}\n\ntype AccountSource {\n sourceId: String\n sourceName: String\n}\n\ntype AccountSummary {\n sourceName: String\n accountId: String\n isAdmin: String\n objectPath: String\n objectType: String\n lastLoginTime: String\n created: String\n modified: String\n}\n\ntype AccountLookupIdentity {\n identityId: String\n name: String\n iamid: String\n loginId: String\n email: String\n accounts: [AccountSummary]\n}\n\n##Meta Info##\ntype Meta {\n x_total_count: Int\n x_response_count: Int\n}\n\nenum AcademicLevel {\n GR\n LW\n MD\n ND\n U2\n UG\n UL\n VM\n graduate\n undergrad\n}\n\nenum ClassLevel {\n D1\n D2\n FR\n GM\n JR\n L1\n L2\n L3\n LM\n M1\n M2\n M3\n M4\n ND\n PB\n SO\n SR\n U2\n UL\n V1\n V2\n V3\n V4\n VALUE_00\n}\n\n###INPUTS###\n###Query parameter / filters for queries###\ninput PeopleFilterInput {\n iamid: String\n firstname: String\n lastname: String\n firstnamelike: String\n lastnamelike: String\n manager_iam_id: String\n iamids: [String]\n email: String\n emails: [String]\n loginid: String\n employeeid: String\n studentid: String\n mailid: String\n pidm: String\n mothraid: String\n pps_id: String\n cosmos_id: String\n cpe_id: String\n health_affiliate_id: String\n ucanr_id: String\n usda_whnrc_id: String\n affiliate_id: String\n ucnet_id: String\n affiliationContains: String\n affiliationNotContains: String\n affiliationState: String = \"withAffiliation\"\n department: String\n collegecode: String\n majorcode: String\n academic_level: AcademicLevel\n class_level: ClassLevel\n organizationid: String\n divisionid: String\n subdivisionid: String\n subdivisionl4id: String\n employmentStatus: String\n count: Boolean = false\n modifiedsince: String\n limit: Int = 10000\n offset: Int = 0\n}\n\ninput CollegesFilterInput {\n college_code: String\n college_title: String\n}\n\ninput MajorsFilterInput {\n major_code: String\n major_title: String\n major_status: String\n}\n\ninput GroupsFilterInput {\n source: String\n limit: Int = 10000\n}\n\ninput GroupMembershipFilterInput {\n iamid: String\n iamids: [String]\n email: String\n loginid: String\n employeeid: String\n source: String\n limit: Int = 10000\n}\n\ninput GroupsByIdFilterInput {\n id: String!\n limit: Int = 10000\n}\n\ninput RolesFilterInput {\n limit: Int = 10000\n}\n\ninput RoleMembershipFilterInput {\n iamid: String\n iamids: [String]\n email: String\n loginid: String\n employeeid: String\n limit: Int = 10000\n}\n\ninput RolesByIdFilterInput {\n id: String!\n limit: Int = 10000\n}\n\ninput EmployeeAssociationFilterInput {\n iamid: String\n iamids: [String]\n loginid: String\n employeeid: String\n jobtypeid: String\n organizationid: String\n departmentid: String\n divisionid: String\n subdivisionid: String\n subdivisionl4id: String\n count: Boolean = false\n modifiedsince: String\n offset: Int = 0\n limit: Int = 1000\n}\n\n input EmployeeAssociationJobTypeIdsFilterInput {\n job_type_id: String\n jobtypeid: String\n }\n\n input StudentAssociationFilterInput {\n iamid: String\n iamids: [String]\n pidm: String\n studentid: String\n majorcode: String\n collegecode: String\n count: Boolean = false\n modifiedsince: String\n offset: Int = 0\n limit: Int = 1000\n}\n\ninput OrganizationHierarchyFilterInput {\n departmentid: String\n subdivisionid: String\n subdivisionl4id: String\n organizationid: String\n divisionid: String\n limit: Int = 10000\n}\n\ninput OrganizationByIdFilterInput {\n id: String!\n departmentid: String\n subdivisionid: String\n subdivisionl4id: String\n organizationid: String\n divisionid: String\n limit: Int = 10000\n}\n\ninput AccountLookupFilterInput {\n iamid: String\n iamids: [String]\n email: String\n loginid: String\n}\n\n##Results##\ntype PeopleResult {\n results: [Person]\n meta: Meta\n}\n\ntype EmployeeAssociationResult {\n results: [PpsAssociationRecord]\n meta: Meta\n}\n\ntype StudentAssociationResult {\n results: [SisAssociationRecord]\n meta: Meta\n}\n\ntype MajorsResult {\n results: [Major]\n}\n\ntype JobTypeIdsResult {\n results: [JobTypeId]\n}\n\ntype CollegeResult {\n results: [College]\n}\n\ntype GroupsResult {\n results: [GroupBucket]\n}\n\ntype GroupSourceResults {\n results: [GroupSource]\n}\n\ntype GroupMembershipResult {\n results: [GroupMembership]\n}\n\ntype GroupByIdResult {\n results: GroupById\n}\n\ntype RolesResult {\n results: [Role]\n}\n\ntype RoleMembershipResult {\n results: [RoleMembership]\n}\n\ntype RoleByIdResult {\n results: RoleById\n}\n\ntype OrganizationsResult {\n results: [OrganizationNode]\n}\n\ntype OrganizationByIdResult {\n results: OrganizationNode\n}\n\ntype OrganizationDivisionByIdResult {\n results: OrganizationDivisionDetail\n}\n\ntype OrganizationSubdivisionByIdResult {\n results: OrganizationSubdivisionDetail\n}\n\ntype OrganizationSubdivisionL4ByIdResult {\n results: OrganizationSubdivisionL4Detail\n}\n\ntype OrganizationDepartmentByIdResult {\n results: OrganizationDepartmentDetail\n}\n\ntype AccountSourceCountsResult {\n results: [AccountSourceCount]\n}\n\ntype AccountSourcesResult {\n results: [AccountSource]\n}\n\ntype AccountLookupResult {\n results: [AccountLookupIdentity]\n}\n\n##Query types##\ntype Query {\n #Colleges\n colleges(filter: CollegesFilterInput): CollegeResult\n\n #Majors\n majors(filter: MajorsFilterInput): MajorsResult\n \n #People\n people(filter: PeopleFilterInput): PeopleResult\n people_students(filter: PeopleFilterInput): PeopleResult\n people_employees(filter: PeopleFilterInput): PeopleResult\n people_faculty(filter: PeopleFilterInput): PeopleResult\n people_external(filter: PeopleFilterInput): PeopleResult\n \n #Groups\n groups(filter: GroupsFilterInput): GroupsResult\n groupSources: GroupSourceResults\n groupMembership(filter: GroupMembershipFilterInput): GroupMembershipResult\n groupById(filter: GroupsByIdFilterInput): GroupByIdResult\n\n #Roles\n roles(filter: RolesFilterInput): RolesResult\n roleMembership(filter: RoleMembershipFilterInput): RoleMembershipResult\n roleById(filter: RolesByIdFilterInput): RoleByIdResult\n\n #Position Association\n employee_association(filter: EmployeeAssociationFilterInput): EmployeeAssociationResult\n employee_association_jobtypeids(filter: EmployeeAssociationJobTypeIdsFilterInput): JobTypeIdsResult\n\n #Organizations\n organizations(filter: OrganizationHierarchyFilterInput): OrganizationsResult\n organizationById(filter: OrganizationByIdFilterInput): OrganizationByIdResult\n organizationDivisions(filter: OrganizationHierarchyFilterInput): OrganizationsResult\n organizationDivisionById(filter: OrganizationByIdFilterInput): OrganizationDivisionByIdResult\n organizationSubdivisions(filter: OrganizationHierarchyFilterInput): OrganizationsResult\n organizationSubdivisionById(filter: OrganizationByIdFilterInput): OrganizationSubdivisionByIdResult\n organizationSubdivisionL4s(filter: OrganizationHierarchyFilterInput): OrganizationsResult\n organizationSubdivisionL4ById(filter: OrganizationByIdFilterInput): OrganizationSubdivisionL4ByIdResult\n organizationDepartments(filter: OrganizationHierarchyFilterInput): OrganizationsResult\n organizationDepartmentById(filter: OrganizationByIdFilterInput): OrganizationDepartmentByIdResult\n\n #Accounts\n accounts: AccountSourceCountsResult\n accountLookup(filter: AccountLookupFilterInput): AccountLookupResult\n accountSources: AccountSourcesResult\n\n #Student Association\n student_association(filter: StudentAssociationFilterInput): StudentAssociationResult\n}\n```",
"x-amf-title": "GraphQL Schema"
},
"paths": {
@@ -1349,6 +1349,7 @@
"employee_id": "10987654",
"position_number": "P123456",
"position_title": "Senior Software Engineer",
+ "job_indicator": "P",
"relationship_to_organization": "Employee",
"employee_classification": "MSP",
"employee_classification_description": "Management & Senior Professional",
@@ -1385,6 +1386,7 @@
"employee_id": "20987654",
"position_number": "P654321",
"position_title": "Adjunct Instructor",
+ "job_indicator": "S",
"relationship_to_organization": "Academic",
"employee_classification": "ACADEMIC",
"employee_classification_description": "Academic Personnel",
@@ -1543,6 +1545,7 @@
"employee_id": "10987654",
"position_number": "P123456",
"position_title": "Senior Software Engineer",
+ "job_indicator": "P",
"relationship_to_organization": "Employee",
"employee_classification": "MSP",
"employee_classification_description": "Management & Senior Professional",
@@ -1579,6 +1582,7 @@
"employee_id": "20987654",
"position_number": "P654321",
"position_title": "Adjunct Instructor",
+ "job_indicator": "S",
"relationship_to_organization": "Academic",
"employee_classification": "ACADEMIC",
"employee_classification_description": "Academic Personnel",
@@ -2051,6 +2055,7 @@
"employee_id": "10987654",
"position_number": "P123456",
"position_title": "Senior Software Engineer",
+ "job_indicator": "P",
"relationship_to_organization": "Employee",
"employee_classification": "MSP",
"employee_classification_description": "Management & Senior Professional",
@@ -2087,6 +2092,7 @@
"employee_id": "20987654",
"position_number": "P654321",
"position_title": "Adjunct Instructor",
+ "job_indicator": "S",
"relationship_to_organization": "Academic",
"employee_classification": "ACADEMIC",
"employee_classification_description": "Academic Personnel",
@@ -2245,6 +2251,7 @@
"employee_id": "10987654",
"position_number": "P123456",
"position_title": "Senior Software Engineer",
+ "job_indicator": "P",
"relationship_to_organization": "Employee",
"employee_classification": "MSP",
"employee_classification_description": "Management & Senior Professional",
@@ -2281,6 +2288,7 @@
"employee_id": "20987654",
"position_number": "P654321",
"position_title": "Adjunct Instructor",
+ "job_indicator": "S",
"relationship_to_organization": "Academic",
"employee_classification": "ACADEMIC",
"employee_classification_description": "Academic Personnel",
@@ -2753,6 +2761,7 @@
"employee_id": "10987654",
"position_number": "P123456",
"position_title": "Senior Software Engineer",
+ "job_indicator": "P",
"relationship_to_organization": "Employee",
"employee_classification": "MSP",
"employee_classification_description": "Management & Senior Professional",
@@ -2789,6 +2798,7 @@
"employee_id": "20987654",
"position_number": "P654321",
"position_title": "Adjunct Instructor",
+ "job_indicator": "S",
"relationship_to_organization": "Academic",
"employee_classification": "ACADEMIC",
"employee_classification_description": "Academic Personnel",
@@ -2947,6 +2957,7 @@
"employee_id": "10987654",
"position_number": "P123456",
"position_title": "Senior Software Engineer",
+ "job_indicator": "P",
"relationship_to_organization": "Employee",
"employee_classification": "MSP",
"employee_classification_description": "Management & Senior Professional",
@@ -2983,6 +2994,7 @@
"employee_id": "20987654",
"position_number": "P654321",
"position_title": "Adjunct Instructor",
+ "job_indicator": "S",
"relationship_to_organization": "Academic",
"employee_classification": "ACADEMIC",
"employee_classification_description": "Academic Personnel",
@@ -3455,6 +3467,7 @@
"employee_id": "10987654",
"position_number": "P123456",
"position_title": "Senior Software Engineer",
+ "job_indicator": "P",
"relationship_to_organization": "Employee",
"employee_classification": "MSP",
"employee_classification_description": "Management & Senior Professional",
@@ -3491,6 +3504,7 @@
"employee_id": "20987654",
"position_number": "P654321",
"position_title": "Adjunct Instructor",
+ "job_indicator": "S",
"relationship_to_organization": "Academic",
"employee_classification": "ACADEMIC",
"employee_classification_description": "Academic Personnel",
@@ -3649,6 +3663,7 @@
"employee_id": "10987654",
"position_number": "P123456",
"position_title": "Senior Software Engineer",
+ "job_indicator": "P",
"relationship_to_organization": "Employee",
"employee_classification": "MSP",
"employee_classification_description": "Management & Senior Professional",
@@ -3685,6 +3700,7 @@
"employee_id": "20987654",
"position_number": "P654321",
"position_title": "Adjunct Instructor",
+ "job_indicator": "S",
"relationship_to_organization": "Academic",
"employee_classification": "ACADEMIC",
"employee_classification_description": "Academic Personnel",
@@ -4157,6 +4173,7 @@
"employee_id": "10987654",
"position_number": "P123456",
"position_title": "Senior Software Engineer",
+ "job_indicator": "P",
"relationship_to_organization": "Employee",
"employee_classification": "MSP",
"employee_classification_description": "Management & Senior Professional",
@@ -4193,6 +4210,7 @@
"employee_id": "20987654",
"position_number": "P654321",
"position_title": "Adjunct Instructor",
+ "job_indicator": "S",
"relationship_to_organization": "Academic",
"employee_classification": "ACADEMIC",
"employee_classification_description": "Academic Personnel",
@@ -4351,6 +4369,7 @@
"employee_id": "10987654",
"position_number": "P123456",
"position_title": "Senior Software Engineer",
+ "job_indicator": "P",
"relationship_to_organization": "Employee",
"employee_classification": "MSP",
"employee_classification_description": "Management & Senior Professional",
@@ -4387,6 +4406,7 @@
"employee_id": "20987654",
"position_number": "P654321",
"position_title": "Adjunct Instructor",
+ "job_indicator": "S",
"relationship_to_organization": "Academic",
"employee_classification": "ACADEMIC",
"employee_classification_description": "Academic Personnel",
@@ -4573,6 +4593,7 @@
"employee_record": "0",
"position_number": "12345678",
"position_title": "Application Developer",
+ "job_indicator": "P",
"relationship_to_organization": "EMPLOYEE",
"employee_classification": "P",
"employee_classification_description": "Professional",
@@ -4612,6 +4633,7 @@
"employee_record": "1",
"position_number": "22334455",
"position_title": "Integration Engineer",
+ "job_indicator": "S",
"relationship_to_organization": "EMPLOYEE",
"employee_classification": "P",
"employee_classification_description": "Professional",
@@ -6237,6 +6259,15 @@
"position_title": {
"type": "string"
},
+ "job_indicator": {
+ "description": "Job indicator. Values are N (Not Applicable), S (Secondary Job), P (Primary Job).",
+ "enum": [
+ "N",
+ "S",
+ "P"
+ ],
+ "type": "string"
+ },
"relationship_to_organization": {
"type": "string"
},
@@ -6474,6 +6505,15 @@
"position_title": {
"type": "string"
},
+ "job_indicator": {
+ "description": "Job indicator. Values are N (Not Applicable), S (Secondary Job), P (Primary Job).",
+ "enum": [
+ "N",
+ "S",
+ "P"
+ ],
+ "type": "string"
+ },
"relationship_to_organization": {
"type": "string"
},
diff --git a/update-spec.sh b/update-spec.sh
index a5ae497..0fcbdbe 100755
--- a/update-spec.sh
+++ b/update-spec.sh
@@ -18,7 +18,7 @@ set -euo pipefail
SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)"
cd "${SCRIPT_DIR}"
-VERSION=${1:-"1.0.33"}
+VERSION=${1:-"1.0.34"}
SPEC_URL="https://anypoint.mulesoft.com/exchange/portals/university-of-california-346/organizations/9b04bfa8-6eeb-4d85-b676-91db930f8411/assets/9b04bfa8-6eeb-4d85-b676-91db930f8411/iam-rosetta-api/${VERSION}/files/fat-oas/zip/?sha=1786485917112"
SPEC_DIR="${SCRIPT_DIR}/specs"
SPEC_FILE="${SPEC_DIR}/rosetta-api.json"