{"items":[{"type":"separator","label":"Getting started"},{"type":"link","fsPath":"index.md","metadata":{"type":"markdown"},"label":"Getting started","link":"/","routeSlug":"/"},{"type":"link","fsPath":"integration-guide/authorization.md","metadata":{"type":"markdown"},"label":"Authorization","link":"/integration-guide/authorization","routeSlug":"/integration-guide/authorization"},{"type":"link","fsPath":"integration-guide/pagination.md","metadata":{"type":"markdown"},"label":"Pagination","link":"/integration-guide/pagination","routeSlug":"/integration-guide/pagination"},{"type":"link","fsPath":"integration-guide/error-handling.md","metadata":{"type":"markdown"},"label":"Error handling","link":"/integration-guide/error-handling","routeSlug":"/integration-guide/error-handling"},{"type":"separator","label":"Integration guide"},{"type":"group","fsPath":"integration-guide/plan-configuration.md","metadata":{"type":"markdown"},"label":"Plan configuration","link":"/integration-guide/plan-configuration","routeSlug":"/integration-guide/plan-configuration","items":[{"type":"link","fsPath":"integration-guide/plan-configuration.md","metadata":{"type":"markdown"},"link":"/integration-guide/plan-configuration#options","routeSlug":"/integration-guide/plan-configuration","label":"Options"},{"type":"link","fsPath":"integration-guide/plan-configuration.md","metadata":{"type":"markdown"},"link":"/integration-guide/plan-configuration#lifecycle","routeSlug":"/integration-guide/plan-configuration","label":"Lifecycle"}]},{"type":"group","fsPath":"integration-guide/employees.md","metadata":{"type":"markdown"},"label":"Employees","link":"/integration-guide/employees","routeSlug":"/integration-guide/employees","items":[{"type":"link","fsPath":"integration-guide/employees.md","metadata":{"type":"markdown"},"link":"/integration-guide/employees#onboarding","routeSlug":"/integration-guide/employees","label":"Onboarding"},{"type":"link","fsPath":"integration-guide/employees.md","metadata":{"type":"markdown"},"link":"/integration-guide/employees#limits","routeSlug":"/integration-guide/employees","label":"Limits"},{"type":"link","fsPath":"integration-guide/employees.md","metadata":{"type":"markdown"},"link":"/integration-guide/employees#employee-account-linking-on-ssn-collision","routeSlug":"/integration-guide/employees","label":"Account linking"}]},{"type":"group","fsPath":"integration-guide/webhooks.md","metadata":{"type":"markdown"},"label":"Webhooks","link":"/integration-guide/webhooks","routeSlug":"/integration-guide/webhooks","items":[{"type":"link","fsPath":"integration-guide/webhooks.md","metadata":{"type":"markdown"},"link":"/integration-guide/webhooks#webhook-setup","routeSlug":"/integration-guide/webhooks","label":"Setup"},{"type":"link","fsPath":"integration-guide/webhooks.md","metadata":{"type":"markdown"},"link":"/integration-guide/webhooks#webhook-event-types","routeSlug":"/integration-guide/webhooks","label":"Event types"},{"type":"link","fsPath":"integration-guide/webhooks.md","metadata":{"type":"markdown"},"link":"/integration-guide/webhooks#webhook-api-documentation","routeSlug":"/integration-guide/webhooks","label":"API documentation"}]},{"type":"group","fsPath":"integration-guide/single-sign-on.md","metadata":{"type":"markdown"},"label":"Single sign-on","link":"/integration-guide/single-sign-on","routeSlug":"/integration-guide/single-sign-on","items":[{"type":"link","fsPath":"integration-guide/single-sign-on.md","metadata":{"type":"markdown"},"link":"/integration-guide/single-sign-on#user-creation","routeSlug":"/integration-guide/single-sign-on","label":"User creation"},{"type":"link","fsPath":"integration-guide/single-sign-on.md","metadata":{"type":"markdown"},"link":"/integration-guide/single-sign-on#initiate-sso","routeSlug":"/integration-guide/single-sign-on","label":"Initiate SSO"},{"type":"link","fsPath":"integration-guide/single-sign-on.md","metadata":{"type":"markdown"},"link":"/integration-guide/single-sign-on#redirect-uris","routeSlug":"/integration-guide/single-sign-on","label":"Redirect URIs"}]},{"type":"separator","label":"Core data types"},{"type":"group","fsPath":"core-data-types/common.md","metadata":{"type":"markdown"},"label":"Common","link":"/core-data-types/common","routeSlug":"/core-data-types/common","items":[{"type":"link","fsPath":"core-data-types/common.md","metadata":{"type":"markdown"},"link":"/core-data-types/common#money","routeSlug":"/core-data-types/common","label":"Money"},{"type":"link","fsPath":"core-data-types/common.md","metadata":{"type":"markdown"},"link":"/core-data-types/common#date","routeSlug":"/core-data-types/common","label":"Date"},{"type":"link","fsPath":"core-data-types/common.md","metadata":{"type":"markdown"},"link":"/core-data-types/common#intervalrequest","routeSlug":"/core-data-types/common","label":"IntervalRequest"},{"type":"link","fsPath":"core-data-types/common.md","metadata":{"type":"markdown"},"link":"/core-data-types/common#nondiscreteintervalrequest","routeSlug":"/core-data-types/common","label":"NonDiscreteIntervalRequest"},{"type":"link","fsPath":"core-data-types/common.md","metadata":{"type":"markdown"},"link":"/core-data-types/common#lookbacktype","routeSlug":"/core-data-types/common","label":"LookbackType"},{"type":"link","fsPath":"core-data-types/common.md","metadata":{"type":"markdown"},"link":"/core-data-types/common#search","routeSlug":"/core-data-types/common","label":"Search"},{"type":"link","fsPath":"core-data-types/common.md","metadata":{"type":"markdown"},"link":"/core-data-types/common#blob","routeSlug":"/core-data-types/common","label":"Blob"}]},{"type":"group","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"label":"Company and plan configuration","link":"/core-data-types/company-and-plan","routeSlug":"/core-data-types/company-and-plan","items":[{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#company","routeSlug":"/core-data-types/company-and-plan","label":"Company"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#entitytype","routeSlug":"/core-data-types/company-and-plan","label":"EntityType"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#status","routeSlug":"/core-data-types/company-and-plan","label":"Status"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#planconfiguration","routeSlug":"/core-data-types/company-and-plan","label":"PlanConfiguration"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#configurationsectionstatus","routeSlug":"/core-data-types/company-and-plan","label":"ConfigurationSectionStatus"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#managementoption","routeSlug":"/core-data-types/company-and-plan","label":"ManagementOption"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#managementoptionoffering","routeSlug":"/core-data-types/company-and-plan","label":"ManagementOptionOffering"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#managementoptiontype","routeSlug":"/core-data-types/company-and-plan","label":"ManagementOptionType"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#investmentconfig","routeSlug":"/core-data-types/company-and-plan","label":"InvestmentConfig"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#qdiatype","routeSlug":"/core-data-types/company-and-plan","label":"QdiaType"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#coreconfig","routeSlug":"/core-data-types/company-and-plan","label":"CoreConfig"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#eligibilityconfig","routeSlug":"/core-data-types/company-and-plan","label":"EligibilityConfig"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#employermatchtier","routeSlug":"/core-data-types/company-and-plan","label":"EmployerMatchTier"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#migrationconfig","routeSlug":"/core-data-types/company-and-plan","label":"MigrationConfig"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#knownrecordkeeper","routeSlug":"/core-data-types/company-and-plan","label":"KnownRecordKeeper"},{"type":"link","fsPath":"core-data-types/company-and-plan.md","metadata":{"type":"markdown"},"link":"/core-data-types/company-and-plan#bankaccount","routeSlug":"/core-data-types/company-and-plan","label":"BankAccount"}]},{"type":"group","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"label":"Employees and payroll","link":"/core-data-types/employees","routeSlug":"/core-data-types/employees","items":[{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#employeedetails","routeSlug":"/core-data-types/employees","label":"EmployeeDetails"},{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#createemployeeinfo","routeSlug":"/core-data-types/employees","label":"CreateEmployeeInfo"},{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#addemployeeresult","routeSlug":"/core-data-types/employees","label":"AddEmployeeResult"},{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#addemployeeerror","routeSlug":"/core-data-types/employees","label":"AddEmployeeError"},{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#addemployeeerrortype","routeSlug":"/core-data-types/employees","label":"AddEmployeeErrorType"},{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#compensation","routeSlug":"/core-data-types/employees","label":"Compensation"},{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#contributioninfo","routeSlug":"/core-data-types/employees","label":"ContributionInfo"},{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#contributiontype","routeSlug":"/core-data-types/employees","label":"ContributionType"},{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#payrollevent","routeSlug":"/core-data-types/employees","label":"PayrollEvent"},{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#transaction","routeSlug":"/core-data-types/employees","label":"Transaction"},{"type":"link","fsPath":"core-data-types/employees.md","metadata":{"type":"markdown"},"link":"/core-data-types/employees#contributiondetails","routeSlug":"/core-data-types/employees","label":"ContributionDetails"}]},{"type":"group","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"label":"Accounts and investments","link":"/core-data-types/accounts-and-investments","routeSlug":"/core-data-types/accounts-and-investments","items":[{"type":"link","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"link":"/core-data-types/accounts-and-investments#account","routeSlug":"/core-data-types/accounts-and-investments","label":"Account"},{"type":"link","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"link":"/core-data-types/accounts-and-investments#accountinvestmentdetail","routeSlug":"/core-data-types/accounts-and-investments","label":"AccountInvestmentDetail"},{"type":"link","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"link":"/core-data-types/accounts-and-investments#accountinvestmentselection","routeSlug":"/core-data-types/accounts-and-investments","label":"AccountInvestmentSelection"},{"type":"link","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"link":"/core-data-types/accounts-and-investments#accountinvestmentselections","routeSlug":"/core-data-types/accounts-and-investments","label":"AccountInvestmentSelections"},{"type":"link","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"link":"/core-data-types/accounts-and-investments#accountinvestmentselectiontype","routeSlug":"/core-data-types/accounts-and-investments","label":"AccountInvestmentSelectionType"},{"type":"link","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"link":"/core-data-types/accounts-and-investments#assetmetadata","routeSlug":"/core-data-types/accounts-and-investments","label":"AssetMetadata"},{"type":"link","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"link":"/core-data-types/accounts-and-investments#trminvestmentdetail","routeSlug":"/core-data-types/accounts-and-investments","label":"TrmInvestmentDetail"},{"type":"link","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"link":"/core-data-types/accounts-and-investments#trminvestmentselection","routeSlug":"/core-data-types/accounts-and-investments","label":"TrmInvestmentSelection"},{"type":"link","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"link":"/core-data-types/accounts-and-investments#holdingsperformance","routeSlug":"/core-data-types/accounts-and-investments","label":"HoldingsPerformance"},{"type":"link","fsPath":"core-data-types/accounts-and-investments.md","metadata":{"type":"markdown"},"link":"/core-data-types/accounts-and-investments#datedholdingsperformance","routeSlug":"/core-data-types/accounts-and-investments","label":"DatedHoldingsPerformance"}]},{"type":"group","fsPath":"core-data-types/beneficiaries.md","metadata":{"type":"markdown"},"label":"Beneficiaries","link":"/core-data-types/beneficiaries","routeSlug":"/core-data-types/beneficiaries","items":[{"type":"link","fsPath":"core-data-types/beneficiaries.md","metadata":{"type":"markdown"},"link":"/core-data-types/beneficiaries#beneficiary","routeSlug":"/core-data-types/beneficiaries","label":"Beneficiary"},{"type":"link","fsPath":"core-data-types/beneficiaries.md","metadata":{"type":"markdown"},"link":"/core-data-types/beneficiaries#beneficiaryinfo","routeSlug":"/core-data-types/beneficiaries","label":"BeneficiaryInfo"},{"type":"link","fsPath":"core-data-types/beneficiaries.md","metadata":{"type":"markdown"},"link":"/core-data-types/beneficiaries#updatebeneficiaryinfo","routeSlug":"/core-data-types/beneficiaries","label":"UpdateBeneficiaryInfo"},{"type":"link","fsPath":"core-data-types/beneficiaries.md","metadata":{"type":"markdown"},"link":"/core-data-types/beneficiaries#beneficiaryallocation","routeSlug":"/core-data-types/beneficiaries","label":"BeneficiaryAllocation"},{"type":"link","fsPath":"core-data-types/beneficiaries.md","metadata":{"type":"markdown"},"link":"/core-data-types/beneficiaries#beneficiaryallocationinfo","routeSlug":"/core-data-types/beneficiaries","label":"BeneficiaryAllocationInfo"}]},{"type":"group","fsPath":"core-data-types/reporting.md","metadata":{"type":"markdown"},"label":"Reporting and statistics","link":"/core-data-types/reporting","routeSlug":"/core-data-types/reporting","items":[{"type":"link","fsPath":"core-data-types/reporting.md","metadata":{"type":"markdown"},"link":"/core-data-types/reporting#companysummary","routeSlug":"/core-data-types/reporting","label":"CompanySummary"},{"type":"link","fsPath":"core-data-types/reporting.md","metadata":{"type":"markdown"},"link":"/core-data-types/reporting#companyytdsummary","routeSlug":"/core-data-types/reporting","label":"CompanyYtdSummary"},{"type":"link","fsPath":"core-data-types/reporting.md","metadata":{"type":"markdown"},"link":"/core-data-types/reporting#datedcompanysummary","routeSlug":"/core-data-types/reporting","label":"DatedCompanySummary"},{"type":"link","fsPath":"core-data-types/reporting.md","metadata":{"type":"markdown"},"link":"/core-data-types/reporting#eligibilitycounts","routeSlug":"/core-data-types/reporting","label":"EligibilityCounts"},{"type":"link","fsPath":"core-data-types/reporting.md","metadata":{"type":"markdown"},"link":"/core-data-types/reporting#datedeligibilitycounts","routeSlug":"/core-data-types/reporting","label":"DatedEligibilityCounts"},{"type":"link","fsPath":"core-data-types/reporting.md","metadata":{"type":"markdown"},"link":"/core-data-types/reporting#employeeaveragecontributionrates","routeSlug":"/core-data-types/reporting","label":"EmployeeAverageContributionRates"},{"type":"link","fsPath":"core-data-types/reporting.md","metadata":{"type":"markdown"},"link":"/core-data-types/reporting#datedemployeeaveragecontributionrates","routeSlug":"/core-data-types/reporting","label":"DatedEmployeeAverageContributionRates"},{"type":"link","fsPath":"core-data-types/reporting.md","metadata":{"type":"markdown"},"link":"/core-data-types/reporting#planbalancedetail","routeSlug":"/core-data-types/reporting","label":"PlanBalanceDetail"},{"type":"link","fsPath":"core-data-types/reporting.md","metadata":{"type":"markdown"},"link":"/core-data-types/reporting#datedplanbalancedetail","routeSlug":"/core-data-types/reporting","label":"DatedPlanBalanceDetail"}]},{"type":"group","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"label":"Identity and agreements","link":"/core-data-types/identity-and-agreements","routeSlug":"/core-data-types/identity-and-agreements","items":[{"type":"link","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"link":"/core-data-types/identity-and-agreements#userinviteinfo","routeSlug":"/core-data-types/identity-and-agreements","label":"UserInviteInfo"},{"type":"link","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"link":"/core-data-types/identity-and-agreements#basiccapitaluserstatus","routeSlug":"/core-data-types/identity-and-agreements","label":"BasicCapitalUserStatus"},{"type":"link","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"link":"/core-data-types/identity-and-agreements#identitytype","routeSlug":"/core-data-types/identity-and-agreements","label":"IdentityType"},{"type":"link","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"link":"/core-data-types/identity-and-agreements#partneridentityassociation","routeSlug":"/core-data-types/identity-and-agreements","label":"PartnerIdentityAssociation"},{"type":"link","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"link":"/core-data-types/identity-and-agreements#verificationprovider","routeSlug":"/core-data-types/identity-and-agreements","label":"VerificationProvider"},{"type":"link","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"link":"/core-data-types/identity-and-agreements#verificationtype","routeSlug":"/core-data-types/identity-and-agreements","label":"VerificationType"},{"type":"link","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"link":"/core-data-types/identity-and-agreements#verificationstatus","routeSlug":"/core-data-types/identity-and-agreements","label":"VerificationStatus"},{"type":"link","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"link":"/core-data-types/identity-and-agreements#agreement","routeSlug":"/core-data-types/identity-and-agreements","label":"Agreement"},{"type":"link","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"link":"/core-data-types/identity-and-agreements#consentinfo","routeSlug":"/core-data-types/identity-and-agreements","label":"ConsentInfo"},{"type":"link","fsPath":"core-data-types/identity-and-agreements.md","metadata":{"type":"markdown"},"link":"/core-data-types/identity-and-agreements#signatureinfo","routeSlug":"/core-data-types/identity-and-agreements","label":"SignatureInfo"}]},{"type":"group","fsPath":"core-data-types/errors.md","metadata":{"type":"markdown"},"label":"Errors","link":"/core-data-types/errors","routeSlug":"/core-data-types/errors","items":[{"type":"link","fsPath":"core-data-types/errors.md","metadata":{"type":"markdown"},"link":"/core-data-types/errors#partnererror","routeSlug":"/core-data-types/errors","label":"PartnerError"},{"type":"link","fsPath":"core-data-types/errors.md","metadata":{"type":"markdown"},"link":"/core-data-types/errors#partneringresserrortype","routeSlug":"/core-data-types/errors","label":"PartnerIngressErrorType"}]},{"type":"separator","label":"API Reference (gRPC)"},{"type":"group","fsPath":"grpc/PartnerAuthIngressService.md","metadata":{"type":"markdown"},"label":"Auth","link":"/grpc/partnerauthingressservice","routeSlug":"/grpc/partnerauthingressservice","items":[{"type":"link","fsPath":"grpc/PartnerAuthIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnerauthingressservice#exchangeapikey","routeSlug":"/grpc/partnerauthingressservice","label":"ExchangeApiKey"},{"type":"link","fsPath":"grpc/PartnerAuthIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnerauthingressservice#getself","routeSlug":"/grpc/partnerauthingressservice","label":"GetSelf"}]},{"type":"group","fsPath":"grpc/PartnerIngressService.md","metadata":{"type":"markdown"},"label":"Partner","link":"/grpc/partneringressservice","routeSlug":"/grpc/partneringressservice","items":[{"type":"link","fsPath":"grpc/PartnerIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneringressservice#listcompanies","routeSlug":"/grpc/partneringressservice","label":"ListCompanies"},{"type":"link","fsPath":"grpc/PartnerIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneringressservice#listemployees","routeSlug":"/grpc/partneringressservice","label":"ListEmployees"}]},{"type":"group","fsPath":"grpc/PartnerSharedIngressService.md","metadata":{"type":"markdown"},"label":"Shared","link":"/grpc/partnersharedingressservice","routeSlug":"/grpc/partnersharedingressservice","items":[{"type":"link","fsPath":"grpc/PartnerSharedIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnersharedingressservice#listagreements","routeSlug":"/grpc/partnersharedingressservice","label":"ListAgreements"},{"type":"link","fsPath":"grpc/PartnerSharedIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnersharedingressservice#markagreementssigned","routeSlug":"/grpc/partnersharedingressservice","label":"MarkAgreementsSigned"},{"type":"link","fsPath":"grpc/PartnerSharedIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnersharedingressservice#getorcreateuser","routeSlug":"/grpc/partnersharedingressservice","label":"GetOrCreateUser"},{"type":"link","fsPath":"grpc/PartnerSharedIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnersharedingressservice#beginidentityverification","routeSlug":"/grpc/partnersharedingressservice","label":"BeginIdentityVerification"},{"type":"link","fsPath":"grpc/PartnerSharedIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnersharedingressservice#completeidentityverification","routeSlug":"/grpc/partnersharedingressservice","label":"CompleteIdentityVerification"}]},{"type":"group","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"label":"Company","link":"/grpc/partnercompanyingressservice","routeSlug":"/grpc/partnercompanyingressservice","items":[{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#createcompany","routeSlug":"/grpc/partnercompanyingressservice","label":"CreateCompany"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#getcompany","routeSlug":"/grpc/partnercompanyingressservice","label":"GetCompany"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#updatecompany","routeSlug":"/grpc/partnercompanyingressservice","label":"UpdateCompany"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#getonboardingstatus","routeSlug":"/grpc/partnercompanyingressservice","label":"GetOnboardingStatus"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#beginbanklink","routeSlug":"/grpc/partnercompanyingressservice","label":"BeginBankLink"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#completebanklink","routeSlug":"/grpc/partnercompanyingressservice","label":"CompleteBankLink"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#verifybanklink","routeSlug":"/grpc/partnercompanyingressservice","label":"VerifyBankLink"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listbankaccounts","routeSlug":"/grpc/partnercompanyingressservice","label":"ListBankAccounts"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#unlinklinkedaccount","routeSlug":"/grpc/partnercompanyingressservice","label":"UnlinkLinkedAccount"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#settrustee","routeSlug":"/grpc/partnercompanyingressservice","label":"SetTrustee"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#gettrustee","routeSlug":"/grpc/partnercompanyingressservice","label":"GetTrustee"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#createplanconfiguration","routeSlug":"/grpc/partnercompanyingressservice","label":"CreatePlanConfiguration"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#getplanconfiguration","routeSlug":"/grpc/partnercompanyingressservice","label":"GetPlanConfiguration"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#updateplanconfiguration","routeSlug":"/grpc/partnercompanyingressservice","label":"UpdatePlanConfiguration"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listmanagementoptions","routeSlug":"/grpc/partnercompanyingressservice","label":"ListManagementOptions"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#setmanagementoptiontype","routeSlug":"/grpc/partnercompanyingressservice","label":"SetManagementOptionType"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#setinvestmentconfig","routeSlug":"/grpc/partnercompanyingressservice","label":"SetInvestmentConfig"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listavailableplaninvestmentoptions","routeSlug":"/grpc/partnercompanyingressservice","label":"ListAvailablePlanInvestmentOptions"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listqdiafunds","routeSlug":"/grpc/partnercompanyingressservice","label":"ListQdiaFunds"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#getcuratedinvestmentconfig","routeSlug":"/grpc/partnercompanyingressservice","label":"GetCuratedInvestmentConfig"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#updatecoreconfig","routeSlug":"/grpc/partnercompanyingressservice","label":"UpdateCoreConfig"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#clearcoreconfigemployermatch","routeSlug":"/grpc/partnercompanyingressservice","label":"ClearCoreConfigEmployerMatch"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#clearcoreconfigeligibility","routeSlug":"/grpc/partnercompanyingressservice","label":"ClearCoreConfigEligibility"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#deleteplanconfiguration","routeSlug":"/grpc/partnercompanyingressservice","label":"DeletePlanConfiguration"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#submitplanconfiguration","routeSlug":"/grpc/partnercompanyingressservice","label":"SubmitPlanConfiguration"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#addemployees","routeSlug":"/grpc/partnercompanyingressservice","label":"AddEmployees"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listemployeedetails","routeSlug":"/grpc/partnercompanyingressservice","label":"ListEmployeeDetails"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#getemployeedetails","routeSlug":"/grpc/partnercompanyingressservice","label":"GetEmployeeDetails"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#setemployeecontributionrates","routeSlug":"/grpc/partnercompanyingressservice","label":"SetEmployeeContributionRates"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#terminateemployee","routeSlug":"/grpc/partnercompanyingressservice","label":"TerminateEmployee"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listtransactions","routeSlug":"/grpc/partnercompanyingressservice","label":"ListTransactions"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listemployeecontributiondetails","routeSlug":"/grpc/partnercompanyingressservice","label":"ListEmployeeContributionDetails"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#getplanbalance","routeSlug":"/grpc/partnercompanyingressservice","label":"GetPlanBalance"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listeligibilitycounts","routeSlug":"/grpc/partnercompanyingressservice","label":"ListEligibilityCounts"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#geteligibilitycounts","routeSlug":"/grpc/partnercompanyingressservice","label":"GetEligibilityCounts"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listplanbalances","routeSlug":"/grpc/partnercompanyingressservice","label":"ListPlanBalances"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listemployeeaveragecontributionrates","routeSlug":"/grpc/partnercompanyingressservice","label":"ListEmployeeAverageContributionRates"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#getemployeeaveragecontributionrates","routeSlug":"/grpc/partnercompanyingressservice","label":"GetEmployeeAverageContributionRates"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listcompanysummary","routeSlug":"/grpc/partnercompanyingressservice","label":"ListCompanySummary"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#getcompanysummary","routeSlug":"/grpc/partnercompanyingressservice","label":"GetCompanySummary"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#submitpayrollevent","routeSlug":"/grpc/partnercompanyingressservice","label":"SubmitPayrollEvent"},{"type":"link","fsPath":"grpc/PartnerCompanyIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnercompanyingressservice#listcompanypayrollevents","routeSlug":"/grpc/partnercompanyingressservice","label":"ListCompanyPayrollEvents"}]},{"type":"group","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"label":"Employee","link":"/grpc/partneremployeeingressservice","routeSlug":"/grpc/partneremployeeingressservice","items":[{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#listcontributiontypesavailableforsetup","routeSlug":"/grpc/partneremployeeingressservice","label":"ListContributionTypesAvailableForSetup"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getemployeesetuplimits","routeSlug":"/grpc/partneremployeeingressservice","label":"GetEmployeeSetupLimits"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getemployeesetupestimates","routeSlug":"/grpc/partneremployeeingressservice","label":"GetEmployeeSetupEstimates"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#setemployeecontributionrates","routeSlug":"/grpc/partneremployeeingressservice","label":"SetEmployeeContributionRates"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getemployeecontributionrates","routeSlug":"/grpc/partneremployeeingressservice","label":"GetEmployeeContributionRates"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#listemployerselectedinvestmentoptions","routeSlug":"/grpc/partneremployeeingressservice","label":"ListEmployerSelectedInvestmentOptions"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#listretirementmortgageinvestmentoptions","routeSlug":"/grpc/partneremployeeingressservice","label":"ListRetirementMortgageInvestmentOptions"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#searchbrokeragewindowinvestmentoptions","routeSlug":"/grpc/partneremployeeingressservice","label":"SearchBrokerageWindowInvestmentOptions"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getaccount","routeSlug":"/grpc/partneremployeeingressservice","label":"GetAccount"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#listaccounts","routeSlug":"/grpc/partneremployeeingressservice","label":"ListAccounts"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#setaccountinvestmentselections","routeSlug":"/grpc/partneremployeeingressservice","label":"SetAccountInvestmentSelections"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#setretirementmortgageinvestmentselections","routeSlug":"/grpc/partneremployeeingressservice","label":"SetRetirementMortgageInvestmentSelections"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getinvestmentselections","routeSlug":"/grpc/partneremployeeingressservice","label":"GetInvestmentSelections"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getemployeeonboardingstatus","routeSlug":"/grpc/partneremployeeingressservice","label":"GetEmployeeOnboardingStatus"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getemployeeinvitetoken","routeSlug":"/grpc/partneremployeeingressservice","label":"GetEmployeeInviteToken"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getemployeesummary","routeSlug":"/grpc/partneremployeeingressservice","label":"GetEmployeeSummary"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getaccountholdingssummary","routeSlug":"/grpc/partneremployeeingressservice","label":"GetAccountHoldingsSummary"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#listaccountholdingsperformance","routeSlug":"/grpc/partneremployeeingressservice","label":"ListAccountHoldingsPerformance"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#listaggregateholdingsperformance","routeSlug":"/grpc/partneremployeeingressservice","label":"ListAggregateHoldingsPerformance"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getinvestmentupdateavailability","routeSlug":"/grpc/partneremployeeingressservice","label":"GetInvestmentUpdateAvailability"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#rebalanceaccountinvestmentselection","routeSlug":"/grpc/partneremployeeingressservice","label":"RebalanceAccountInvestmentSelection"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#rebalanceretirementmortgageinvestmentselections","routeSlug":"/grpc/partneremployeeingressservice","label":"RebalanceRetirementMortgageInvestmentSelections"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#createbeneficiaries","routeSlug":"/grpc/partneremployeeingressservice","label":"CreateBeneficiaries"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#getbeneficiary","routeSlug":"/grpc/partneremployeeingressservice","label":"GetBeneficiary"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#updatebeneficiaries","routeSlug":"/grpc/partneremployeeingressservice","label":"UpdateBeneficiaries"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#listbeneficiaries","routeSlug":"/grpc/partneremployeeingressservice","label":"ListBeneficiaries"},{"type":"link","fsPath":"grpc/PartnerEmployeeIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partneremployeeingressservice#deletebeneficiary","routeSlug":"/grpc/partneremployeeingressservice","label":"DeleteBeneficiary"}]},{"type":"group","fsPath":"grpc/PartnerConstantsIngressService.md","metadata":{"type":"markdown"},"label":"Constants","link":"/grpc/partnerconstantsingressservice","routeSlug":"/grpc/partnerconstantsingressservice","items":[{"type":"link","fsPath":"grpc/PartnerConstantsIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnerconstantsingressservice#getregulatoryplanconfigurationrates","routeSlug":"/grpc/partnerconstantsingressservice","label":"GetRegulatoryPlanConfigurationRates"},{"type":"link","fsPath":"grpc/PartnerConstantsIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnerconstantsingressservice#getannualcontributionlimits","routeSlug":"/grpc/partnerconstantsingressservice","label":"GetAnnualContributionLimits"},{"type":"link","fsPath":"grpc/PartnerConstantsIngressService.md","metadata":{"type":"markdown"},"link":"/grpc/partnerconstantsingressservice#getretirementprojectionparameters","routeSlug":"/grpc/partnerconstantsingressservice","label":"GetRetirementProjectionParameters"}]},{"type":"separator","label":"API Reference (REST)"},{"type":"link","label":"Basic Capital Partner API","link":"/openapi","routeSlug":"/openapi"},{"type":"group","label":"PartnerAuthIngressService","link":"/openapi/partnerauthingressservice","routeSlug":"/openapi/partnerauthingressservice","items":[{"label":"ExchangeApiKey","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnerauthingressservice/exchangeapikey","routeSlug":"/openapi/partnerauthingressservice/exchangeapikey","metadata":{"seo":{"title":"ExchangeApiKey","description":"service PartnerAuthIngressService {\n  rpc ExchangeApiKey(ExchangeApiKeyRequest) returns (ExchangeApiKeyResponse);\n}\n\nmessage ExchangeApiKeyRequest {\n  string api_key = 1;\n}\n\nmessage ExchangeApiKeyResponse {\n  string auth_token = 1;\n  int64 expires_at_ms = 2;\n}\nservice PartnerAuthIngressService {\n  rpc ExchangeApiKey(ExchangeApiKeyRequest) returns (ExchangeApiKeyResponse);\n}\n\nmessage ExchangeApiKeyRequest {\n  string api_key = 1;\n}\n\nmessage ExchangeApiKeyResponse {\n  string auth_token = 1;\n  int64 expires_at_ms = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerAuthIngressService/ExchangeApiKey"},{"label":"GetSelf","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnerauthingressservice/getself","routeSlug":"/openapi/partnerauthingressservice/getself","metadata":{"seo":{"title":"GetSelf","description":"service PartnerAuthIngressService {\n  rpc GetSelf(GetSelfRequest) returns (GetSelfResponse);\n}\n\nmessage GetSelfRequest {}\n\nmessage GetSelfResponse {\n  string partner_uuid = 1;\n  string partner_name = 2;\n}\nservice PartnerAuthIngressService {\n  rpc GetSelf(GetSelfRequest) returns (GetSelfResponse);\n}\n\nmessage GetSelfRequest {}\n\nmessage GetSelfResponse {\n  string partner_uuid = 1;\n  string partner_name = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerAuthIngressService/GetSelf"},{"label":"Exchange a Partner API key for a bearer token (plain REST)","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnerauthingressservice/exchangeapikeyrest","routeSlug":"/openapi/partnerauthingressservice/exchangeapikeyrest","metadata":{"seo":{"title":"Exchange a Partner API key for a bearer token (plain REST)","description":"REST alternative to PartnerAuthIngressService/ExchangeApiKey for partners who prefer plain HTTP over the Connect gateway. This route is hand-written rather than transcoded, so expiresAtMs is a JSON number here and a string on the Connect path."}},"httpPath":"/v1/partner/auth"}]},{"type":"group","label":"PartnerIngressService","link":"/openapi/partneringressservice","routeSlug":"/openapi/partneringressservice","items":[{"label":"CreateWebhookSubscription","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneringressservice/createwebhooksubscription","routeSlug":"/openapi/partneringressservice/createwebhooksubscription","metadata":{"seo":{"title":"CreateWebhookSubscription","description":"service PartnerIngressService {\n  rpc CreateWebhookSubscription(CreateWebhookSubscriptionRequest) returns (CreateWebhookSubscriptionResponse);\n}\n\nmessage CreateWebhookSubscriptionRequest {\n  string url = 1;\n}\n\nmessage CreateWebhookSubscriptionResponse {\n  WebhookSubscription webhook_subscription = 1;\n}\n\nmessage WebhookSubscription {\n  string uuid = 1;\n  string url = 2;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    ACTIVE = 1;\n    ERRORED = 2;\n    PAUSED = 3;\n    DELETED = 4;\n  }\n  Status status = 3;\n\n  optional string notes = 4;\n}\nservice PartnerIngressService {\n  rpc CreateWebhookSubscription(CreateWebhookSubscriptionRequest) returns (CreateWebhookSubscriptionResponse);\n}\n\nmessage CreateWebhookSubscriptionRequest {\n  string url = 1;\n}\n\nmessage CreateWebhookSubscriptionResponse {\n  WebhookSubscription webhook_subscription = 1;\n}\n\nmessage WebhookSubscription {\n  string uuid = 1;\n  string url = 2;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    ACTIVE = 1;\n    ERRORED = 2;\n    PAUSED = 3;\n    DELETED = 4;\n  }\n  Status status = 3;\n\n  optional string notes = 4;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerIngressService/CreateWebhookSubscription"},{"label":"GetWebhookSubscription","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneringressservice/getwebhooksubscription","routeSlug":"/openapi/partneringressservice/getwebhooksubscription","metadata":{"seo":{"title":"GetWebhookSubscription","description":"service PartnerIngressService {\n  rpc GetWebhookSubscription(GetWebhookSubscriptionRequest) returns (GetWebhookSubscriptionResponse);\n}\n\nmessage GetWebhookSubscriptionRequest {\n  string uuid = 1;\n}\n\nmessage GetWebhookSubscriptionResponse {\n  optional WebhookSubscription webhook_subscription = 1;\n}\n\nmessage WebhookSubscription {\n  string uuid = 1;\n  string url = 2;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    ACTIVE = 1;\n    ERRORED = 2;\n    PAUSED = 3;\n    DELETED = 4;\n  }\n  Status status = 3;\n\n  optional string notes = 4;\n}\nservice PartnerIngressService {\n  rpc GetWebhookSubscription(GetWebhookSubscriptionRequest) returns (GetWebhookSubscriptionResponse);\n}\n\nmessage GetWebhookSubscriptionRequest {\n  string uuid = 1;\n}\n\nmessage GetWebhookSubscriptionResponse {\n  optional WebhookSubscription webhook_subscription = 1;\n}\n\nmessage WebhookSubscription {\n  string uuid = 1;\n  string url = 2;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    ACTIVE = 1;\n    ERRORED = 2;\n    PAUSED = 3;\n    DELETED = 4;\n  }\n  Status status = 3;\n\n  optional string notes = 4;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerIngressService/GetWebhookSubscription"},{"label":"GetWebhookValidationContext","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneringressservice/getwebhookvalidationcontext","routeSlug":"/openapi/partneringressservice/getwebhookvalidationcontext","metadata":{"seo":{"title":"GetWebhookValidationContext","description":"service PartnerIngressService {\n  rpc GetWebhookValidationContext(GetWebhookValidationContextRequest) returns (GetWebhookValidationContextResponse);\n}\n\nmessage GetWebhookValidationContextRequest {}\n\nmessage GetWebhookValidationContextResponse {\n  string public_key = 1;\n}\nservice PartnerIngressService {\n  rpc GetWebhookValidationContext(GetWebhookValidationContextRequest) returns (GetWebhookValidationContextResponse);\n}\n\nmessage GetWebhookValidationContextRequest {}\n\nmessage GetWebhookValidationContextResponse {\n  string public_key = 1;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerIngressService/GetWebhookValidationContext"},{"label":"ListCompanies","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneringressservice/listcompanies","routeSlug":"/openapi/partneringressservice/listcompanies","metadata":{"seo":{"title":"ListCompanies","description":"service PartnerIngressService {\n  rpc ListCompanies(ListCompaniesRequest) returns (ListCompaniesResponse);\n}\n\nmessage ListCompaniesRequest {\n  optional com.basiccapital.common.external.PaginationRequest pagination = 1;\n}\n\nmessage ListCompaniesResponse {\n  repeated PartnerIdentityAssociation companies = 1;\n  optional string next_page_token = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage PartnerIdentityAssociation {\n  string uuid = 1;\n  string external_id = 2;\n  IdentityType identity = 3;\n}\n\nenum IdentityType {\n  UNKNOWN_IDENTITY_TYPE = 0;\n  COMPANY = 1;\n  EMPLOYEE = 2;\n}\nservice PartnerIngressService {\n  rpc ListCompanies(ListCompaniesRequest) returns (ListCompaniesResponse);\n}\n\nmessage ListCompaniesRequest {\n  optional com.basiccapital.common.external.PaginationRequest pagination = 1;\n}\n\nmessage ListCompaniesResponse {\n  repeated PartnerIdentityAssociation companies = 1;\n  optional string next_page_token = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage PartnerIdentityAssociation {\n  string uuid = 1;\n  string external_id = 2;\n  IdentityType identity = 3;\n}\n\nenum IdentityType {\n  UNKNOWN_IDENTITY_TYPE = 0;\n  COMPANY = 1;\n  EMPLOYEE = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerIngressService/ListCompanies"},{"label":"ListEmployees","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneringressservice/listemployees","routeSlug":"/openapi/partneringressservice/listemployees","metadata":{"seo":{"title":"ListEmployees","description":"service PartnerIngressService {\n  rpc ListEmployees(ListEmployeesRequest) returns (ListEmployeesResponse);\n}\n\nmessage ListEmployeesRequest {\n  optional com.basiccapital.common.external.PaginationRequest pagination = 1;\n  optional string company_uuid = 2;\n}\n\nmessage ListEmployeesResponse {\n  repeated PartnerIdentityAssociation employees = 1;\n  optional string next_page_token = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage PartnerIdentityAssociation {\n  string uuid = 1;\n  string external_id = 2;\n  IdentityType identity = 3;\n}\n\nenum IdentityType {\n  UNKNOWN_IDENTITY_TYPE = 0;\n  COMPANY = 1;\n  EMPLOYEE = 2;\n}\nservice PartnerIngressService {\n  rpc ListEmployees(ListEmployeesRequest) returns (ListEmployeesResponse);\n}\n\nmessage ListEmployeesRequest {\n  optional com.basiccapital.common.external.PaginationRequest pagination = 1;\n  optional string company_uuid = 2;\n}\n\nmessage ListEmployeesResponse {\n  repeated PartnerIdentityAssociation employees = 1;\n  optional string next_page_token = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage PartnerIdentityAssociation {\n  string uuid = 1;\n  string external_id = 2;\n  IdentityType identity = 3;\n}\n\nenum IdentityType {\n  UNKNOWN_IDENTITY_TYPE = 0;\n  COMPANY = 1;\n  EMPLOYEE = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerIngressService/ListEmployees"},{"label":"ListWebhookSubscriptions","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneringressservice/listwebhooksubscriptions","routeSlug":"/openapi/partneringressservice/listwebhooksubscriptions","metadata":{"seo":{"title":"ListWebhookSubscriptions","description":"service PartnerIngressService {\n  rpc ListWebhookSubscriptions(ListWebhookSubscriptionsRequest) returns (ListWebhookSubscriptionsResponse);\n}\n\nmessage ListWebhookSubscriptionsRequest {}\n\nmessage ListWebhookSubscriptionsResponse {\n  repeated WebhookSubscription webhook_subscriptions = 1;\n}\n\nmessage WebhookSubscription {\n  string uuid = 1;\n  string url = 2;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    ACTIVE = 1;\n    ERRORED = 2;\n    PAUSED = 3;\n    DELETED = 4;\n  }\n  Status status = 3;\n\n  optional string notes = 4;\n}\nservice PartnerIngressService {\n  rpc ListWebhookSubscriptions(ListWebhookSubscriptionsRequest) returns (ListWebhookSubscriptionsResponse);\n}\n\nmessage ListWebhookSubscriptionsRequest {}\n\nmessage ListWebhookSubscriptionsResponse {\n  repeated WebhookSubscription webhook_subscriptions = 1;\n}\n\nmessage WebhookSubscription {\n  string uuid = 1;\n  string url = 2;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    ACTIVE = 1;\n    ERRORED = 2;\n    PAUSED = 3;\n    DELETED = 4;\n  }\n  Status status = 3;\n\n  optional string notes = 4;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerIngressService/ListWebhookSubscriptions"},{"label":"SetWebhookSubscriptionStatus","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneringressservice/setwebhooksubscriptionstatus","routeSlug":"/openapi/partneringressservice/setwebhooksubscriptionstatus","metadata":{"seo":{"title":"SetWebhookSubscriptionStatus","description":"service PartnerIngressService {\n  rpc SetWebhookSubscriptionStatus(SetWebhookSubscriptionStatusRequest) returns (SetWebhookSubscriptionStatusResponse);\n}\n\nmessage SetWebhookSubscriptionStatusRequest {\n  string uuid = 1;\n\n  enum StatusUpdate {\n    UNKNOWN_STATUS_UPDATE = 0;\n    REACTIVATE = 1;\n    PAUSE = 2;\n    DELETE = 3;\n  }\n  StatusUpdate status_update = 2;\n}\n\nmessage SetWebhookSubscriptionStatusResponse {\n  WebhookSubscription webhook_subscription = 1;\n}\n\nmessage WebhookSubscription {\n  string uuid = 1;\n  string url = 2;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    ACTIVE = 1;\n    ERRORED = 2;\n    PAUSED = 3;\n    DELETED = 4;\n  }\n  Status status = 3;\n\n  optional string notes = 4;\n}\nservice PartnerIngressService {\n  rpc SetWebhookSubscriptionStatus(SetWebhookSubscriptionStatusRequest) returns (SetWebhookSubscriptionStatusResponse);\n}\n\nmessage SetWebhookSubscriptionStatusRequest {\n  string uuid = 1;\n\n  enum StatusUpdate {\n    UNKNOWN_STATUS_UPDATE = 0;\n    REACTIVATE = 1;\n    PAUSE = 2;\n    DELETE = 3;\n  }\n  StatusUpdate status_update = 2;\n}\n\nmessage SetWebhookSubscriptionStatusResponse {\n  WebhookSubscription webhook_subscription = 1;\n}\n\nmessage WebhookSubscription {\n  string uuid = 1;\n  string url = 2;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    ACTIVE = 1;\n    ERRORED = 2;\n    PAUSED = 3;\n    DELETED = 4;\n  }\n  Status status = 3;\n\n  optional string notes = 4;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerIngressService/SetWebhookSubscriptionStatus"},{"label":"UpdateWebhookSubscription","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneringressservice/updatewebhooksubscription","routeSlug":"/openapi/partneringressservice/updatewebhooksubscription","metadata":{"seo":{"title":"UpdateWebhookSubscription","description":"service PartnerIngressService {\n  rpc UpdateWebhookSubscription(UpdateWebhookSubscriptionRequest) returns (UpdateWebhookSubscriptionResponse);\n}\n\nmessage UpdateWebhookSubscriptionRequest {\n  string uuid = 1;\n  string url = 2;\n}\n\nmessage UpdateWebhookSubscriptionResponse {\n  WebhookSubscription webhook_subscription = 1;\n}\n\nmessage WebhookSubscription {\n  string uuid = 1;\n  string url = 2;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    ACTIVE = 1;\n    ERRORED = 2;\n    PAUSED = 3;\n    DELETED = 4;\n  }\n  Status status = 3;\n\n  optional string notes = 4;\n}\nservice PartnerIngressService {\n  rpc UpdateWebhookSubscription(UpdateWebhookSubscriptionRequest) returns (UpdateWebhookSubscriptionResponse);\n}\n\nmessage UpdateWebhookSubscriptionRequest {\n  string uuid = 1;\n  string url = 2;\n}\n\nmessage UpdateWebhookSubscriptionResponse {\n  WebhookSubscription webhook_subscription = 1;\n}\n\nmessage WebhookSubscription {\n  string uuid = 1;\n  string url = 2;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    ACTIVE = 1;\n    ERRORED = 2;\n    PAUSED = 3;\n    DELETED = 4;\n  }\n  Status status = 3;\n\n  optional string notes = 4;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerIngressService/UpdateWebhookSubscription"}]},{"type":"group","label":"PartnerSharedIngressService","link":"/openapi/partnersharedingressservice","routeSlug":"/openapi/partnersharedingressservice","items":[{"label":"BeginIdentityVerification","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnersharedingressservice/beginidentityverification","routeSlug":"/openapi/partnersharedingressservice/beginidentityverification","metadata":{"seo":{"title":"BeginIdentityVerification","description":"Identity Verification"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerSharedIngressService/BeginIdentityVerification"},{"label":"CompleteIdentityVerification","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnersharedingressservice/completeidentityverification","routeSlug":"/openapi/partnersharedingressservice/completeidentityverification","metadata":{"seo":{"title":"CompleteIdentityVerification","description":"service PartnerSharedIngressService {\n  rpc CompleteIdentityVerification(CompleteIdentityVerificationRequest) returns (CompleteIdentityVerificationResponse);\n}\n\nmessage CompleteIdentityVerificationRequest {\n  string verification_uuid = 1;\n  string verification_token = 2;\n}\n\nmessage CompleteIdentityVerificationResponse {\n  VerificationStatus verification_status = 2;\n}\n\nenum VerificationStatus {\n  UNKNOWN_VERIFICATION_STATUS = 0;\n  VERIFICATION_STATUS_VERIFIED = 1;\n  VERIFICATION_STATUS_PENDING = 2;\n  VERIFICATION_STATUS_FAILED = 3;\n}\nservice PartnerSharedIngressService {\n  rpc CompleteIdentityVerification(CompleteIdentityVerificationRequest) returns (CompleteIdentityVerificationResponse);\n}\n\nmessage CompleteIdentityVerificationRequest {\n  string verification_uuid = 1;\n  string verification_token = 2;\n}\n\nmessage CompleteIdentityVerificationResponse {\n  VerificationStatus verification_status = 2;\n}\n\nenum VerificationStatus {\n  UNKNOWN_VERIFICATION_STATUS = 0;\n  VERIFICATION_STATUS_VERIFIED = 1;\n  VERIFICATION_STATUS_PENDING = 2;\n  VERIFICATION_STATUS_FAILED = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerSharedIngressService/CompleteIdentityVerification"},{"label":"GetOrCreateUser","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnersharedingressservice/getorcreateuser","routeSlug":"/openapi/partnersharedingressservice/getorcreateuser","metadata":{"seo":{"title":"GetOrCreateUser","description":"Users"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerSharedIngressService/GetOrCreateUser"},{"label":"ListAgreements","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnersharedingressservice/listagreements","routeSlug":"/openapi/partnersharedingressservice/listagreements","metadata":{"seo":{"title":"ListAgreements","description":"service PartnerSharedIngressService {\n  rpc ListAgreements(ListAgreementsRequest) returns (ListAgreementsResponse);\n}\n\nmessage ListAgreementsRequest {\n  repeated Agreement.Status statuses = 1;\n  repeated Agreement.Type types = 2;\n}\n\nmessage ListAgreementsResponse {\n  repeated Agreement agreements = 1;\n}\n\nmessage Agreement {\n  enum Type {\n    UNKNOWN_TYPE = 0;\n    ONBOARDING = 1;\n    BENEFICIARY = 2;\n    ROLLOVER = 3;\n    DEFERRAL = 4;\n    BROKERAGE_WINDOW = 5;\n  }\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    GENERATING = 1;\n    READY_TO_SIGN = 2;\n    COMPLETE = 3;\n  }\n\n  string uuid = 1;\n  string name = 2;\n  optional string presigned_url = 3;\n  Status status = 4;\n  optional int64 signed_at = 5;\n  Type type = 6;\n}\nservice PartnerSharedIngressService {\n  rpc ListAgreements(ListAgreementsRequest) returns (ListAgreementsResponse);\n}\n\nmessage ListAgreementsRequest {\n  repeated Agreement.Status statuses = 1;\n  repeated Agreement.Type types = 2;\n}\n\nmessage ListAgreementsResponse {\n  repeated Agreement agreements = 1;\n}\n\nmessage Agreement {\n  enum Type {\n    UNKNOWN_TYPE = 0;\n    ONBOARDING = 1;\n    BENEFICIARY = 2;\n    ROLLOVER = 3;\n    DEFERRAL = 4;\n    BROKERAGE_WINDOW = 5;\n  }\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    GENERATING = 1;\n    READY_TO_SIGN = 2;\n    COMPLETE = 3;\n  }\n\n  string uuid = 1;\n  string name = 2;\n  optional string presigned_url = 3;\n  Status status = 4;\n  optional int64 signed_at = 5;\n  Type type = 6;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerSharedIngressService/ListAgreements"},{"label":"MarkAgreementsSigned","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnersharedingressservice/markagreementssigned","routeSlug":"/openapi/partnersharedingressservice/markagreementssigned","metadata":{"seo":{"title":"MarkAgreementsSigned","description":"service PartnerSharedIngressService {\n  rpc MarkAgreementsSigned(MarkAgreementsSignedRequest) returns (MarkAgreementsSignedResponse);\n}\n\nmessage MarkAgreementsSignedRequest {\n  message SignedAgreements {\n    string agreement_uuid = 1;\n    ConsentInfo consent_info = 2;\n  }\n\n  repeated SignedAgreements agreements = 1;\n}\n\nmessage MarkAgreementsSignedResponse {}\n\nmessage ConsentInfo {\n  string local_time = 1;\n  string ip_address = 2;\n  SignatureInfo signature_info = 3;\n}\n\nmessage SignatureInfo {\n  Blob signature_data = 1;\n  string signed_name = 2;\n}\n\nmessage Blob {\n  string mime_type = 1;\n  bytes data = 2;\n}\nservice PartnerSharedIngressService {\n  rpc MarkAgreementsSigned(MarkAgreementsSignedRequest) returns (MarkAgreementsSignedResponse);\n}\n\nmessage MarkAgreementsSignedRequest {\n  message SignedAgreements {\n    string agreement_uuid = 1;\n    ConsentInfo consent_info = 2;\n  }\n\n  repeated SignedAgreements agreements = 1;\n}\n\nmessage MarkAgreementsSignedResponse {}\n\nmessage ConsentInfo {\n  string local_time = 1;\n  string ip_address = 2;\n  SignatureInfo signature_info = 3;\n}\n\nmessage SignatureInfo {\n  Blob signature_data = 1;\n  string signed_name = 2;\n}\n\nmessage Blob {\n  string mime_type = 1;\n  bytes data = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerSharedIngressService/MarkAgreementsSigned"}]},{"type":"group","label":"PartnerCompanyIngressService","link":"/openapi/partnercompanyingressservice","routeSlug":"/openapi/partnercompanyingressservice","items":[{"label":"AddEmployees","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/addemployees","routeSlug":"/openapi/partnercompanyingressservice/addemployees","metadata":{"seo":{"title":"AddEmployees","description":"service PartnerCompanyIngressService {\n  rpc AddEmployees(AddEmployeesRequest) returns (AddEmployeesResponse);\n}\n\nmessage AddEmployeesRequest {\n  repeated CreateEmployeeInfo create_employees_info = 1;\n}\n\nmessage AddEmployeesResponse {\n  repeated AddEmployeeResult results = 1;\n}\n\nmessage CreateEmployeeInfo {\n  enum EmploymentStatus {\n    UNKNOWN_EMPLOYMENT_STATUS = 0;\n    FULL_TIME = 1;\n    PART_TIME = 2;\n    INTERN = 3;\n    TEMPORARY = 4;\n    SEASONAL = 5;\n    INDIVIDUAL_CONTRACTOR = 6;\n    VOLUNTEER = 7;\n  }\n\n  string external_id = 1;\n  string given_name = 2;\n  string surname = 3;\n  string email = 4;\n  bool can_participate = 5 [deprecated = true];\n  bool is_match_eligible = 6 [deprecated = true];\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  optional Date termination_date = 10;\n  EmploymentStatus employment_status = 11;\n}\n\nmessage AddEmployeeResult {\n  string external_id = 1;\n  oneof outcome {\n    EmployeeDetails employee = 2;\n    AddEmployeeError error = 3;\n  }\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage AddEmployeeError {\n  AddEmployeeErrorType type = 1;\n  string message = 2;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nenum AddEmployeeErrorType {\n  UNKNOWN_ADD_EMPLOYEE_ERROR = 0;\n  START_DATE_IN_FUTURE = 2;\n  MISSING_INFORMATION = 3;\n  ALREADY_TERMINATED = 5;\n  INTERNAL_ERROR = 6;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\nservice PartnerCompanyIngressService {\n  rpc AddEmployees(AddEmployeesRequest) returns (AddEmployeesResponse);\n}\n\nmessage AddEmployeesRequest {\n  repeated CreateEmployeeInfo create_employees_info = 1;\n}\n\nmessage AddEmployeesResponse {\n  repeated AddEmployeeResult results = 1;\n}\n\nmessage CreateEmployeeInfo {\n  enum EmploymentStatus {\n    UNKNOWN_EMPLOYMENT_STATUS = 0;\n    FULL_TIME = 1;\n    PART_TIME = 2;\n    INTERN = 3;\n    TEMPORARY = 4;\n    SEASONAL = 5;\n    INDIVIDUAL_CONTRACTOR = 6;\n    VOLUNTEER = 7;\n  }\n\n  string external_id = 1;\n  string given_name = 2;\n  string surname = 3;\n  string email = 4;\n  bool can_participate = 5 [deprecated = true];\n  bool is_match_eligible = 6 [deprecated = true];\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  optional Date termination_date = 10;\n  EmploymentStatus employment_status = 11;\n}\n\nmessage AddEmployeeResult {\n  string external_id = 1;\n  oneof outcome {\n    EmployeeDetails employee = 2;\n    AddEmployeeError error = 3;\n  }\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage AddEmployeeError {\n  AddEmployeeErrorType type = 1;\n  string message = 2;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nenum AddEmployeeErrorType {\n  UNKNOWN_ADD_EMPLOYEE_ERROR = 0;\n  START_DATE_IN_FUTURE = 2;\n  MISSING_INFORMATION = 3;\n  ALREADY_TERMINATED = 5;\n  INTERNAL_ERROR = 6;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/AddEmployees"},{"label":"BeginBankLink","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/beginbanklink","routeSlug":"/openapi/partnercompanyingressservice/beginbanklink","metadata":{"seo":{"title":"BeginBankLink","description":"Bank linking"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/BeginBankLink"},{"label":"ClearCoreConfigEligibility","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/clearcoreconfigeligibility","routeSlug":"/openapi/partnercompanyingressservice/clearcoreconfigeligibility","metadata":{"seo":{"title":"ClearCoreConfigEligibility","description":"service PartnerCompanyIngressService {\n  rpc ClearCoreConfigEligibility(ClearCoreConfigEligibilityRequest) returns (ClearCoreConfigEligibilityResponse);\n}\n\nmessage ClearCoreConfigEligibilityRequest {}\n\nmessage ClearCoreConfigEligibilityResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc ClearCoreConfigEligibility(ClearCoreConfigEligibilityRequest) returns (ClearCoreConfigEligibilityResponse);\n}\n\nmessage ClearCoreConfigEligibilityRequest {}\n\nmessage ClearCoreConfigEligibilityResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ClearCoreConfigEligibility"},{"label":"ClearCoreConfigEmployerMatch","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/clearcoreconfigemployermatch","routeSlug":"/openapi/partnercompanyingressservice/clearcoreconfigemployermatch","metadata":{"seo":{"title":"ClearCoreConfigEmployerMatch","description":"service PartnerCompanyIngressService {\n  rpc ClearCoreConfigEmployerMatch(ClearCoreConfigEmployerMatchRequest) returns (ClearCoreConfigEmployerMatchResponse);\n}\n\nmessage ClearCoreConfigEmployerMatchRequest {}\n\nmessage ClearCoreConfigEmployerMatchResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc ClearCoreConfigEmployerMatch(ClearCoreConfigEmployerMatchRequest) returns (ClearCoreConfigEmployerMatchResponse);\n}\n\nmessage ClearCoreConfigEmployerMatchRequest {}\n\nmessage ClearCoreConfigEmployerMatchResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ClearCoreConfigEmployerMatch"},{"label":"CompleteBankLink","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/completebanklink","routeSlug":"/openapi/partnercompanyingressservice/completebanklink","metadata":{"seo":{"title":"CompleteBankLink","description":"service PartnerCompanyIngressService {\n  rpc CompleteBankLink(CompleteBankLinkRequest) returns (CompleteBankLinkResponse);\n}\n\nmessage CompleteBankLinkRequest {\n  string public_token = 1;\n}\n\nmessage CompleteBankLinkResponse {\n  BankAccount bank_account = 1;\n}\n\nmessage BankAccount {\n  string bank_account_uuid = 1;\n  string institution_name = 2;\n  string last_4 = 3;\n  bool is_verified = 4;\n}\nservice PartnerCompanyIngressService {\n  rpc CompleteBankLink(CompleteBankLinkRequest) returns (CompleteBankLinkResponse);\n}\n\nmessage CompleteBankLinkRequest {\n  string public_token = 1;\n}\n\nmessage CompleteBankLinkResponse {\n  BankAccount bank_account = 1;\n}\n\nmessage BankAccount {\n  string bank_account_uuid = 1;\n  string institution_name = 2;\n  string last_4 = 3;\n  bool is_verified = 4;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/CompleteBankLink"},{"label":"CreateCompany","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/createcompany","routeSlug":"/openapi/partnercompanyingressservice/createcompany","metadata":{"seo":{"title":"CreateCompany","description":"Company creation"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/CreateCompany"},{"label":"CreatePlanConfiguration","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/createplanconfiguration","routeSlug":"/openapi/partnercompanyingressservice/createplanconfiguration","metadata":{"seo":{"title":"CreatePlanConfiguration","description":"Plan Configuration"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/CreatePlanConfiguration"},{"label":"DeletePlanConfiguration","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/deleteplanconfiguration","routeSlug":"/openapi/partnercompanyingressservice/deleteplanconfiguration","metadata":{"seo":{"title":"DeletePlanConfiguration","description":"service PartnerCompanyIngressService {\n  rpc DeletePlanConfiguration(DeletePlanConfigurationRequest) returns (DeletePlanConfigurationResponse);\n}\n\nmessage DeletePlanConfigurationRequest {}\n\nmessage DeletePlanConfigurationResponse {}\nservice PartnerCompanyIngressService {\n  rpc DeletePlanConfiguration(DeletePlanConfigurationRequest) returns (DeletePlanConfigurationResponse);\n}\n\nmessage DeletePlanConfigurationRequest {}\n\nmessage DeletePlanConfigurationResponse {}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/DeletePlanConfiguration"},{"label":"GetCompany","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/getcompany","routeSlug":"/openapi/partnercompanyingressservice/getcompany","metadata":{"seo":{"title":"GetCompany","description":"service PartnerCompanyIngressService {\n  rpc GetCompany(GetCompanyRequest) returns (GetCompanyResponse);\n}\n\nmessage GetCompanyRequest {\n}\n\nmessage GetCompanyResponse {\n  Company company = 1;\n}\n\nmessage Company {\n  string uuid = 1;\n  string business_name = 2;\n  optional string business_phone = 3;\n  string email = 4;\n  com.basiccapital.common.external.Address company_address = 5;\n  EntityType entity_type = 6;\n  string ein = 7;\n  optional string state_of_organization = 8;\n  Status status = 9;\n}\n\nmessage Address {\n  string address_line_1 = 1 [debug_redact = true];\n  string address_line_2 = 2 [debug_redact = true];\n  string city = 3 [debug_redact = true];\n  string state = 4 [debug_redact = true];\n  string postal_code = 5 [debug_redact = true];\n  CountryCode country_code = 6 [debug_redact = true];\n}\n\nenum EntityType {\n  UNKNOWN_COMPANY_ENTITY_TYPE = 0;\n  C_CORP = 1;\n  S_CORP = 2;\n  LLC = 3;\n  SOLE_PROPRIETORSHIP = 4;\n  LLP = 5;\n  NON_PROFIT = 6;\n  PARTNERSHIP = 7;\n  ELECTING_CHURCH = 9;\n  OTHER = 10;\n}\n\nenum Status {\n  UNKNOWN_STATUS = 0;\n  ACTIVE = 1;\n  ONBOARDING = 2;\n  CREATED = 3;\n  INACTIVE = 4;\n  LAPSED = 5;\n}\n\nenum CountryCode {\n  UNKNOWN_COUNTRY_CODE = 0;\n  TKL = 1;\n  BGR = 2;\n  LBY = 3;\n  TKM = 4;\n  MDA = 5;\n  DZA = 6;\n  IOT = 7;\n  KAZ = 8;\n  LCA = 9;\n  FLK = 10;\n  MDG = 11;\n  UMI = 12;\n  VNM = 13;\n  DJI = 14;\n  NER = 15;\n  MTQ = 16;\n  LSO = 17;\n  CYM = 18;\n  CYP = 19;\n  MDV = 20;\n  TLS = 21;\n  GNB = 22;\n  JAM = 23;\n  BHR = 24;\n  AGO = 25;\n  BHS = 26;\n  CIV = 27;\n  PHL = 28;\n  NFK = 29;\n  GNQ = 30;\n  SLB = 31;\n  CZE = 32;\n  SLE = 33;\n  MUS = 34;\n  BIH = 35;\n  LTU = 36;\n  MEX = 37;\n  PYF = 38;\n  NGA = 39;\n  SLV = 40;\n  AIA = 41;\n  SMR = 42;\n  IRL = 43;\n  LUX = 44;\n  IRN = 45;\n  IRQ = 46;\n  LVA = 47;\n  DMA = 48;\n  MWI = 49;\n  TON = 50;\n  AZE = 51;\n  VAT = 52;\n  KEN = 53;\n  GAB = 54;\n  ISL = 55;\n  YEM = 56;\n  NIC = 57;\n  ISR = 58;\n  WSM = 59;\n  HRV = 60;\n  MHL = 61;\n  DNK = 62;\n  ITA = 63;\n  ZWE = 64;\n  NIU = 65;\n  SOM = 66;\n  BLM = 67;\n  CMR = 68;\n  GRD = 69;\n  GRC = 70;\n  BLR = 71;\n  IDN = 72;\n  GRL = 73;\n  BLZ = 74;\n  JEY = 75;\n  NZL = 76;\n  GBR = 77;\n  PLW = 78;\n  ALA = 79;\n  ALB = 80;\n  DOM = 81;\n  MYS = 82;\n  SPM = 83;\n  VCT = 84;\n  MYT = 85;\n  URY = 86;\n  KWT = 87;\n  FRA = 88;\n  HTI = 89;\n  USA = 90;\n  BMU = 91;\n  ROU = 92;\n  KGZ = 93;\n  LIE = 94;\n  FRO = 95;\n  COD = 96;\n  COG = 97;\n  COK = 98;\n  COL = 99;\n  COM = 100;\n  KHM = 101;\n  PNG = 102;\n  SAU = 103;\n  NLD = 104;\n  HUN = 105;\n  GTM = 106;\n  MKD = 107;\n  OMN = 108;\n  TCA = 109;\n  ERI = 110;\n  FSM = 111;\n  SRB = 112;\n  TCD = 113;\n  VEN = 114;\n  VUT = 115;\n  AND = 116;\n  BOL = 117;\n  KIR = 118;\n  GUF = 119;\n  CPV = 120;\n  POL = 121;\n  GUM = 122;\n  LKA = 123;\n  ESH = 124;\n  GEO = 125;\n  MLI = 126;\n  SSD = 127;\n  CAF = 128;\n  ESP = 129;\n  GUY = 130;\n  TTO = 131;\n  EST = 132;\n  MLT = 133;\n  ECU = 134;\n  CAN = 135;\n  VGB = 136;\n  QAT = 137;\n  ETH = 138;\n  CRI = 139;\n  TUN = 140;\n  MMR = 141;\n  TUR = 142;\n  SDN = 143;\n  STP = 144;\n  TUV = 145;\n  PAK = 146;\n  UGA = 147;\n  PAN = 148;\n  MNE = 149;\n  MNG = 150;\n  BRA = 151;\n  BRB = 152;\n  NOR = 153;\n  ZMB = 154;\n  MNP = 155;\n  GGY = 156;\n  CCK = 157;\n  SEN = 158;\n  BRN = 159;\n  GHA = 160;\n  SUR = 161;\n  PRI = 162;\n  PRK = 163;\n  NPL = 164;\n  PRT = 165;\n  PRY = 166;\n  VIR = 167;\n  TWN = 168;\n  SVK = 169;\n  ARE = 170;\n  SVN = 171;\n  ARG = 172;\n  TGO = 173;\n  PSE = 174;\n  DEU = 175;\n  GIB = 176;\n  ARM = 177;\n  MOZ = 178;\n  RUS = 179;\n  REU = 180;\n  PCN = 181;\n  THA = 182;\n  GIN = 183;\n  ABW = 184;\n  CUB = 185;\n  KNA = 186;\n  NAM = 187;\n  SWE = 188;\n  BDI = 189;\n  BTN = 190;\n  EGY = 191;\n  HKG = 192;\n  ASM = 193;\n  SGS = 194;\n  CUW = 195;\n  SGP = 196;\n  UZB = 197;\n  SWZ = 198;\n  WLF = 199;\n  MAC = 200;\n  MAF = 201;\n  FIN = 202;\n  RWA = 203;\n  ATA = 204;\n  NRU = 205;\n  MAR = 206;\n  SXM = 207;\n  ATG = 208;\n  SHN = 209;\n  ATF = 210;\n  BEL = 211;\n  KOR = 212;\n  BEN = 213;\n  IMN = 214;\n  BES = 215;\n  TZA = 216;\n  FJI = 217;\n  PER = 218;\n  NCL = 219;\n  SYC = 220;\n  BFA = 221;\n  TJK = 222;\n  UKR = 223;\n  IND = 224;\n  LAO = 225;\n  MRT = 226;\n  ZAF = 227;\n  HMD = 228;\n  SYR = 229;\n  JOR = 230;\n  BVT = 231;\n  AUS = 232;\n  AUT = 233;\n  GLP = 234;\n  BWA = 235;\n  CHE = 236;\n  BGD = 237;\n  MCO = 238;\n  MSR = 239;\n  LBN = 240;\n  CHL = 241;\n  SJM = 242;\n  CHN = 243;\n  AFG = 244;\n  CXR = 245;\n  GMB = 246;\n  HND = 247;\n  JPN = 248;\n  LBR = 249;\n}\nservice PartnerCompanyIngressService {\n  rpc GetCompany(GetCompanyRequest) returns (GetCompanyResponse);\n}\n\nmessage GetCompanyRequest {\n}\n\nmessage GetCompanyResponse {\n  Company company = 1;\n}\n\nmessage Company {\n  string uuid = 1;\n  string business_name = 2;\n  optional string business_phone = 3;\n  string email = 4;\n  com.basiccapital.common.external.Address company_address = 5;\n  EntityType entity_type = 6;\n  string ein = 7;\n  optional string state_of_organization = 8;\n  Status status = 9;\n}\n\nmessage Address {\n  string address_line_1 = 1 [debug_redact = true];\n  string address_line_2 = 2 [debug_redact = true];\n  string city = 3 [debug_redact = true];\n  string state = 4 [debug_redact = true];\n  string postal_code = 5 [debug_redact = true];\n  CountryCode country_code = 6 [debug_redact = true];\n}\n\nenum EntityType {\n  UNKNOWN_COMPANY_ENTITY_TYPE = 0;\n  C_CORP = 1;\n  S_CORP = 2;\n  LLC = 3;\n  SOLE_PROPRIETORSHIP = 4;\n  LLP = 5;\n  NON_PROFIT = 6;\n  PARTNERSHIP = 7;\n  ELECTING_CHURCH = 9;\n  OTHER = 10;\n}\n\nenum Status {\n  UNKNOWN_STATUS = 0;\n  ACTIVE = 1;\n  ONBOARDING = 2;\n  CREATED = 3;\n  INACTIVE = 4;\n  LAPSED = 5;\n}\n\nenum CountryCode {\n  UNKNOWN_COUNTRY_CODE = 0;\n  TKL = 1;\n  BGR = 2;\n  LBY = 3;\n  TKM = 4;\n  MDA = 5;\n  DZA = 6;\n  IOT = 7;\n  KAZ = 8;\n  LCA = 9;\n  FLK = 10;\n  MDG = 11;\n  UMI = 12;\n  VNM = 13;\n  DJI = 14;\n  NER = 15;\n  MTQ = 16;\n  LSO = 17;\n  CYM = 18;\n  CYP = 19;\n  MDV = 20;\n  TLS = 21;\n  GNB = 22;\n  JAM = 23;\n  BHR = 24;\n  AGO = 25;\n  BHS = 26;\n  CIV = 27;\n  PHL = 28;\n  NFK = 29;\n  GNQ = 30;\n  SLB = 31;\n  CZE = 32;\n  SLE = 33;\n  MUS = 34;\n  BIH = 35;\n  LTU = 36;\n  MEX = 37;\n  PYF = 38;\n  NGA = 39;\n  SLV = 40;\n  AIA = 41;\n  SMR = 42;\n  IRL = 43;\n  LUX = 44;\n  IRN = 45;\n  IRQ = 46;\n  LVA = 47;\n  DMA = 48;\n  MWI = 49;\n  TON = 50;\n  AZE = 51;\n  VAT = 52;\n  KEN = 53;\n  GAB = 54;\n  ISL = 55;\n  YEM = 56;\n  NIC = 57;\n  ISR = 58;\n  WSM = 59;\n  HRV = 60;\n  MHL = 61;\n  DNK = 62;\n  ITA = 63;\n  ZWE = 64;\n  NIU = 65;\n  SOM = 66;\n  BLM = 67;\n  CMR = 68;\n  GRD = 69;\n  GRC = 70;\n  BLR = 71;\n  IDN = 72;\n  GRL = 73;\n  BLZ = 74;\n  JEY = 75;\n  NZL = 76;\n  GBR = 77;\n  PLW = 78;\n  ALA = 79;\n  ALB = 80;\n  DOM = 81;\n  MYS = 82;\n  SPM = 83;\n  VCT = 84;\n  MYT = 85;\n  URY = 86;\n  KWT = 87;\n  FRA = 88;\n  HTI = 89;\n  USA = 90;\n  BMU = 91;\n  ROU = 92;\n  KGZ = 93;\n  LIE = 94;\n  FRO = 95;\n  COD = 96;\n  COG = 97;\n  COK = 98;\n  COL = 99;\n  COM = 100;\n  KHM = 101;\n  PNG = 102;\n  SAU = 103;\n  NLD = 104;\n  HUN = 105;\n  GTM = 106;\n  MKD = 107;\n  OMN = 108;\n  TCA = 109;\n  ERI = 110;\n  FSM = 111;\n  SRB = 112;\n  TCD = 113;\n  VEN = 114;\n  VUT = 115;\n  AND = 116;\n  BOL = 117;\n  KIR = 118;\n  GUF = 119;\n  CPV = 120;\n  POL = 121;\n  GUM = 122;\n  LKA = 123;\n  ESH = 124;\n  GEO = 125;\n  MLI = 126;\n  SSD = 127;\n  CAF = 128;\n  ESP = 129;\n  GUY = 130;\n  TTO = 131;\n  EST = 132;\n  MLT = 133;\n  ECU = 134;\n  CAN = 135;\n  VGB = 136;\n  QAT = 137;\n  ETH = 138;\n  CRI = 139;\n  TUN = 140;\n  MMR = 141;\n  TUR = 142;\n  SDN = 143;\n  STP = 144;\n  TUV = 145;\n  PAK = 146;\n  UGA = 147;\n  PAN = 148;\n  MNE = 149;\n  MNG = 150;\n  BRA = 151;\n  BRB = 152;\n  NOR = 153;\n  ZMB = 154;\n  MNP = 155;\n  GGY = 156;\n  CCK = 157;\n  SEN = 158;\n  BRN = 159;\n  GHA = 160;\n  SUR = 161;\n  PRI = 162;\n  PRK = 163;\n  NPL = 164;\n  PRT = 165;\n  PRY = 166;\n  VIR = 167;\n  TWN = 168;\n  SVK = 169;\n  ARE = 170;\n  SVN = 171;\n  ARG = 172;\n  TGO = 173;\n  PSE = 174;\n  DEU = 175;\n  GIB = 176;\n  ARM = 177;\n  MOZ = 178;\n  RUS = 179;\n  REU = 180;\n  PCN = 181;\n  THA = 182;\n  GIN = 183;\n  ABW = 184;\n  CUB = 185;\n  KNA = 186;\n  NAM = 187;\n  SWE = 188;\n  BDI = 189;\n  BTN = 190;\n  EGY = 191;\n  HKG = 192;\n  ASM = 193;\n  SGS = 194;\n  CUW = 195;\n  SGP = 196;\n  UZB = 197;\n  SWZ = 198;\n  WLF = 199;\n  MAC = 200;\n  MAF = 201;\n  FIN = 202;\n  RWA = 203;\n  ATA = 204;\n  NRU = 205;\n  MAR = 206;\n  SXM = 207;\n  ATG = 208;\n  SHN = 209;\n  ATF = 210;\n  BEL = 211;\n  KOR = 212;\n  BEN = 213;\n  IMN = 214;\n  BES = 215;\n  TZA = 216;\n  FJI = 217;\n  PER = 218;\n  NCL = 219;\n  SYC = 220;\n  BFA = 221;\n  TJK = 222;\n  UKR = 223;\n  IND = 224;\n  LAO = 225;\n  MRT = 226;\n  ZAF = 227;\n  HMD = 228;\n  SYR = 229;\n  JOR = 230;\n  BVT = 231;\n  AUS = 232;\n  AUT = 233;\n  GLP = 234;\n  BWA = 235;\n  CHE = 236;\n  BGD = 237;\n  MCO = 238;\n  MSR = 239;\n  LBN = 240;\n  CHL = 241;\n  SJM = 242;\n  CHN = 243;\n  AFG = 244;\n  CXR = 245;\n  GMB = 246;\n  HND = 247;\n  JPN = 248;\n  LBR = 249;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/GetCompany"},{"label":"GetCompanySummary","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/getcompanysummary","routeSlug":"/openapi/partnercompanyingressservice/getcompanysummary","metadata":{"seo":{"title":"GetCompanySummary","description":"service PartnerCompanyIngressService {\n  rpc GetCompanySummary(GetCompanySummaryRequest) returns (GetCompanySummaryResponse);\n}\n\nmessage GetCompanySummaryRequest {\n  optional Date on_date = 1;\n}\n\nmessage GetCompanySummaryResponse {\n  optional CompanySummary company_summary = 1;\n  optional CompanyYtdSummary company_ytd_summary = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage CompanySummary {\n  EligibilityCounts employee_eligibility_counts = 1;\n  EmployeeAverageContributionRates employee_average_contribution_rates = 2;\n  PlanBalanceDetail plan_balance = 3;\n}\n\nmessage CompanyYtdSummary {\n  Money total_contributions_ytd = 1;\n  Money employee_contributions_ytd = 2;\n  optional Money employer_match_ytd = 3;\n  Money employee_trad_deferrals_ytd = 4;\n  Money employee_roth_deferrals_ytd = 5;\n  optional Money employee_mbdr_contributions_ytd = 6;\n}\n\nmessage EligibilityCounts {\n  int32 participation_rate_bps = 1;\n  int32 not_participating = 2;\n  int32 pending_eligibility = 3;\n  int32 actively_contributing = 4;\n  int32 past_employee = 5;\n  int32 cannot_participate = 6;\n  int32 auto_enrolled = 7;\n}\n\nmessage EmployeeAverageContributionRates {\n  int32 paycheck_deferral_rate_bps = 2;\n  int32 trad_deferral_rate_bps = 3;\n  int32 roth_deferral_rate_bps = 4;\n  int32 actual_match_rate_bps = 5;\n  int32 mbdr_contribution_rate_bps = 6;\n}\n\nmessage PlanBalanceDetail {\n  Money plan_balance = 1;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc GetCompanySummary(GetCompanySummaryRequest) returns (GetCompanySummaryResponse);\n}\n\nmessage GetCompanySummaryRequest {\n  optional Date on_date = 1;\n}\n\nmessage GetCompanySummaryResponse {\n  optional CompanySummary company_summary = 1;\n  optional CompanyYtdSummary company_ytd_summary = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage CompanySummary {\n  EligibilityCounts employee_eligibility_counts = 1;\n  EmployeeAverageContributionRates employee_average_contribution_rates = 2;\n  PlanBalanceDetail plan_balance = 3;\n}\n\nmessage CompanyYtdSummary {\n  Money total_contributions_ytd = 1;\n  Money employee_contributions_ytd = 2;\n  optional Money employer_match_ytd = 3;\n  Money employee_trad_deferrals_ytd = 4;\n  Money employee_roth_deferrals_ytd = 5;\n  optional Money employee_mbdr_contributions_ytd = 6;\n}\n\nmessage EligibilityCounts {\n  int32 participation_rate_bps = 1;\n  int32 not_participating = 2;\n  int32 pending_eligibility = 3;\n  int32 actively_contributing = 4;\n  int32 past_employee = 5;\n  int32 cannot_participate = 6;\n  int32 auto_enrolled = 7;\n}\n\nmessage EmployeeAverageContributionRates {\n  int32 paycheck_deferral_rate_bps = 2;\n  int32 trad_deferral_rate_bps = 3;\n  int32 roth_deferral_rate_bps = 4;\n  int32 actual_match_rate_bps = 5;\n  int32 mbdr_contribution_rate_bps = 6;\n}\n\nmessage PlanBalanceDetail {\n  Money plan_balance = 1;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/GetCompanySummary"},{"label":"GetCuratedInvestmentConfig","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/getcuratedinvestmentconfig","routeSlug":"/openapi/partnercompanyingressservice/getcuratedinvestmentconfig","metadata":{"seo":{"title":"GetCuratedInvestmentConfig","description":"service PartnerCompanyIngressService {\n  rpc GetCuratedInvestmentConfig(GetCuratedInvestmentConfigRequest) returns (GetCuratedInvestmentConfigResponse);\n}\n\nmessage GetCuratedInvestmentConfigRequest {}\n\nmessage GetCuratedInvestmentConfigResponse {\n  InvestmentConfig investment_config = 1;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc GetCuratedInvestmentConfig(GetCuratedInvestmentConfigRequest) returns (GetCuratedInvestmentConfigResponse);\n}\n\nmessage GetCuratedInvestmentConfigRequest {}\n\nmessage GetCuratedInvestmentConfigResponse {\n  InvestmentConfig investment_config = 1;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/GetCuratedInvestmentConfig"},{"label":"GetEligibilityCounts","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/geteligibilitycounts","routeSlug":"/openapi/partnercompanyingressservice/geteligibilitycounts","metadata":{"seo":{"title":"GetEligibilityCounts","description":"service PartnerCompanyIngressService {\n  rpc GetEligibilityCounts(GetEligibilityCountsRequest) returns (GetEligibilityCountsResponse);\n}\n\nmessage GetEligibilityCountsRequest {\n  optional Date on_date = 1;\n}\n\nmessage GetEligibilityCountsResponse {\n  optional EligibilityCounts employee_eligibility_counts = 1;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityCounts {\n  int32 participation_rate_bps = 1;\n  int32 not_participating = 2;\n  int32 pending_eligibility = 3;\n  int32 actively_contributing = 4;\n  int32 past_employee = 5;\n  int32 cannot_participate = 6;\n  int32 auto_enrolled = 7;\n}\nservice PartnerCompanyIngressService {\n  rpc GetEligibilityCounts(GetEligibilityCountsRequest) returns (GetEligibilityCountsResponse);\n}\n\nmessage GetEligibilityCountsRequest {\n  optional Date on_date = 1;\n}\n\nmessage GetEligibilityCountsResponse {\n  optional EligibilityCounts employee_eligibility_counts = 1;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityCounts {\n  int32 participation_rate_bps = 1;\n  int32 not_participating = 2;\n  int32 pending_eligibility = 3;\n  int32 actively_contributing = 4;\n  int32 past_employee = 5;\n  int32 cannot_participate = 6;\n  int32 auto_enrolled = 7;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/GetEligibilityCounts"},{"label":"GetEmployeeAverageContributionRates","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/getemployeeaveragecontributionrates","routeSlug":"/openapi/partnercompanyingressservice/getemployeeaveragecontributionrates","metadata":{"seo":{"title":"GetEmployeeAverageContributionRates","description":"service PartnerCompanyIngressService {\n  rpc GetEmployeeAverageContributionRates(GetEmployeeAverageContributionRatesRequest) returns (GetEmployeeAverageContributionRatesResponse);\n}\n\nmessage GetEmployeeAverageContributionRatesRequest {\n  optional Date on_date = 1;\n}\n\nmessage GetEmployeeAverageContributionRatesResponse {\n  optional EmployeeAverageContributionRates employee_average_contribution_rates = 1;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EmployeeAverageContributionRates {\n  int32 paycheck_deferral_rate_bps = 2;\n  int32 trad_deferral_rate_bps = 3;\n  int32 roth_deferral_rate_bps = 4;\n  int32 actual_match_rate_bps = 5;\n  int32 mbdr_contribution_rate_bps = 6;\n}\nservice PartnerCompanyIngressService {\n  rpc GetEmployeeAverageContributionRates(GetEmployeeAverageContributionRatesRequest) returns (GetEmployeeAverageContributionRatesResponse);\n}\n\nmessage GetEmployeeAverageContributionRatesRequest {\n  optional Date on_date = 1;\n}\n\nmessage GetEmployeeAverageContributionRatesResponse {\n  optional EmployeeAverageContributionRates employee_average_contribution_rates = 1;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EmployeeAverageContributionRates {\n  int32 paycheck_deferral_rate_bps = 2;\n  int32 trad_deferral_rate_bps = 3;\n  int32 roth_deferral_rate_bps = 4;\n  int32 actual_match_rate_bps = 5;\n  int32 mbdr_contribution_rate_bps = 6;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/GetEmployeeAverageContributionRates"},{"label":"GetEmployeeDetails","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/getemployeedetails","routeSlug":"/openapi/partnercompanyingressservice/getemployeedetails","metadata":{"seo":{"title":"GetEmployeeDetails","description":"service PartnerCompanyIngressService {\n  rpc GetEmployeeDetails(GetEmployeeDetailsRequest) returns (GetEmployeeDetailsResponse);\n}\n\nmessage GetEmployeeDetailsRequest {\n  string employee_uuid = 1;\n}\n\nmessage GetEmployeeDetailsResponse {\n  EmployeeDetails employee = 1;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc GetEmployeeDetails(GetEmployeeDetailsRequest) returns (GetEmployeeDetailsResponse);\n}\n\nmessage GetEmployeeDetailsRequest {\n  string employee_uuid = 1;\n}\n\nmessage GetEmployeeDetailsResponse {\n  EmployeeDetails employee = 1;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/GetEmployeeDetails"},{"label":"GetOnboardingStatus","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/getonboardingstatus","routeSlug":"/openapi/partnercompanyingressservice/getonboardingstatus","metadata":{"seo":{"title":"GetOnboardingStatus","description":"service PartnerCompanyIngressService {\n  rpc GetOnboardingStatus(GetOnboardingStatusRequest) returns (GetOnboardingStatusResponse);\n}\n\nmessage GetOnboardingStatusRequest {}\n\nmessage GetOnboardingStatusResponse {\n  SectionStatus plan_configuration_status = 1;\n  SectionStatus sign_agreements_status = 2;\n  SectionStatus bank_linking_status = 3;\n\n  bool ready_to_enroll_employees = 4;\n  bool ready_to_start_deductions = 5;\n\n  enum SectionStatus {\n    UNKNOWN_SECTION_STATUS = 0;\n    BLOCKED = 1;\n    PENDING = 2;\n    IN_PROGRESS = 3;\n    COMPLETE = 4;\n  }\n\n  enum OnboardingStatus {\n    UNKNOWN_ONBOARDING_STATUS = 0;\n    ONBOARDING_IN_PROGRESS = 1;\n    ONBOARDING_COMPLETE = 2;\n  }\n\n  OnboardingStatus status = 6;\n\n  SectionStatus trustee_kyc_status = 7;\n  SectionStatus kyb_status = 8;\n  SectionStatus link_hris_status = 9;\n}\nservice PartnerCompanyIngressService {\n  rpc GetOnboardingStatus(GetOnboardingStatusRequest) returns (GetOnboardingStatusResponse);\n}\n\nmessage GetOnboardingStatusRequest {}\n\nmessage GetOnboardingStatusResponse {\n  SectionStatus plan_configuration_status = 1;\n  SectionStatus sign_agreements_status = 2;\n  SectionStatus bank_linking_status = 3;\n\n  bool ready_to_enroll_employees = 4;\n  bool ready_to_start_deductions = 5;\n\n  enum SectionStatus {\n    UNKNOWN_SECTION_STATUS = 0;\n    BLOCKED = 1;\n    PENDING = 2;\n    IN_PROGRESS = 3;\n    COMPLETE = 4;\n  }\n\n  enum OnboardingStatus {\n    UNKNOWN_ONBOARDING_STATUS = 0;\n    ONBOARDING_IN_PROGRESS = 1;\n    ONBOARDING_COMPLETE = 2;\n  }\n\n  OnboardingStatus status = 6;\n\n  SectionStatus trustee_kyc_status = 7;\n  SectionStatus kyb_status = 8;\n  SectionStatus link_hris_status = 9;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/GetOnboardingStatus"},{"label":"GetPlanBalance","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/getplanbalance","routeSlug":"/openapi/partnercompanyingressservice/getplanbalance","metadata":{"seo":{"title":"GetPlanBalance","description":"Plan balance"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/GetPlanBalance"},{"label":"GetPlanConfiguration","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/getplanconfiguration","routeSlug":"/openapi/partnercompanyingressservice/getplanconfiguration","metadata":{"seo":{"title":"GetPlanConfiguration","description":"service PartnerCompanyIngressService {\n  rpc GetPlanConfiguration(GetPlanConfigurationRequest) returns (GetPlanConfigurationResponse);\n}\n\nmessage GetPlanConfigurationRequest {}\n\nmessage GetPlanConfigurationResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc GetPlanConfiguration(GetPlanConfigurationRequest) returns (GetPlanConfigurationResponse);\n}\n\nmessage GetPlanConfigurationRequest {}\n\nmessage GetPlanConfigurationResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/GetPlanConfiguration"},{"label":"GetTrustee","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/gettrustee","routeSlug":"/openapi/partnercompanyingressservice/gettrustee","metadata":{"seo":{"title":"GetTrustee","description":"service PartnerCompanyIngressService {\n  rpc GetTrustee(GetTrusteeRequest) returns (GetTrusteeResponse);\n}\n\nmessage GetTrusteeRequest {}\n\nmessage GetTrusteeResponse {\n  message TrusteeInfo {\n    string external_id = 1;\n    string email = 2;\n    string given_name = 3;\n    string surname = 4;\n  }\n\n  optional TrusteeInfo trustee_info = 1;\n}\nservice PartnerCompanyIngressService {\n  rpc GetTrustee(GetTrusteeRequest) returns (GetTrusteeResponse);\n}\n\nmessage GetTrusteeRequest {}\n\nmessage GetTrusteeResponse {\n  message TrusteeInfo {\n    string external_id = 1;\n    string email = 2;\n    string given_name = 3;\n    string surname = 4;\n  }\n\n  optional TrusteeInfo trustee_info = 1;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/GetTrustee"},{"label":"ListAvailablePlanInvestmentOptions","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listavailableplaninvestmentoptions","routeSlug":"/openapi/partnercompanyingressservice/listavailableplaninvestmentoptions","metadata":{"seo":{"title":"ListAvailablePlanInvestmentOptions","description":"service PartnerCompanyIngressService {\n  rpc ListAvailablePlanInvestmentOptions(ListAvailablePlanInvestmentOptionsRequest) returns (ListAvailablePlanInvestmentOptionsResponse);\n}\n\nmessage ListAvailablePlanInvestmentOptionsRequest {\n  QdiaType qdia_type = 1;\n}\n\nmessage ListAvailablePlanInvestmentOptionsResponse {\n  repeated AssetMetadata investment_options = 1;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc ListAvailablePlanInvestmentOptions(ListAvailablePlanInvestmentOptionsRequest) returns (ListAvailablePlanInvestmentOptionsResponse);\n}\n\nmessage ListAvailablePlanInvestmentOptionsRequest {\n  QdiaType qdia_type = 1;\n}\n\nmessage ListAvailablePlanInvestmentOptionsResponse {\n  repeated AssetMetadata investment_options = 1;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListAvailablePlanInvestmentOptions"},{"label":"ListBankAccounts","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listbankaccounts","routeSlug":"/openapi/partnercompanyingressservice/listbankaccounts","metadata":{"seo":{"title":"ListBankAccounts","description":"service PartnerCompanyIngressService {\n  rpc ListBankAccounts(ListBankAccountsRequest) returns (ListBankAccountsResponse);\n}\n\nmessage ListBankAccountsRequest {}\n\nmessage ListBankAccountsResponse {\n  repeated BankAccount accounts = 1;\n  int32 max_linked_bank_accounts = 2;\n}\n\nmessage BankAccount {\n  string bank_account_uuid = 1;\n  string institution_name = 2;\n  string last_4 = 3;\n  bool is_verified = 4;\n}\nservice PartnerCompanyIngressService {\n  rpc ListBankAccounts(ListBankAccountsRequest) returns (ListBankAccountsResponse);\n}\n\nmessage ListBankAccountsRequest {}\n\nmessage ListBankAccountsResponse {\n  repeated BankAccount accounts = 1;\n  int32 max_linked_bank_accounts = 2;\n}\n\nmessage BankAccount {\n  string bank_account_uuid = 1;\n  string institution_name = 2;\n  string last_4 = 3;\n  bool is_verified = 4;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListBankAccounts"},{"label":"ListCompanyPayrollEvents","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listcompanypayrollevents","routeSlug":"/openapi/partnercompanyingressservice/listcompanypayrollevents","metadata":{"seo":{"title":"ListCompanyPayrollEvents","description":"service PartnerCompanyIngressService {\n  rpc ListCompanyPayrollEvents(ListCompanyPayrollEventsRequest) returns (ListCompanyPayrollEventsResponse);\n}\n\nmessage ListCompanyPayrollEventsRequest {\n  optional com.basiccapital.common.external.PaginationRequest pagination = 1;\n  optional IntervalRequest interval = 2;\n  repeated string external_ids = 3;\n}\n\nmessage ListCompanyPayrollEventsResponse {\n  repeated PayrollEvent payroll_events = 1;\n  optional string next_page_token = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage IntervalRequest {\n  optional Date start_date = 1;\n  optional Date end_date = 2;\n}\n\nmessage PayrollEvent {\n  string uuid = 1;\n  string external_id = 2;\n  Date pay_date = 3;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\nservice PartnerCompanyIngressService {\n  rpc ListCompanyPayrollEvents(ListCompanyPayrollEventsRequest) returns (ListCompanyPayrollEventsResponse);\n}\n\nmessage ListCompanyPayrollEventsRequest {\n  optional com.basiccapital.common.external.PaginationRequest pagination = 1;\n  optional IntervalRequest interval = 2;\n  repeated string external_ids = 3;\n}\n\nmessage ListCompanyPayrollEventsResponse {\n  repeated PayrollEvent payroll_events = 1;\n  optional string next_page_token = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage IntervalRequest {\n  optional Date start_date = 1;\n  optional Date end_date = 2;\n}\n\nmessage PayrollEvent {\n  string uuid = 1;\n  string external_id = 2;\n  Date pay_date = 3;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListCompanyPayrollEvents"},{"label":"ListCompanySummary","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listcompanysummary","routeSlug":"/openapi/partnercompanyingressservice/listcompanysummary","metadata":{"seo":{"title":"ListCompanySummary","description":"Company summary"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListCompanySummary"},{"label":"ListEligibilityCounts","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listeligibilitycounts","routeSlug":"/openapi/partnercompanyingressservice/listeligibilitycounts","metadata":{"seo":{"title":"ListEligibilityCounts","description":"Eligibility"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListEligibilityCounts"},{"label":"ListEmployeeAverageContributionRates","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listemployeeaveragecontributionrates","routeSlug":"/openapi/partnercompanyingressservice/listemployeeaveragecontributionrates","metadata":{"seo":{"title":"ListEmployeeAverageContributionRates","description":"Contribution rates"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListEmployeeAverageContributionRates"},{"label":"ListEmployeeContributionDetails","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listemployeecontributiondetails","routeSlug":"/openapi/partnercompanyingressservice/listemployeecontributiondetails","metadata":{"seo":{"title":"ListEmployeeContributionDetails","description":"service PartnerCompanyIngressService {\n  rpc ListEmployeeContributionDetails(ListEmployeeContributionDetailsRequest) returns (ListEmployeeContributionDetailsResponse);\n}\n\nmessage ListEmployeeContributionDetailsRequest {\n  string transaction_uuid = 1;\n  optional com.basiccapital.common.external.PaginationRequest pagination = 2;\n}\n\nmessage ListEmployeeContributionDetailsResponse {\n  message EmployeeContributionDetails {\n    string employee_uuid = 1;\n    ContributionDetails contribution_details = 2;\n  }\n\n  repeated EmployeeContributionDetails employee_contribution_details = 1;\n  Transaction transaction = 2;\n  optional string next_page_token = 4;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage Transaction {\n  enum TransactionType {\n    UNKNOWN_TRANSACTION_TYPE = 0;\n    CONTRIBUTION = 1;\n    FEE_BILLINGS = 2;\n  }\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    CREATED = 1;\n    PROCESSING = 2;\n    COMPLETED = 3;\n    CANCELED = 4;\n    FAILED = 5;\n  }\n\n  string transaction_id = 1;\n  string uuid = 2;\n  Status status = 3;\n  Date transaction_date = 4;\n  Money total_amount = 5;\n  optional ContributionDetails contribution_details = 6;\n  TransactionType transaction_type = 7;\n}\n\nmessage ContributionDetails {\n  Date payroll_date = 1;\n  Money paycheck_deferral = 2;\n  Money trad_deferrals = 3;\n  Money roth_deferrals = 4;\n  Money employer_match = 5;\n  Money mbdr_contribution = 6;\n  string payroll_event_uuid = 7;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc ListEmployeeContributionDetails(ListEmployeeContributionDetailsRequest) returns (ListEmployeeContributionDetailsResponse);\n}\n\nmessage ListEmployeeContributionDetailsRequest {\n  string transaction_uuid = 1;\n  optional com.basiccapital.common.external.PaginationRequest pagination = 2;\n}\n\nmessage ListEmployeeContributionDetailsResponse {\n  message EmployeeContributionDetails {\n    string employee_uuid = 1;\n    ContributionDetails contribution_details = 2;\n  }\n\n  repeated EmployeeContributionDetails employee_contribution_details = 1;\n  Transaction transaction = 2;\n  optional string next_page_token = 4;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage Transaction {\n  enum TransactionType {\n    UNKNOWN_TRANSACTION_TYPE = 0;\n    CONTRIBUTION = 1;\n    FEE_BILLINGS = 2;\n  }\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    CREATED = 1;\n    PROCESSING = 2;\n    COMPLETED = 3;\n    CANCELED = 4;\n    FAILED = 5;\n  }\n\n  string transaction_id = 1;\n  string uuid = 2;\n  Status status = 3;\n  Date transaction_date = 4;\n  Money total_amount = 5;\n  optional ContributionDetails contribution_details = 6;\n  TransactionType transaction_type = 7;\n}\n\nmessage ContributionDetails {\n  Date payroll_date = 1;\n  Money paycheck_deferral = 2;\n  Money trad_deferrals = 3;\n  Money roth_deferrals = 4;\n  Money employer_match = 5;\n  Money mbdr_contribution = 6;\n  string payroll_event_uuid = 7;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListEmployeeContributionDetails"},{"label":"ListEmployeeDetails","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listemployeedetails","routeSlug":"/openapi/partnercompanyingressservice/listemployeedetails","metadata":{"seo":{"title":"ListEmployeeDetails","description":"service PartnerCompanyIngressService {\n  rpc ListEmployeeDetails(ListEmployeeDetailsRequest) returns (ListEmployeeDetailsResponse);\n}\n\nmessage ListEmployeeDetailsRequest {\n  optional com.basiccapital.common.external.PaginationRequest pagination = 1;\n  repeated EmployeeDetails.ParticipationStatus statuses = 2;\n  optional string search_query = 3;\n}\n\nmessage ListEmployeeDetailsResponse {\n  repeated EmployeeDetails employees = 1;\n  optional string next_page_token = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc ListEmployeeDetails(ListEmployeeDetailsRequest) returns (ListEmployeeDetailsResponse);\n}\n\nmessage ListEmployeeDetailsRequest {\n  optional com.basiccapital.common.external.PaginationRequest pagination = 1;\n  repeated EmployeeDetails.ParticipationStatus statuses = 2;\n  optional string search_query = 3;\n}\n\nmessage ListEmployeeDetailsResponse {\n  repeated EmployeeDetails employees = 1;\n  optional string next_page_token = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListEmployeeDetails"},{"label":"ListManagementOptions","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listmanagementoptions","routeSlug":"/openapi/partnercompanyingressservice/listmanagementoptions","metadata":{"seo":{"title":"ListManagementOptions","description":"service PartnerCompanyIngressService {\n  rpc ListManagementOptions(ListManagementOptionsRequest) returns (ListManagementOptionsResponse);\n}\n\nmessage ListManagementOptionsRequest {}\n\nmessage ListManagementOptionsResponse {\n  repeated ManagementOption management_options = 1;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\nservice PartnerCompanyIngressService {\n  rpc ListManagementOptions(ListManagementOptionsRequest) returns (ListManagementOptionsResponse);\n}\n\nmessage ListManagementOptionsRequest {}\n\nmessage ListManagementOptionsResponse {\n  repeated ManagementOption management_options = 1;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListManagementOptions"},{"label":"ListPlanBalances","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listplanbalances","routeSlug":"/openapi/partnercompanyingressservice/listplanbalances","metadata":{"seo":{"title":"ListPlanBalances","description":"Plan balances"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListPlanBalances"},{"label":"ListQdiaFunds","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listqdiafunds","routeSlug":"/openapi/partnercompanyingressservice/listqdiafunds","metadata":{"seo":{"title":"ListQdiaFunds","description":"service PartnerCompanyIngressService {\n  rpc ListQdiaFunds(ListQdiaFundsRequest) returns (ListQdiaFundsResponse);\n}\n\nmessage ListQdiaFundsRequest {}\n\nmessage ListQdiaFundsResponse {\n  repeated QdiaType qdia = 1;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\nservice PartnerCompanyIngressService {\n  rpc ListQdiaFunds(ListQdiaFundsRequest) returns (ListQdiaFundsResponse);\n}\n\nmessage ListQdiaFundsRequest {}\n\nmessage ListQdiaFundsResponse {\n  repeated QdiaType qdia = 1;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListQdiaFunds"},{"label":"ListTransactions","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/listtransactions","routeSlug":"/openapi/partnercompanyingressservice/listtransactions","metadata":{"seo":{"title":"ListTransactions","description":"Transactions"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/ListTransactions"},{"label":"SetEmployeeContributionRates","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/companysetemployeecontributionrates","routeSlug":"/openapi/partnercompanyingressservice/companysetemployeecontributionrates","metadata":{"seo":{"title":"SetEmployeeContributionRates","description":"service PartnerCompanyIngressService {\n  rpc SetEmployeeContributionRates(CompanySetEmployeeContributionRatesRequest) returns (CompanySetEmployeeContributionRatesResponse);\n}\n\nmessage CompanySetEmployeeContributionRatesRequest {\n  string employee_uuid = 1;\n  repeated ContributionInfo employee_contribution_rates = 2;\n}\n\nmessage CompanySetEmployeeContributionRatesResponse {}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\nservice PartnerCompanyIngressService {\n  rpc SetEmployeeContributionRates(CompanySetEmployeeContributionRatesRequest) returns (CompanySetEmployeeContributionRatesResponse);\n}\n\nmessage CompanySetEmployeeContributionRatesRequest {\n  string employee_uuid = 1;\n  repeated ContributionInfo employee_contribution_rates = 2;\n}\n\nmessage CompanySetEmployeeContributionRatesResponse {}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/SetEmployeeContributionRates"},{"label":"SetInvestmentConfig","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/setinvestmentconfig","routeSlug":"/openapi/partnercompanyingressservice/setinvestmentconfig","metadata":{"seo":{"title":"SetInvestmentConfig","description":"service PartnerCompanyIngressService {\n  rpc SetInvestmentConfig(SetInvestmentConfigRequest) returns (SetInvestmentConfigResponse);\n}\n\nmessage SetInvestmentConfigRequest {\n  QdiaType qdia_type = 1;\n  repeated string ticker_symbols = 2;\n}\n\nmessage SetInvestmentConfigResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc SetInvestmentConfig(SetInvestmentConfigRequest) returns (SetInvestmentConfigResponse);\n}\n\nmessage SetInvestmentConfigRequest {\n  QdiaType qdia_type = 1;\n  repeated string ticker_symbols = 2;\n}\n\nmessage SetInvestmentConfigResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/SetInvestmentConfig"},{"label":"SetManagementOptionType","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/setmanagementoptiontype","routeSlug":"/openapi/partnercompanyingressservice/setmanagementoptiontype","metadata":{"seo":{"title":"SetManagementOptionType","description":"service PartnerCompanyIngressService {\n  rpc SetManagementOptionType(SetManagementOptionTypeRequest) returns (SetManagementOptionTypeResponse);\n}\n\nmessage SetManagementOptionTypeRequest {\n  ManagementOptionType management_option_type = 1;\n}\n\nmessage SetManagementOptionTypeResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc SetManagementOptionType(SetManagementOptionTypeRequest) returns (SetManagementOptionTypeResponse);\n}\n\nmessage SetManagementOptionTypeRequest {\n  ManagementOptionType management_option_type = 1;\n}\n\nmessage SetManagementOptionTypeResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/SetManagementOptionType"},{"label":"SetTrustee","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/settrustee","routeSlug":"/openapi/partnercompanyingressservice/settrustee","metadata":{"seo":{"title":"SetTrustee","description":"Trustee"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/SetTrustee"},{"label":"SubmitPayrollEvent","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/submitpayrollevent","routeSlug":"/openapi/partnercompanyingressservice/submitpayrollevent","metadata":{"seo":{"title":"SubmitPayrollEvent","description":"service PartnerCompanyIngressService {\n  rpc SubmitPayrollEvent(SubmitPayrollEventRequest) returns (SubmitPayrollEventResponse);\n}\n\nmessage SubmitPayrollEventRequest {\n  string external_payroll_event_id = 1;\n}\n\nmessage SubmitPayrollEventResponse {\n  PayrollEvent payroll_event = 1;\n}\n\nmessage PayrollEvent {\n  string uuid = 1;\n  string external_id = 2;\n  Date pay_date = 3;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\nservice PartnerCompanyIngressService {\n  rpc SubmitPayrollEvent(SubmitPayrollEventRequest) returns (SubmitPayrollEventResponse);\n}\n\nmessage SubmitPayrollEventRequest {\n  string external_payroll_event_id = 1;\n}\n\nmessage SubmitPayrollEventResponse {\n  PayrollEvent payroll_event = 1;\n}\n\nmessage PayrollEvent {\n  string uuid = 1;\n  string external_id = 2;\n  Date pay_date = 3;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/SubmitPayrollEvent"},{"label":"SubmitPlanConfiguration","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/submitplanconfiguration","routeSlug":"/openapi/partnercompanyingressservice/submitplanconfiguration","metadata":{"seo":{"title":"SubmitPlanConfiguration","description":"service PartnerCompanyIngressService {\n  rpc SubmitPlanConfiguration(SubmitPlanConfigurationRequest) returns (SubmitPlanConfigurationResponse);\n}\n\nmessage SubmitPlanConfigurationRequest {}\n\nmessage SubmitPlanConfigurationResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc SubmitPlanConfiguration(SubmitPlanConfigurationRequest) returns (SubmitPlanConfigurationResponse);\n}\n\nmessage SubmitPlanConfigurationRequest {}\n\nmessage SubmitPlanConfigurationResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/SubmitPlanConfiguration"},{"label":"TerminateEmployee","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/terminateemployee","routeSlug":"/openapi/partnercompanyingressservice/terminateemployee","metadata":{"seo":{"title":"TerminateEmployee","description":"service PartnerCompanyIngressService {\n  rpc TerminateEmployee(TerminateEmployeeRequest) returns (TerminateEmployeeResponse);\n}\n\nmessage TerminateEmployeeRequest {\n  string employee_uuid = 1;\n  Date termination_date = 2;\n}\n\nmessage TerminateEmployeeResponse {\n  EmployeeDetails employee = 1;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc TerminateEmployee(TerminateEmployeeRequest) returns (TerminateEmployeeResponse);\n}\n\nmessage TerminateEmployeeRequest {\n  string employee_uuid = 1;\n  Date termination_date = 2;\n}\n\nmessage TerminateEmployeeResponse {\n  EmployeeDetails employee = 1;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/TerminateEmployee"},{"label":"UnlinkLinkedAccount","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/unlinklinkedaccount","routeSlug":"/openapi/partnercompanyingressservice/unlinklinkedaccount","metadata":{"seo":{"title":"UnlinkLinkedAccount","description":"service PartnerCompanyIngressService {\n  rpc UnlinkLinkedAccount(UnlinkLinkedAccountRequest) returns (UnlinkLinkedAccountResponse);\n}\n\nmessage UnlinkLinkedAccountRequest {\n  string linked_account_uuid = 1;\n}\n\nmessage UnlinkLinkedAccountResponse {}\nservice PartnerCompanyIngressService {\n  rpc UnlinkLinkedAccount(UnlinkLinkedAccountRequest) returns (UnlinkLinkedAccountResponse);\n}\n\nmessage UnlinkLinkedAccountRequest {\n  string linked_account_uuid = 1;\n}\n\nmessage UnlinkLinkedAccountResponse {}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/UnlinkLinkedAccount"},{"label":"UpdateCompany","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/updatecompany","routeSlug":"/openapi/partnercompanyingressservice/updatecompany","metadata":{"seo":{"title":"UpdateCompany","description":"service PartnerCompanyIngressService {\n  rpc UpdateCompany(UpdateCompanyRequest) returns (UpdateCompanyResponse);\n}\n\nmessage UpdateCompanyRequest {\n  optional com.basiccapital.common.external.Address address = 1;\n  optional string business_name = 2;\n  optional string business_phone = 3;\n  optional string state_of_organization = 4;\n  optional string email = 5;\n}\n\nmessage UpdateCompanyResponse {\n  Company company = 1;\n}\n\nmessage Address {\n  string address_line_1 = 1 [debug_redact = true];\n  string address_line_2 = 2 [debug_redact = true];\n  string city = 3 [debug_redact = true];\n  string state = 4 [debug_redact = true];\n  string postal_code = 5 [debug_redact = true];\n  CountryCode country_code = 6 [debug_redact = true];\n}\n\nmessage Company {\n  string uuid = 1;\n  string business_name = 2;\n  optional string business_phone = 3;\n  string email = 4;\n  com.basiccapital.common.external.Address company_address = 5;\n  EntityType entity_type = 6;\n  string ein = 7;\n  optional string state_of_organization = 8;\n  Status status = 9;\n}\n\nenum CountryCode {\n  UNKNOWN_COUNTRY_CODE = 0;\n  TKL = 1;\n  BGR = 2;\n  LBY = 3;\n  TKM = 4;\n  MDA = 5;\n  DZA = 6;\n  IOT = 7;\n  KAZ = 8;\n  LCA = 9;\n  FLK = 10;\n  MDG = 11;\n  UMI = 12;\n  VNM = 13;\n  DJI = 14;\n  NER = 15;\n  MTQ = 16;\n  LSO = 17;\n  CYM = 18;\n  CYP = 19;\n  MDV = 20;\n  TLS = 21;\n  GNB = 22;\n  JAM = 23;\n  BHR = 24;\n  AGO = 25;\n  BHS = 26;\n  CIV = 27;\n  PHL = 28;\n  NFK = 29;\n  GNQ = 30;\n  SLB = 31;\n  CZE = 32;\n  SLE = 33;\n  MUS = 34;\n  BIH = 35;\n  LTU = 36;\n  MEX = 37;\n  PYF = 38;\n  NGA = 39;\n  SLV = 40;\n  AIA = 41;\n  SMR = 42;\n  IRL = 43;\n  LUX = 44;\n  IRN = 45;\n  IRQ = 46;\n  LVA = 47;\n  DMA = 48;\n  MWI = 49;\n  TON = 50;\n  AZE = 51;\n  VAT = 52;\n  KEN = 53;\n  GAB = 54;\n  ISL = 55;\n  YEM = 56;\n  NIC = 57;\n  ISR = 58;\n  WSM = 59;\n  HRV = 60;\n  MHL = 61;\n  DNK = 62;\n  ITA = 63;\n  ZWE = 64;\n  NIU = 65;\n  SOM = 66;\n  BLM = 67;\n  CMR = 68;\n  GRD = 69;\n  GRC = 70;\n  BLR = 71;\n  IDN = 72;\n  GRL = 73;\n  BLZ = 74;\n  JEY = 75;\n  NZL = 76;\n  GBR = 77;\n  PLW = 78;\n  ALA = 79;\n  ALB = 80;\n  DOM = 81;\n  MYS = 82;\n  SPM = 83;\n  VCT = 84;\n  MYT = 85;\n  URY = 86;\n  KWT = 87;\n  FRA = 88;\n  HTI = 89;\n  USA = 90;\n  BMU = 91;\n  ROU = 92;\n  KGZ = 93;\n  LIE = 94;\n  FRO = 95;\n  COD = 96;\n  COG = 97;\n  COK = 98;\n  COL = 99;\n  COM = 100;\n  KHM = 101;\n  PNG = 102;\n  SAU = 103;\n  NLD = 104;\n  HUN = 105;\n  GTM = 106;\n  MKD = 107;\n  OMN = 108;\n  TCA = 109;\n  ERI = 110;\n  FSM = 111;\n  SRB = 112;\n  TCD = 113;\n  VEN = 114;\n  VUT = 115;\n  AND = 116;\n  BOL = 117;\n  KIR = 118;\n  GUF = 119;\n  CPV = 120;\n  POL = 121;\n  GUM = 122;\n  LKA = 123;\n  ESH = 124;\n  GEO = 125;\n  MLI = 126;\n  SSD = 127;\n  CAF = 128;\n  ESP = 129;\n  GUY = 130;\n  TTO = 131;\n  EST = 132;\n  MLT = 133;\n  ECU = 134;\n  CAN = 135;\n  VGB = 136;\n  QAT = 137;\n  ETH = 138;\n  CRI = 139;\n  TUN = 140;\n  MMR = 141;\n  TUR = 142;\n  SDN = 143;\n  STP = 144;\n  TUV = 145;\n  PAK = 146;\n  UGA = 147;\n  PAN = 148;\n  MNE = 149;\n  MNG = 150;\n  BRA = 151;\n  BRB = 152;\n  NOR = 153;\n  ZMB = 154;\n  MNP = 155;\n  GGY = 156;\n  CCK = 157;\n  SEN = 158;\n  BRN = 159;\n  GHA = 160;\n  SUR = 161;\n  PRI = 162;\n  PRK = 163;\n  NPL = 164;\n  PRT = 165;\n  PRY = 166;\n  VIR = 167;\n  TWN = 168;\n  SVK = 169;\n  ARE = 170;\n  SVN = 171;\n  ARG = 172;\n  TGO = 173;\n  PSE = 174;\n  DEU = 175;\n  GIB = 176;\n  ARM = 177;\n  MOZ = 178;\n  RUS = 179;\n  REU = 180;\n  PCN = 181;\n  THA = 182;\n  GIN = 183;\n  ABW = 184;\n  CUB = 185;\n  KNA = 186;\n  NAM = 187;\n  SWE = 188;\n  BDI = 189;\n  BTN = 190;\n  EGY = 191;\n  HKG = 192;\n  ASM = 193;\n  SGS = 194;\n  CUW = 195;\n  SGP = 196;\n  UZB = 197;\n  SWZ = 198;\n  WLF = 199;\n  MAC = 200;\n  MAF = 201;\n  FIN = 202;\n  RWA = 203;\n  ATA = 204;\n  NRU = 205;\n  MAR = 206;\n  SXM = 207;\n  ATG = 208;\n  SHN = 209;\n  ATF = 210;\n  BEL = 211;\n  KOR = 212;\n  BEN = 213;\n  IMN = 214;\n  BES = 215;\n  TZA = 216;\n  FJI = 217;\n  PER = 218;\n  NCL = 219;\n  SYC = 220;\n  BFA = 221;\n  TJK = 222;\n  UKR = 223;\n  IND = 224;\n  LAO = 225;\n  MRT = 226;\n  ZAF = 227;\n  HMD = 228;\n  SYR = 229;\n  JOR = 230;\n  BVT = 231;\n  AUS = 232;\n  AUT = 233;\n  GLP = 234;\n  BWA = 235;\n  CHE = 236;\n  BGD = 237;\n  MCO = 238;\n  MSR = 239;\n  LBN = 240;\n  CHL = 241;\n  SJM = 242;\n  CHN = 243;\n  AFG = 244;\n  CXR = 245;\n  GMB = 246;\n  HND = 247;\n  JPN = 248;\n  LBR = 249;\n}\n\nenum EntityType {\n  UNKNOWN_COMPANY_ENTITY_TYPE = 0;\n  C_CORP = 1;\n  S_CORP = 2;\n  LLC = 3;\n  SOLE_PROPRIETORSHIP = 4;\n  LLP = 5;\n  NON_PROFIT = 6;\n  PARTNERSHIP = 7;\n  ELECTING_CHURCH = 9;\n  OTHER = 10;\n}\n\nenum Status {\n  UNKNOWN_STATUS = 0;\n  ACTIVE = 1;\n  ONBOARDING = 2;\n  CREATED = 3;\n  INACTIVE = 4;\n  LAPSED = 5;\n}\nservice PartnerCompanyIngressService {\n  rpc UpdateCompany(UpdateCompanyRequest) returns (UpdateCompanyResponse);\n}\n\nmessage UpdateCompanyRequest {\n  optional com.basiccapital.common.external.Address address = 1;\n  optional string business_name = 2;\n  optional string business_phone = 3;\n  optional string state_of_organization = 4;\n  optional string email = 5;\n}\n\nmessage UpdateCompanyResponse {\n  Company company = 1;\n}\n\nmessage Address {\n  string address_line_1 = 1 [debug_redact = true];\n  string address_line_2 = 2 [debug_redact = true];\n  string city = 3 [debug_redact = true];\n  string state = 4 [debug_redact = true];\n  string postal_code = 5 [debug_redact = true];\n  CountryCode country_code = 6 [debug_redact = true];\n}\n\nmessage Company {\n  string uuid = 1;\n  string business_name = 2;\n  optional string business_phone = 3;\n  string email = 4;\n  com.basiccapital.common.external.Address company_address = 5;\n  EntityType entity_type = 6;\n  string ein = 7;\n  optional string state_of_organization = 8;\n  Status status = 9;\n}\n\nenum CountryCode {\n  UNKNOWN_COUNTRY_CODE = 0;\n  TKL = 1;\n  BGR = 2;\n  LBY = 3;\n  TKM = 4;\n  MDA = 5;\n  DZA = 6;\n  IOT = 7;\n  KAZ = 8;\n  LCA = 9;\n  FLK = 10;\n  MDG = 11;\n  UMI = 12;\n  VNM = 13;\n  DJI = 14;\n  NER = 15;\n  MTQ = 16;\n  LSO = 17;\n  CYM = 18;\n  CYP = 19;\n  MDV = 20;\n  TLS = 21;\n  GNB = 22;\n  JAM = 23;\n  BHR = 24;\n  AGO = 25;\n  BHS = 26;\n  CIV = 27;\n  PHL = 28;\n  NFK = 29;\n  GNQ = 30;\n  SLB = 31;\n  CZE = 32;\n  SLE = 33;\n  MUS = 34;\n  BIH = 35;\n  LTU = 36;\n  MEX = 37;\n  PYF = 38;\n  NGA = 39;\n  SLV = 40;\n  AIA = 41;\n  SMR = 42;\n  IRL = 43;\n  LUX = 44;\n  IRN = 45;\n  IRQ = 46;\n  LVA = 47;\n  DMA = 48;\n  MWI = 49;\n  TON = 50;\n  AZE = 51;\n  VAT = 52;\n  KEN = 53;\n  GAB = 54;\n  ISL = 55;\n  YEM = 56;\n  NIC = 57;\n  ISR = 58;\n  WSM = 59;\n  HRV = 60;\n  MHL = 61;\n  DNK = 62;\n  ITA = 63;\n  ZWE = 64;\n  NIU = 65;\n  SOM = 66;\n  BLM = 67;\n  CMR = 68;\n  GRD = 69;\n  GRC = 70;\n  BLR = 71;\n  IDN = 72;\n  GRL = 73;\n  BLZ = 74;\n  JEY = 75;\n  NZL = 76;\n  GBR = 77;\n  PLW = 78;\n  ALA = 79;\n  ALB = 80;\n  DOM = 81;\n  MYS = 82;\n  SPM = 83;\n  VCT = 84;\n  MYT = 85;\n  URY = 86;\n  KWT = 87;\n  FRA = 88;\n  HTI = 89;\n  USA = 90;\n  BMU = 91;\n  ROU = 92;\n  KGZ = 93;\n  LIE = 94;\n  FRO = 95;\n  COD = 96;\n  COG = 97;\n  COK = 98;\n  COL = 99;\n  COM = 100;\n  KHM = 101;\n  PNG = 102;\n  SAU = 103;\n  NLD = 104;\n  HUN = 105;\n  GTM = 106;\n  MKD = 107;\n  OMN = 108;\n  TCA = 109;\n  ERI = 110;\n  FSM = 111;\n  SRB = 112;\n  TCD = 113;\n  VEN = 114;\n  VUT = 115;\n  AND = 116;\n  BOL = 117;\n  KIR = 118;\n  GUF = 119;\n  CPV = 120;\n  POL = 121;\n  GUM = 122;\n  LKA = 123;\n  ESH = 124;\n  GEO = 125;\n  MLI = 126;\n  SSD = 127;\n  CAF = 128;\n  ESP = 129;\n  GUY = 130;\n  TTO = 131;\n  EST = 132;\n  MLT = 133;\n  ECU = 134;\n  CAN = 135;\n  VGB = 136;\n  QAT = 137;\n  ETH = 138;\n  CRI = 139;\n  TUN = 140;\n  MMR = 141;\n  TUR = 142;\n  SDN = 143;\n  STP = 144;\n  TUV = 145;\n  PAK = 146;\n  UGA = 147;\n  PAN = 148;\n  MNE = 149;\n  MNG = 150;\n  BRA = 151;\n  BRB = 152;\n  NOR = 153;\n  ZMB = 154;\n  MNP = 155;\n  GGY = 156;\n  CCK = 157;\n  SEN = 158;\n  BRN = 159;\n  GHA = 160;\n  SUR = 161;\n  PRI = 162;\n  PRK = 163;\n  NPL = 164;\n  PRT = 165;\n  PRY = 166;\n  VIR = 167;\n  TWN = 168;\n  SVK = 169;\n  ARE = 170;\n  SVN = 171;\n  ARG = 172;\n  TGO = 173;\n  PSE = 174;\n  DEU = 175;\n  GIB = 176;\n  ARM = 177;\n  MOZ = 178;\n  RUS = 179;\n  REU = 180;\n  PCN = 181;\n  THA = 182;\n  GIN = 183;\n  ABW = 184;\n  CUB = 185;\n  KNA = 186;\n  NAM = 187;\n  SWE = 188;\n  BDI = 189;\n  BTN = 190;\n  EGY = 191;\n  HKG = 192;\n  ASM = 193;\n  SGS = 194;\n  CUW = 195;\n  SGP = 196;\n  UZB = 197;\n  SWZ = 198;\n  WLF = 199;\n  MAC = 200;\n  MAF = 201;\n  FIN = 202;\n  RWA = 203;\n  ATA = 204;\n  NRU = 205;\n  MAR = 206;\n  SXM = 207;\n  ATG = 208;\n  SHN = 209;\n  ATF = 210;\n  BEL = 211;\n  KOR = 212;\n  BEN = 213;\n  IMN = 214;\n  BES = 215;\n  TZA = 216;\n  FJI = 217;\n  PER = 218;\n  NCL = 219;\n  SYC = 220;\n  BFA = 221;\n  TJK = 222;\n  UKR = 223;\n  IND = 224;\n  LAO = 225;\n  MRT = 226;\n  ZAF = 227;\n  HMD = 228;\n  SYR = 229;\n  JOR = 230;\n  BVT = 231;\n  AUS = 232;\n  AUT = 233;\n  GLP = 234;\n  BWA = 235;\n  CHE = 236;\n  BGD = 237;\n  MCO = 238;\n  MSR = 239;\n  LBN = 240;\n  CHL = 241;\n  SJM = 242;\n  CHN = 243;\n  AFG = 244;\n  CXR = 245;\n  GMB = 246;\n  HND = 247;\n  JPN = 248;\n  LBR = 249;\n}\n\nenum EntityType {\n  UNKNOWN_COMPANY_ENTITY_TYPE = 0;\n  C_CORP = 1;\n  S_CORP = 2;\n  LLC = 3;\n  SOLE_PROPRIETORSHIP = 4;\n  LLP = 5;\n  NON_PROFIT = 6;\n  PARTNERSHIP = 7;\n  ELECTING_CHURCH = 9;\n  OTHER = 10;\n}\n\nenum Status {\n  UNKNOWN_STATUS = 0;\n  ACTIVE = 1;\n  ONBOARDING = 2;\n  CREATED = 3;\n  INACTIVE = 4;\n  LAPSED = 5;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/UpdateCompany"},{"label":"UpdateCoreConfig","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/updatecoreconfig","routeSlug":"/openapi/partnercompanyingressservice/updatecoreconfig","metadata":{"seo":{"title":"UpdateCoreConfig","description":"service PartnerCompanyIngressService {\n  rpc UpdateCoreConfig(UpdateCoreConfigRequest) returns (UpdateCoreConfigResponse);\n}\n\nmessage UpdateCoreConfigRequest {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n}\n\nmessage UpdateCoreConfigResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc UpdateCoreConfig(UpdateCoreConfigRequest) returns (UpdateCoreConfigResponse);\n}\n\nmessage UpdateCoreConfigRequest {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n}\n\nmessage UpdateCoreConfigResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/UpdateCoreConfig"},{"label":"UpdatePlanConfiguration","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/updateplanconfiguration","routeSlug":"/openapi/partnercompanyingressservice/updateplanconfiguration","metadata":{"seo":{"title":"UpdatePlanConfiguration","description":"service PartnerCompanyIngressService {\n  rpc UpdatePlanConfiguration(UpdatePlanConfigurationRequest) returns (UpdatePlanConfigurationResponse);\n}\n\nmessage UpdatePlanConfigurationRequest {\n  optional SetManagementOptionTypeRequest management_option = 1;\n  optional SetInvestmentConfigRequest investment_config = 2;\n  optional UpdateCoreConfigRequest core_config = 3;\n}\n\nmessage UpdatePlanConfigurationResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage SetManagementOptionTypeRequest {\n  ManagementOptionType management_option_type = 1;\n}\n\nmessage SetInvestmentConfigRequest {\n  QdiaType qdia_type = 1;\n  repeated string ticker_symbols = 2;\n}\n\nmessage UpdateCoreConfigRequest {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerCompanyIngressService {\n  rpc UpdatePlanConfiguration(UpdatePlanConfigurationRequest) returns (UpdatePlanConfigurationResponse);\n}\n\nmessage UpdatePlanConfigurationRequest {\n  optional SetManagementOptionTypeRequest management_option = 1;\n  optional SetInvestmentConfigRequest investment_config = 2;\n  optional UpdateCoreConfigRequest core_config = 3;\n}\n\nmessage UpdatePlanConfigurationResponse {\n  PlanConfiguration plan_configuration = 1;\n}\n\nmessage SetManagementOptionTypeRequest {\n  ManagementOptionType management_option_type = 1;\n}\n\nmessage SetInvestmentConfigRequest {\n  QdiaType qdia_type = 1;\n  repeated string ticker_symbols = 2;\n}\n\nmessage UpdateCoreConfigRequest {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n}\n\nmessage PlanConfiguration {\n  ManagementOption management_option = 1;\n  InvestmentConfig investment_config = 2;\n  CoreConfig core_config = 3;\n  optional MigrationConfig plan_migration_info = 4;\n\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    DRAFT = 1;\n    IN_REVIEW = 2;\n    READY_FOR_SUBMISSION = 3;\n    SUBMITTED = 4;\n  }\n\n  Status status = 5;\n}\n\nenum ManagementOptionType {\n  UNKNOWN_MANAGEMENT_TYPE = 0;\n  PARTNER_USP_FULLY_MANAGED = 1;\n  PARTNER_USP_EMPLOYER_MANAGED = 2;\n  PARTNER_PEO = 3;\n  PARTNER_IC = 4;\n}\n\nenum QdiaType {\n  UNKNOWN_QDIA_TYPE = 0;\n  FIDELITY = 1;\n  VANGUARD = 2;\n  OTHER_QDIA_TYPE = 3;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage EligibilityConfig {\n  message HoursConfig {\n    int32 hours_required = 1;\n    int32 rolling_period = 2;\n  }\n\n  oneof period {\n    int32 days_since_start = 1;\n    HoursConfig hours_config = 2;\n  }\n}\n\nmessage ManagementOption {\n  repeated ManagementOptionOffering management_option_offerings = 1;\n  ManagementOptionType type = 2;\n  string summary = 3;\n  ConfigurationSectionStatus status = 4;\n}\n\nmessage InvestmentConfig {\n  QdiaType qdia = 1;\n  repeated AssetMetadata investment_options = 2;\n  optional ConfigurationSectionStatus status = 3;\n}\n\nmessage CoreConfig {\n  repeated EmployerMatchTier employer_match_tiers = 1;\n  optional bool enable_roth = 2;\n  optional bool enable_plan401K_loans = 3;\n  optional bool enable_mega_backdoor_roth = 4;\n  optional int32 employee_auto_enrollment_bps = 5;\n  optional int32 employee_auto_enrollment_increase_bps = 6;\n  optional Date ideal_start_date = 7;\n  optional EligibilityConfig eligibility_config = 8;\n  ConfigurationSectionStatus status = 9;\n}\n\nmessage MigrationConfig {\n  string migration_record_keeper = 1;\n}\n\nmessage ManagementOptionOffering {\n  enum ManagementOptionOfferingType {\n    UNKNOWN = 0;\n    FIDUCIARY_316 = 1;\n    FIDUCIARY_338 = 2;\n    FORM_5500_FILING = 3;\n    CURATED_INVESTMENT_OPTION_SELECTION = 4;\n    ROTH_401K = 5;\n    TRADITIONAL_401K = 6;\n    EMPLOYER_MATCH = 7;\n    SAFE_HARBOR = 8;\n    COMPLIANCE_TESTING = 9;\n    MEGA_BACKDOOR_ROTH = 10;\n    BROKERAGE_WINDOW = 11;\n  }\n\n  ManagementOptionOfferingType type = 1;\n  bool isSupported = 2;\n}\n\nenum ConfigurationSectionStatus {\n  UNKNOWN_CONFIGURATION_SECTION_STATUS = 0;\n  INCOMPLETE = 1;\n  COMPLETE = 2;\n  LOCKED_INCOMPLETE = 3;\n  LOCKED_COMPLETE = 4;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/UpdatePlanConfiguration"},{"label":"VerifyBankLink","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnercompanyingressservice/verifybanklink","routeSlug":"/openapi/partnercompanyingressservice/verifybanklink","metadata":{"seo":{"title":"VerifyBankLink","description":"service PartnerCompanyIngressService {\n  rpc VerifyBankLink(VerifyBankLinkRequest) returns (VerifyBankLinkResponse);\n}\n\nmessage VerifyBankLinkRequest {\n  string bank_account_uuid = 1;\n}\n\nmessage VerifyBankLinkResponse {\n  string link_token = 1;\n}\nservice PartnerCompanyIngressService {\n  rpc VerifyBankLink(VerifyBankLinkRequest) returns (VerifyBankLinkResponse);\n}\n\nmessage VerifyBankLinkRequest {\n  string bank_account_uuid = 1;\n}\n\nmessage VerifyBankLinkResponse {\n  string link_token = 1;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerCompanyIngressService/VerifyBankLink"}]},{"type":"group","label":"PartnerEmployeeIngressService","link":"/openapi/partneremployeeingressservice","routeSlug":"/openapi/partneremployeeingressservice","items":[{"label":"CreateBeneficiaries","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/createbeneficiaries","routeSlug":"/openapi/partneremployeeingressservice/createbeneficiaries","metadata":{"seo":{"title":"CreateBeneficiaries","description":"Account Beneficiaries"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/CreateBeneficiaries"},{"label":"DeleteBeneficiary","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/deletebeneficiary","routeSlug":"/openapi/partneremployeeingressservice/deletebeneficiary","metadata":{"seo":{"title":"DeleteBeneficiary","description":"service PartnerEmployeeIngressService {\n  rpc DeleteBeneficiary(DeleteBeneficiaryRequest) returns (DeleteBeneficiaryResponse);\n}\n\nmessage DeleteBeneficiaryRequest {\n  string beneficiary_uuid = 1;\n}\n\nmessage DeleteBeneficiaryResponse {}\nservice PartnerEmployeeIngressService {\n  rpc DeleteBeneficiary(DeleteBeneficiaryRequest) returns (DeleteBeneficiaryResponse);\n}\n\nmessage DeleteBeneficiaryRequest {\n  string beneficiary_uuid = 1;\n}\n\nmessage DeleteBeneficiaryResponse {}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/DeleteBeneficiary"},{"label":"GetAccount","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getaccount","routeSlug":"/openapi/partneremployeeingressservice/getaccount","metadata":{"seo":{"title":"GetAccount","description":"service PartnerEmployeeIngressService {\n  rpc GetAccount(GetAccountRequest) returns (GetAccountResponse);\n}\n\nmessage GetAccountRequest {\n  string account_id = 1;\n}\n\nmessage GetAccountResponse {\n  optional Account account = 1;\n}\n\nmessage Account {\n  string account_id = 1;\n  Type type = 2;\n\n  enum Type {\n    UNKNOWN_TYPE = 0;\n    TRADITIONAL_401K = 1;\n    ROTH_401K = 2;\n  }\n}\nservice PartnerEmployeeIngressService {\n  rpc GetAccount(GetAccountRequest) returns (GetAccountResponse);\n}\n\nmessage GetAccountRequest {\n  string account_id = 1;\n}\n\nmessage GetAccountResponse {\n  optional Account account = 1;\n}\n\nmessage Account {\n  string account_id = 1;\n  Type type = 2;\n\n  enum Type {\n    UNKNOWN_TYPE = 0;\n    TRADITIONAL_401K = 1;\n    ROTH_401K = 2;\n  }\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetAccount"},{"label":"GetAccountHoldingsSummary","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getaccountholdingssummary","routeSlug":"/openapi/partneremployeeingressservice/getaccountholdingssummary","metadata":{"seo":{"title":"GetAccountHoldingsSummary","description":"service PartnerEmployeeIngressService {\n  rpc GetAccountHoldingsSummary(GetAccountHoldingsSummaryRequest) returns (GetAccountHoldingsSummaryResponse);\n}\n\nmessage GetAccountHoldingsSummaryRequest {\n  optional Date on_date = 1;\n  optional string account_id = 2;\n}\n\nmessage GetAccountHoldingsSummaryResponse {\n  message AccountHoldingsSummary {\n    message HoldingMetadata {\n      AssetMetadata metadata = 1;\n      int32 allocation_bps = 2;\n      int32 gain_or_loss_bps = 3;\n    }\n    Money net_asset_value = 2;\n    repeated HoldingMetadata holding_metadata = 3;\n    optional Date first_contribution_date = 4;\n  }\n  repeated AccountHoldingsSummary account_holdings_summary = 1;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc GetAccountHoldingsSummary(GetAccountHoldingsSummaryRequest) returns (GetAccountHoldingsSummaryResponse);\n}\n\nmessage GetAccountHoldingsSummaryRequest {\n  optional Date on_date = 1;\n  optional string account_id = 2;\n}\n\nmessage GetAccountHoldingsSummaryResponse {\n  message AccountHoldingsSummary {\n    message HoldingMetadata {\n      AssetMetadata metadata = 1;\n      int32 allocation_bps = 2;\n      int32 gain_or_loss_bps = 3;\n    }\n    Money net_asset_value = 2;\n    repeated HoldingMetadata holding_metadata = 3;\n    optional Date first_contribution_date = 4;\n  }\n  repeated AccountHoldingsSummary account_holdings_summary = 1;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetAccountHoldingsSummary"},{"label":"GetBeneficiary","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getbeneficiary","routeSlug":"/openapi/partneremployeeingressservice/getbeneficiary","metadata":{"seo":{"title":"GetBeneficiary","description":"service PartnerEmployeeIngressService {\n  rpc GetBeneficiary(GetBeneficiaryRequest) returns (GetBeneficiaryResponse);\n}\n\nmessage GetBeneficiaryRequest {\n  string beneficiary_uuid = 1;\n}\n\nmessage GetBeneficiaryResponse {\n  Beneficiary beneficiary = 1;\n}\n\nmessage Beneficiary {\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    PENDING = 1;\n    CONFIRMED = 2;\n  }\n\n  string uuid = 1;\n  string given_name = 2 [debug_redact = true];\n  string surname = 3 [debug_redact = true];\n  com.basiccapital.common.external.BeneficiaryRelationship relationship = 4;\n  Date date_of_birth = 5 [debug_redact = true];\n  string email = 6 [debug_redact = true];\n  string phone_number = 7 [debug_redact = true];\n  com.basiccapital.common.external.Address address = 8 [debug_redact = true];\n  Status status = 9;\n  repeated BeneficiaryAllocation allocations = 10;\n}\n\nenum BeneficiaryRelationship {\n  UNKNOWN_RELATIONSHIP = 0;\n  SPOUSE = 1 [(bcoptions.string_name) = \"Spouse\"];\n  PARENT = 2 [(bcoptions.string_name) = \"Parent\"];\n  SIBLING = 3 [(bcoptions.string_name) = \"Sibling\"];\n  CHILD = 4 [(bcoptions.string_name) = \"Child\"];\n  FRIEND = 5 [(bcoptions.string_name) = \"Friend\"];\n  OTHER_RELATIONSHIP = 6 [(bcoptions.string_name) = \"Other\"];\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Address {\n  string address_line_1 = 1 [debug_redact = true];\n  string address_line_2 = 2 [debug_redact = true];\n  string city = 3 [debug_redact = true];\n  string state = 4 [debug_redact = true];\n  string postal_code = 5 [debug_redact = true];\n  CountryCode country_code = 6 [debug_redact = true];\n}\n\nmessage BeneficiaryAllocation {\n  string beneficiary_uuid = 1;\n  optional string account_uuid = 2;\n  int32 allocation_bps = 3;\n}\n\nenum CountryCode {\n  UNKNOWN_COUNTRY_CODE = 0;\n  TKL = 1;\n  BGR = 2;\n  LBY = 3;\n  TKM = 4;\n  MDA = 5;\n  DZA = 6;\n  IOT = 7;\n  KAZ = 8;\n  LCA = 9;\n  FLK = 10;\n  MDG = 11;\n  UMI = 12;\n  VNM = 13;\n  DJI = 14;\n  NER = 15;\n  MTQ = 16;\n  LSO = 17;\n  CYM = 18;\n  CYP = 19;\n  MDV = 20;\n  TLS = 21;\n  GNB = 22;\n  JAM = 23;\n  BHR = 24;\n  AGO = 25;\n  BHS = 26;\n  CIV = 27;\n  PHL = 28;\n  NFK = 29;\n  GNQ = 30;\n  SLB = 31;\n  CZE = 32;\n  SLE = 33;\n  MUS = 34;\n  BIH = 35;\n  LTU = 36;\n  MEX = 37;\n  PYF = 38;\n  NGA = 39;\n  SLV = 40;\n  AIA = 41;\n  SMR = 42;\n  IRL = 43;\n  LUX = 44;\n  IRN = 45;\n  IRQ = 46;\n  LVA = 47;\n  DMA = 48;\n  MWI = 49;\n  TON = 50;\n  AZE = 51;\n  VAT = 52;\n  KEN = 53;\n  GAB = 54;\n  ISL = 55;\n  YEM = 56;\n  NIC = 57;\n  ISR = 58;\n  WSM = 59;\n  HRV = 60;\n  MHL = 61;\n  DNK = 62;\n  ITA = 63;\n  ZWE = 64;\n  NIU = 65;\n  SOM = 66;\n  BLM = 67;\n  CMR = 68;\n  GRD = 69;\n  GRC = 70;\n  BLR = 71;\n  IDN = 72;\n  GRL = 73;\n  BLZ = 74;\n  JEY = 75;\n  NZL = 76;\n  GBR = 77;\n  PLW = 78;\n  ALA = 79;\n  ALB = 80;\n  DOM = 81;\n  MYS = 82;\n  SPM = 83;\n  VCT = 84;\n  MYT = 85;\n  URY = 86;\n  KWT = 87;\n  FRA = 88;\n  HTI = 89;\n  USA = 90;\n  BMU = 91;\n  ROU = 92;\n  KGZ = 93;\n  LIE = 94;\n  FRO = 95;\n  COD = 96;\n  COG = 97;\n  COK = 98;\n  COL = 99;\n  COM = 100;\n  KHM = 101;\n  PNG = 102;\n  SAU = 103;\n  NLD = 104;\n  HUN = 105;\n  GTM = 106;\n  MKD = 107;\n  OMN = 108;\n  TCA = 109;\n  ERI = 110;\n  FSM = 111;\n  SRB = 112;\n  TCD = 113;\n  VEN = 114;\n  VUT = 115;\n  AND = 116;\n  BOL = 117;\n  KIR = 118;\n  GUF = 119;\n  CPV = 120;\n  POL = 121;\n  GUM = 122;\n  LKA = 123;\n  ESH = 124;\n  GEO = 125;\n  MLI = 126;\n  SSD = 127;\n  CAF = 128;\n  ESP = 129;\n  GUY = 130;\n  TTO = 131;\n  EST = 132;\n  MLT = 133;\n  ECU = 134;\n  CAN = 135;\n  VGB = 136;\n  QAT = 137;\n  ETH = 138;\n  CRI = 139;\n  TUN = 140;\n  MMR = 141;\n  TUR = 142;\n  SDN = 143;\n  STP = 144;\n  TUV = 145;\n  PAK = 146;\n  UGA = 147;\n  PAN = 148;\n  MNE = 149;\n  MNG = 150;\n  BRA = 151;\n  BRB = 152;\n  NOR = 153;\n  ZMB = 154;\n  MNP = 155;\n  GGY = 156;\n  CCK = 157;\n  SEN = 158;\n  BRN = 159;\n  GHA = 160;\n  SUR = 161;\n  PRI = 162;\n  PRK = 163;\n  NPL = 164;\n  PRT = 165;\n  PRY = 166;\n  VIR = 167;\n  TWN = 168;\n  SVK = 169;\n  ARE = 170;\n  SVN = 171;\n  ARG = 172;\n  TGO = 173;\n  PSE = 174;\n  DEU = 175;\n  GIB = 176;\n  ARM = 177;\n  MOZ = 178;\n  RUS = 179;\n  REU = 180;\n  PCN = 181;\n  THA = 182;\n  GIN = 183;\n  ABW = 184;\n  CUB = 185;\n  KNA = 186;\n  NAM = 187;\n  SWE = 188;\n  BDI = 189;\n  BTN = 190;\n  EGY = 191;\n  HKG = 192;\n  ASM = 193;\n  SGS = 194;\n  CUW = 195;\n  SGP = 196;\n  UZB = 197;\n  SWZ = 198;\n  WLF = 199;\n  MAC = 200;\n  MAF = 201;\n  FIN = 202;\n  RWA = 203;\n  ATA = 204;\n  NRU = 205;\n  MAR = 206;\n  SXM = 207;\n  ATG = 208;\n  SHN = 209;\n  ATF = 210;\n  BEL = 211;\n  KOR = 212;\n  BEN = 213;\n  IMN = 214;\n  BES = 215;\n  TZA = 216;\n  FJI = 217;\n  PER = 218;\n  NCL = 219;\n  SYC = 220;\n  BFA = 221;\n  TJK = 222;\n  UKR = 223;\n  IND = 224;\n  LAO = 225;\n  MRT = 226;\n  ZAF = 227;\n  HMD = 228;\n  SYR = 229;\n  JOR = 230;\n  BVT = 231;\n  AUS = 232;\n  AUT = 233;\n  GLP = 234;\n  BWA = 235;\n  CHE = 236;\n  BGD = 237;\n  MCO = 238;\n  MSR = 239;\n  LBN = 240;\n  CHL = 241;\n  SJM = 242;\n  CHN = 243;\n  AFG = 244;\n  CXR = 245;\n  GMB = 246;\n  HND = 247;\n  JPN = 248;\n  LBR = 249;\n}\nservice PartnerEmployeeIngressService {\n  rpc GetBeneficiary(GetBeneficiaryRequest) returns (GetBeneficiaryResponse);\n}\n\nmessage GetBeneficiaryRequest {\n  string beneficiary_uuid = 1;\n}\n\nmessage GetBeneficiaryResponse {\n  Beneficiary beneficiary = 1;\n}\n\nmessage Beneficiary {\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    PENDING = 1;\n    CONFIRMED = 2;\n  }\n\n  string uuid = 1;\n  string given_name = 2 [debug_redact = true];\n  string surname = 3 [debug_redact = true];\n  com.basiccapital.common.external.BeneficiaryRelationship relationship = 4;\n  Date date_of_birth = 5 [debug_redact = true];\n  string email = 6 [debug_redact = true];\n  string phone_number = 7 [debug_redact = true];\n  com.basiccapital.common.external.Address address = 8 [debug_redact = true];\n  Status status = 9;\n  repeated BeneficiaryAllocation allocations = 10;\n}\n\nenum BeneficiaryRelationship {\n  UNKNOWN_RELATIONSHIP = 0;\n  SPOUSE = 1 [(bcoptions.string_name) = \"Spouse\"];\n  PARENT = 2 [(bcoptions.string_name) = \"Parent\"];\n  SIBLING = 3 [(bcoptions.string_name) = \"Sibling\"];\n  CHILD = 4 [(bcoptions.string_name) = \"Child\"];\n  FRIEND = 5 [(bcoptions.string_name) = \"Friend\"];\n  OTHER_RELATIONSHIP = 6 [(bcoptions.string_name) = \"Other\"];\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Address {\n  string address_line_1 = 1 [debug_redact = true];\n  string address_line_2 = 2 [debug_redact = true];\n  string city = 3 [debug_redact = true];\n  string state = 4 [debug_redact = true];\n  string postal_code = 5 [debug_redact = true];\n  CountryCode country_code = 6 [debug_redact = true];\n}\n\nmessage BeneficiaryAllocation {\n  string beneficiary_uuid = 1;\n  optional string account_uuid = 2;\n  int32 allocation_bps = 3;\n}\n\nenum CountryCode {\n  UNKNOWN_COUNTRY_CODE = 0;\n  TKL = 1;\n  BGR = 2;\n  LBY = 3;\n  TKM = 4;\n  MDA = 5;\n  DZA = 6;\n  IOT = 7;\n  KAZ = 8;\n  LCA = 9;\n  FLK = 10;\n  MDG = 11;\n  UMI = 12;\n  VNM = 13;\n  DJI = 14;\n  NER = 15;\n  MTQ = 16;\n  LSO = 17;\n  CYM = 18;\n  CYP = 19;\n  MDV = 20;\n  TLS = 21;\n  GNB = 22;\n  JAM = 23;\n  BHR = 24;\n  AGO = 25;\n  BHS = 26;\n  CIV = 27;\n  PHL = 28;\n  NFK = 29;\n  GNQ = 30;\n  SLB = 31;\n  CZE = 32;\n  SLE = 33;\n  MUS = 34;\n  BIH = 35;\n  LTU = 36;\n  MEX = 37;\n  PYF = 38;\n  NGA = 39;\n  SLV = 40;\n  AIA = 41;\n  SMR = 42;\n  IRL = 43;\n  LUX = 44;\n  IRN = 45;\n  IRQ = 46;\n  LVA = 47;\n  DMA = 48;\n  MWI = 49;\n  TON = 50;\n  AZE = 51;\n  VAT = 52;\n  KEN = 53;\n  GAB = 54;\n  ISL = 55;\n  YEM = 56;\n  NIC = 57;\n  ISR = 58;\n  WSM = 59;\n  HRV = 60;\n  MHL = 61;\n  DNK = 62;\n  ITA = 63;\n  ZWE = 64;\n  NIU = 65;\n  SOM = 66;\n  BLM = 67;\n  CMR = 68;\n  GRD = 69;\n  GRC = 70;\n  BLR = 71;\n  IDN = 72;\n  GRL = 73;\n  BLZ = 74;\n  JEY = 75;\n  NZL = 76;\n  GBR = 77;\n  PLW = 78;\n  ALA = 79;\n  ALB = 80;\n  DOM = 81;\n  MYS = 82;\n  SPM = 83;\n  VCT = 84;\n  MYT = 85;\n  URY = 86;\n  KWT = 87;\n  FRA = 88;\n  HTI = 89;\n  USA = 90;\n  BMU = 91;\n  ROU = 92;\n  KGZ = 93;\n  LIE = 94;\n  FRO = 95;\n  COD = 96;\n  COG = 97;\n  COK = 98;\n  COL = 99;\n  COM = 100;\n  KHM = 101;\n  PNG = 102;\n  SAU = 103;\n  NLD = 104;\n  HUN = 105;\n  GTM = 106;\n  MKD = 107;\n  OMN = 108;\n  TCA = 109;\n  ERI = 110;\n  FSM = 111;\n  SRB = 112;\n  TCD = 113;\n  VEN = 114;\n  VUT = 115;\n  AND = 116;\n  BOL = 117;\n  KIR = 118;\n  GUF = 119;\n  CPV = 120;\n  POL = 121;\n  GUM = 122;\n  LKA = 123;\n  ESH = 124;\n  GEO = 125;\n  MLI = 126;\n  SSD = 127;\n  CAF = 128;\n  ESP = 129;\n  GUY = 130;\n  TTO = 131;\n  EST = 132;\n  MLT = 133;\n  ECU = 134;\n  CAN = 135;\n  VGB = 136;\n  QAT = 137;\n  ETH = 138;\n  CRI = 139;\n  TUN = 140;\n  MMR = 141;\n  TUR = 142;\n  SDN = 143;\n  STP = 144;\n  TUV = 145;\n  PAK = 146;\n  UGA = 147;\n  PAN = 148;\n  MNE = 149;\n  MNG = 150;\n  BRA = 151;\n  BRB = 152;\n  NOR = 153;\n  ZMB = 154;\n  MNP = 155;\n  GGY = 156;\n  CCK = 157;\n  SEN = 158;\n  BRN = 159;\n  GHA = 160;\n  SUR = 161;\n  PRI = 162;\n  PRK = 163;\n  NPL = 164;\n  PRT = 165;\n  PRY = 166;\n  VIR = 167;\n  TWN = 168;\n  SVK = 169;\n  ARE = 170;\n  SVN = 171;\n  ARG = 172;\n  TGO = 173;\n  PSE = 174;\n  DEU = 175;\n  GIB = 176;\n  ARM = 177;\n  MOZ = 178;\n  RUS = 179;\n  REU = 180;\n  PCN = 181;\n  THA = 182;\n  GIN = 183;\n  ABW = 184;\n  CUB = 185;\n  KNA = 186;\n  NAM = 187;\n  SWE = 188;\n  BDI = 189;\n  BTN = 190;\n  EGY = 191;\n  HKG = 192;\n  ASM = 193;\n  SGS = 194;\n  CUW = 195;\n  SGP = 196;\n  UZB = 197;\n  SWZ = 198;\n  WLF = 199;\n  MAC = 200;\n  MAF = 201;\n  FIN = 202;\n  RWA = 203;\n  ATA = 204;\n  NRU = 205;\n  MAR = 206;\n  SXM = 207;\n  ATG = 208;\n  SHN = 209;\n  ATF = 210;\n  BEL = 211;\n  KOR = 212;\n  BEN = 213;\n  IMN = 214;\n  BES = 215;\n  TZA = 216;\n  FJI = 217;\n  PER = 218;\n  NCL = 219;\n  SYC = 220;\n  BFA = 221;\n  TJK = 222;\n  UKR = 223;\n  IND = 224;\n  LAO = 225;\n  MRT = 226;\n  ZAF = 227;\n  HMD = 228;\n  SYR = 229;\n  JOR = 230;\n  BVT = 231;\n  AUS = 232;\n  AUT = 233;\n  GLP = 234;\n  BWA = 235;\n  CHE = 236;\n  BGD = 237;\n  MCO = 238;\n  MSR = 239;\n  LBN = 240;\n  CHL = 241;\n  SJM = 242;\n  CHN = 243;\n  AFG = 244;\n  CXR = 245;\n  GMB = 246;\n  HND = 247;\n  JPN = 248;\n  LBR = 249;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetBeneficiary"},{"label":"GetEmployeeContributionRates","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getemployeecontributionrates","routeSlug":"/openapi/partneremployeeingressservice/getemployeecontributionrates","metadata":{"seo":{"title":"GetEmployeeContributionRates","description":"service PartnerEmployeeIngressService {\n  rpc GetEmployeeContributionRates(GetEmployeeContributionRatesRequest) returns (GetEmployeeContributionRatesResponse);\n}\n\nmessage GetEmployeeContributionRatesRequest {}\n\nmessage GetEmployeeContributionRatesResponse {\n  repeated ContributionInfo employee_contributions = 1;\n  bool has_set_custom_rates = 2;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\nservice PartnerEmployeeIngressService {\n  rpc GetEmployeeContributionRates(GetEmployeeContributionRatesRequest) returns (GetEmployeeContributionRatesResponse);\n}\n\nmessage GetEmployeeContributionRatesRequest {}\n\nmessage GetEmployeeContributionRatesResponse {\n  repeated ContributionInfo employee_contributions = 1;\n  bool has_set_custom_rates = 2;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetEmployeeContributionRates"},{"label":"GetEmployeeInviteToken","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getemployeeinvitetoken","routeSlug":"/openapi/partneremployeeingressservice/getemployeeinvitetoken","metadata":{"seo":{"title":"GetEmployeeInviteToken","description":"service PartnerEmployeeIngressService {\n  rpc GetEmployeeInviteToken(GetEmployeeInviteTokenRequest) returns (GetEmployeeInviteTokenResponse);\n}\n\nmessage GetEmployeeInviteTokenRequest {}\n\nmessage GetEmployeeInviteTokenResponse {\n  string employee_invite_token = 1;\n}\nservice PartnerEmployeeIngressService {\n  rpc GetEmployeeInviteToken(GetEmployeeInviteTokenRequest) returns (GetEmployeeInviteTokenResponse);\n}\n\nmessage GetEmployeeInviteTokenRequest {}\n\nmessage GetEmployeeInviteTokenResponse {\n  string employee_invite_token = 1;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetEmployeeInviteToken"},{"label":"GetEmployeeOnboardingStatus","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getemployeeonboardingstatus","routeSlug":"/openapi/partneremployeeingressservice/getemployeeonboardingstatus","metadata":{"seo":{"title":"GetEmployeeOnboardingStatus","description":"service PartnerEmployeeIngressService {\n  rpc GetEmployeeOnboardingStatus(GetEmployeeOnboardingStatusRequest) returns (GetEmployeeOnboardingStatusResponse);\n}\n\nmessage GetEmployeeOnboardingStatusRequest {}\n\nmessage GetEmployeeOnboardingStatusResponse {\n  EmployeeDetails.OnboardingStatus onboarding_status = 1;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc GetEmployeeOnboardingStatus(GetEmployeeOnboardingStatusRequest) returns (GetEmployeeOnboardingStatusResponse);\n}\n\nmessage GetEmployeeOnboardingStatusRequest {}\n\nmessage GetEmployeeOnboardingStatusResponse {\n  EmployeeDetails.OnboardingStatus onboarding_status = 1;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetEmployeeOnboardingStatus"},{"label":"GetEmployeeSetupEstimates","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getemployeesetupestimates","routeSlug":"/openapi/partneremployeeingressservice/getemployeesetupestimates","metadata":{"seo":{"title":"GetEmployeeSetupEstimates","description":"service PartnerEmployeeIngressService {\n  rpc GetEmployeeSetupEstimates(GetEmployeeSetupEstimatesRequest) returns (GetEmployeeSetupEstimatesResponse);\n}\n\nmessage GetEmployeeSetupEstimatesRequest {\n  Money est_annual_income = 1;\n  repeated ContributionInfo potential_contributions = 2;\n  optional Date as_of_date = 3;\n}\n\nmessage GetEmployeeSetupEstimatesResponse {\n  Money est_annual_employer_match = 1;\n  Money est_annual_employer_match_remaining = 2;\n  Money est_annual_deferral = 3;\n  optional Money est_annual_mbdr = 4;\n\n  Money est_retirement = 5;\n\n  Money est_per_paycheck_deferral = 6;\n  Money est_per_paycheck_employer_match = 7;\n  int32 max_out_month = 8;\n  optional Money est_per_paycheck_mbdr = 9;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\nservice PartnerEmployeeIngressService {\n  rpc GetEmployeeSetupEstimates(GetEmployeeSetupEstimatesRequest) returns (GetEmployeeSetupEstimatesResponse);\n}\n\nmessage GetEmployeeSetupEstimatesRequest {\n  Money est_annual_income = 1;\n  repeated ContributionInfo potential_contributions = 2;\n  optional Date as_of_date = 3;\n}\n\nmessage GetEmployeeSetupEstimatesResponse {\n  Money est_annual_employer_match = 1;\n  Money est_annual_employer_match_remaining = 2;\n  Money est_annual_deferral = 3;\n  optional Money est_annual_mbdr = 4;\n\n  Money est_retirement = 5;\n\n  Money est_per_paycheck_deferral = 6;\n  Money est_per_paycheck_employer_match = 7;\n  int32 max_out_month = 8;\n  optional Money est_per_paycheck_mbdr = 9;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetEmployeeSetupEstimates"},{"label":"GetEmployeeSetupLimits","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getemployeesetuplimits","routeSlug":"/openapi/partneremployeeingressservice/getemployeesetuplimits","metadata":{"seo":{"title":"GetEmployeeSetupLimits","description":"service PartnerEmployeeIngressService {\n  rpc GetEmployeeSetupLimits(GetEmployeeSetupLimitsRequest) returns (GetEmployeeSetupLimitsResponse);\n}\n\nmessage GetEmployeeSetupLimitsRequest {}\n\nmessage GetEmployeeSetupLimitsResponse {\n  Money annual_deferrals_to_date = 1;\n  optional Money annual_match_to_date = 2;\n  optional Money annual_post_tax_contributions_to_date = 3;\n  repeated EmployerMatchTier employer_match_tiers = 4;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc GetEmployeeSetupLimits(GetEmployeeSetupLimitsRequest) returns (GetEmployeeSetupLimitsResponse);\n}\n\nmessage GetEmployeeSetupLimitsRequest {}\n\nmessage GetEmployeeSetupLimitsResponse {\n  Money annual_deferrals_to_date = 1;\n  optional Money annual_match_to_date = 2;\n  optional Money annual_post_tax_contributions_to_date = 3;\n  repeated EmployerMatchTier employer_match_tiers = 4;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n\nmessage EmployerMatchTier {\n  int32 match_bps = 1;\n  int32 match_cap_bps = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetEmployeeSetupLimits"},{"label":"GetEmployeeSummary","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getemployeesummary","routeSlug":"/openapi/partneremployeeingressservice/getemployeesummary","metadata":{"seo":{"title":"GetEmployeeSummary","description":"service PartnerEmployeeIngressService {\n  rpc GetEmployeeSummary(GetEmployeeSummaryRequest) returns (GetEmployeeSummaryResponse);\n}\n\nmessage GetEmployeeSummaryRequest {\n  optional Date on_date = 1;\n  optional string account_id = 2;\n}\n\nmessage GetEmployeeSummaryResponse {\n  message AccountEmployeeSummary {\n    string account_id = 1;\n    Money account_balance = 2;\n    Money deferrals_ytd = 3;\n    optional Money mbdr_contributions_ytd = 4;\n    Money total_contributions_ytd = 5;\n    optional Money employer_match_ytd = 6;\n  }\n  repeated AccountEmployeeSummary account_summary = 1;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc GetEmployeeSummary(GetEmployeeSummaryRequest) returns (GetEmployeeSummaryResponse);\n}\n\nmessage GetEmployeeSummaryRequest {\n  optional Date on_date = 1;\n  optional string account_id = 2;\n}\n\nmessage GetEmployeeSummaryResponse {\n  message AccountEmployeeSummary {\n    string account_id = 1;\n    Money account_balance = 2;\n    Money deferrals_ytd = 3;\n    optional Money mbdr_contributions_ytd = 4;\n    Money total_contributions_ytd = 5;\n    optional Money employer_match_ytd = 6;\n  }\n  repeated AccountEmployeeSummary account_summary = 1;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetEmployeeSummary"},{"label":"GetInvestmentSelections","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getinvestmentselections","routeSlug":"/openapi/partneremployeeingressservice/getinvestmentselections","metadata":{"seo":{"title":"GetInvestmentSelections","description":"service PartnerEmployeeIngressService {\n  rpc GetInvestmentSelections(GetInvestmentSelectionsRequest) returns (GetInvestmentSelectionsResponse);\n}\n\nmessage GetInvestmentSelectionsRequest {\n  optional string account_id = 1;\n}\n\nmessage GetInvestmentSelectionsResponse {\n  repeated AccountInvestmentSelections accounts = 1;\n}\n\nmessage AccountInvestmentSelections {\n  string account_id = 1;\n  repeated AccountInvestmentDetail account_investments = 2;\n  repeated TrmInvestmentDetail trm_investments = 3;\n  bool has_set_custom_investment_selections = 4;\n}\n\nmessage AccountInvestmentDetail {\n  AccountInvestmentSelectionType type = 1;\n  int32 allocation_bps = 2;\n  optional AssetMetadata asset_metadata = 3;\n}\n\nmessage TrmInvestmentDetail {\n  AssetMetadata asset_metadata = 1;\n  int32 allocation_bps = 2;\n}\n\nenum AccountInvestmentSelectionType {\n  UNKNOWN_INVESTMENT_SELECTION_TYPE = 0;\n  EMPLOYER_SELECTED = 1;\n  BROKERAGE_WINDOW = 2;\n  RETIREMENT_MORTGAGE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc GetInvestmentSelections(GetInvestmentSelectionsRequest) returns (GetInvestmentSelectionsResponse);\n}\n\nmessage GetInvestmentSelectionsRequest {\n  optional string account_id = 1;\n}\n\nmessage GetInvestmentSelectionsResponse {\n  repeated AccountInvestmentSelections accounts = 1;\n}\n\nmessage AccountInvestmentSelections {\n  string account_id = 1;\n  repeated AccountInvestmentDetail account_investments = 2;\n  repeated TrmInvestmentDetail trm_investments = 3;\n  bool has_set_custom_investment_selections = 4;\n}\n\nmessage AccountInvestmentDetail {\n  AccountInvestmentSelectionType type = 1;\n  int32 allocation_bps = 2;\n  optional AssetMetadata asset_metadata = 3;\n}\n\nmessage TrmInvestmentDetail {\n  AssetMetadata asset_metadata = 1;\n  int32 allocation_bps = 2;\n}\n\nenum AccountInvestmentSelectionType {\n  UNKNOWN_INVESTMENT_SELECTION_TYPE = 0;\n  EMPLOYER_SELECTED = 1;\n  BROKERAGE_WINDOW = 2;\n  RETIREMENT_MORTGAGE = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetInvestmentSelections"},{"label":"GetInvestmentUpdateAvailability","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/getinvestmentupdateavailability","routeSlug":"/openapi/partneremployeeingressservice/getinvestmentupdateavailability","metadata":{"seo":{"title":"GetInvestmentUpdateAvailability","description":"service PartnerEmployeeIngressService {\n  rpc GetInvestmentUpdateAvailability(GetInvestmentUpdateAvailabilityRequest) returns (GetInvestmentUpdateAvailabilityResponse);\n}\n\nmessage GetInvestmentUpdateAvailabilityRequest {\n  string account_id = 1;\n}\n\nmessage GetInvestmentUpdateAvailabilityResponse {\n  bool plan_account_rebalance_enabled = 1;\n  bool trm_rebalance_enabled = 2;\n  repeated string liquidate_only_asset_uuids = 3;\n}\nservice PartnerEmployeeIngressService {\n  rpc GetInvestmentUpdateAvailability(GetInvestmentUpdateAvailabilityRequest) returns (GetInvestmentUpdateAvailabilityResponse);\n}\n\nmessage GetInvestmentUpdateAvailabilityRequest {\n  string account_id = 1;\n}\n\nmessage GetInvestmentUpdateAvailabilityResponse {\n  bool plan_account_rebalance_enabled = 1;\n  bool trm_rebalance_enabled = 2;\n  repeated string liquidate_only_asset_uuids = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/GetInvestmentUpdateAvailability"},{"label":"ListAccountHoldingsPerformance","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/listaccountholdingsperformance","routeSlug":"/openapi/partneremployeeingressservice/listaccountholdingsperformance","metadata":{"seo":{"title":"ListAccountHoldingsPerformance","description":"service PartnerEmployeeIngressService {\n  rpc ListAccountHoldingsPerformance(ListAccountHoldingsPerformanceRequest) returns (ListAccountHoldingsPerformanceResponse);\n}\n\nmessage ListAccountHoldingsPerformanceRequest {\n  NonDiscreteIntervalRequest interval = 1;\n  optional string account_id = 2;\n  optional LookbackType lookback = 3;\n  optional com.basiccapital.common.external.PaginationRequest pagination = 4;\n}\n\nmessage ListAccountHoldingsPerformanceResponse {\n  message AccountDatedHoldingsPerformance {\n    repeated DatedHoldingsPerformance holdings_performance = 1;\n    string account_id = 2;\n  }\n  repeated AccountDatedHoldingsPerformance accounts = 1;\n  optional string next_page_token = 2;\n}\n\nmessage NonDiscreteIntervalRequest {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    WEEKLY = 2;\n    DAILY = 3;\n    ANNUALLY = 4;\n  }\n\n  IntervalRequest interval = 1;\n  Cadence granularity = 2;\n}\n\nenum LookbackType {\n  UNKNOWN_LOOKBACK = 0;\n  TO_DATE = 1;\n  PER_PERIOD = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage DatedHoldingsPerformance {\n  Date date = 1;\n  HoldingsPerformance performance = 2;\n}\n\nmessage IntervalRequest {\n  optional Date start_date = 1;\n  optional Date end_date = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage HoldingsPerformance {\n  Money gain_loss = 1;\n  int32 gain_loss_bps = 2;\n  Money paid_in_capital = 3;\n  Money total_value = 4;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc ListAccountHoldingsPerformance(ListAccountHoldingsPerformanceRequest) returns (ListAccountHoldingsPerformanceResponse);\n}\n\nmessage ListAccountHoldingsPerformanceRequest {\n  NonDiscreteIntervalRequest interval = 1;\n  optional string account_id = 2;\n  optional LookbackType lookback = 3;\n  optional com.basiccapital.common.external.PaginationRequest pagination = 4;\n}\n\nmessage ListAccountHoldingsPerformanceResponse {\n  message AccountDatedHoldingsPerformance {\n    repeated DatedHoldingsPerformance holdings_performance = 1;\n    string account_id = 2;\n  }\n  repeated AccountDatedHoldingsPerformance accounts = 1;\n  optional string next_page_token = 2;\n}\n\nmessage NonDiscreteIntervalRequest {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    WEEKLY = 2;\n    DAILY = 3;\n    ANNUALLY = 4;\n  }\n\n  IntervalRequest interval = 1;\n  Cadence granularity = 2;\n}\n\nenum LookbackType {\n  UNKNOWN_LOOKBACK = 0;\n  TO_DATE = 1;\n  PER_PERIOD = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage DatedHoldingsPerformance {\n  Date date = 1;\n  HoldingsPerformance performance = 2;\n}\n\nmessage IntervalRequest {\n  optional Date start_date = 1;\n  optional Date end_date = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage HoldingsPerformance {\n  Money gain_loss = 1;\n  int32 gain_loss_bps = 2;\n  Money paid_in_capital = 3;\n  Money total_value = 4;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/ListAccountHoldingsPerformance"},{"label":"ListAccounts","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/listaccounts","routeSlug":"/openapi/partneremployeeingressservice/listaccounts","metadata":{"seo":{"title":"ListAccounts","description":"service PartnerEmployeeIngressService {\n  rpc ListAccounts(ListAccountsRequest) returns (ListAccountsResponse);\n}\n\nmessage ListAccountsRequest {}\n\nmessage ListAccountsResponse {\n  repeated string account_ids = 1 [deprecated = true];\n  repeated Account accounts = 2;\n}\n\nmessage Account {\n  string account_id = 1;\n  Type type = 2;\n\n  enum Type {\n    UNKNOWN_TYPE = 0;\n    TRADITIONAL_401K = 1;\n    ROTH_401K = 2;\n  }\n}\nservice PartnerEmployeeIngressService {\n  rpc ListAccounts(ListAccountsRequest) returns (ListAccountsResponse);\n}\n\nmessage ListAccountsRequest {}\n\nmessage ListAccountsResponse {\n  repeated string account_ids = 1 [deprecated = true];\n  repeated Account accounts = 2;\n}\n\nmessage Account {\n  string account_id = 1;\n  Type type = 2;\n\n  enum Type {\n    UNKNOWN_TYPE = 0;\n    TRADITIONAL_401K = 1;\n    ROTH_401K = 2;\n  }\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/ListAccounts"},{"label":"ListAggregateHoldingsPerformance","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/listaggregateholdingsperformance","routeSlug":"/openapi/partneremployeeingressservice/listaggregateholdingsperformance","metadata":{"seo":{"title":"ListAggregateHoldingsPerformance","description":"service PartnerEmployeeIngressService {\n  rpc ListAggregateHoldingsPerformance(ListAggregateHoldingsPerformanceRequest) returns (ListAggregateHoldingsPerformanceResponse);\n}\n\nmessage ListAggregateHoldingsPerformanceRequest {\n  NonDiscreteIntervalRequest interval = 1;\n  optional LookbackType lookback = 2;\n  optional com.basiccapital.common.external.PaginationRequest pagination = 3;\n}\n\nmessage ListAggregateHoldingsPerformanceResponse {\n  repeated DatedHoldingsPerformance holdings_performance = 1;\n  optional string next_page_token = 2;\n}\n\nmessage NonDiscreteIntervalRequest {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    WEEKLY = 2;\n    DAILY = 3;\n    ANNUALLY = 4;\n  }\n\n  IntervalRequest interval = 1;\n  Cadence granularity = 2;\n}\n\nenum LookbackType {\n  UNKNOWN_LOOKBACK = 0;\n  TO_DATE = 1;\n  PER_PERIOD = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage DatedHoldingsPerformance {\n  Date date = 1;\n  HoldingsPerformance performance = 2;\n}\n\nmessage IntervalRequest {\n  optional Date start_date = 1;\n  optional Date end_date = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage HoldingsPerformance {\n  Money gain_loss = 1;\n  int32 gain_loss_bps = 2;\n  Money paid_in_capital = 3;\n  Money total_value = 4;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc ListAggregateHoldingsPerformance(ListAggregateHoldingsPerformanceRequest) returns (ListAggregateHoldingsPerformanceResponse);\n}\n\nmessage ListAggregateHoldingsPerformanceRequest {\n  NonDiscreteIntervalRequest interval = 1;\n  optional LookbackType lookback = 2;\n  optional com.basiccapital.common.external.PaginationRequest pagination = 3;\n}\n\nmessage ListAggregateHoldingsPerformanceResponse {\n  repeated DatedHoldingsPerformance holdings_performance = 1;\n  optional string next_page_token = 2;\n}\n\nmessage NonDiscreteIntervalRequest {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    WEEKLY = 2;\n    DAILY = 3;\n    ANNUALLY = 4;\n  }\n\n  IntervalRequest interval = 1;\n  Cadence granularity = 2;\n}\n\nenum LookbackType {\n  UNKNOWN_LOOKBACK = 0;\n  TO_DATE = 1;\n  PER_PERIOD = 2;\n}\n\nmessage PaginationRequest {\n  optional int32 page_size = 1;\n  optional string page_token = 2;\n}\n\nmessage DatedHoldingsPerformance {\n  Date date = 1;\n  HoldingsPerformance performance = 2;\n}\n\nmessage IntervalRequest {\n  optional Date start_date = 1;\n  optional Date end_date = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage HoldingsPerformance {\n  Money gain_loss = 1;\n  int32 gain_loss_bps = 2;\n  Money paid_in_capital = 3;\n  Money total_value = 4;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/ListAggregateHoldingsPerformance"},{"label":"ListBeneficiaries","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/listbeneficiaries","routeSlug":"/openapi/partneremployeeingressservice/listbeneficiaries","metadata":{"seo":{"title":"ListBeneficiaries","description":"service PartnerEmployeeIngressService {\n  rpc ListBeneficiaries(ListBeneficiariesRequest) returns (ListBeneficiariesResponse);\n}\n\nmessage ListBeneficiariesRequest {\n  optional string account_uuid = 1;\n}\n\nmessage ListBeneficiariesResponse {\n  repeated Beneficiary beneficiaries = 1;\n}\n\nmessage Beneficiary {\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    PENDING = 1;\n    CONFIRMED = 2;\n  }\n\n  string uuid = 1;\n  string given_name = 2 [debug_redact = true];\n  string surname = 3 [debug_redact = true];\n  com.basiccapital.common.external.BeneficiaryRelationship relationship = 4;\n  Date date_of_birth = 5 [debug_redact = true];\n  string email = 6 [debug_redact = true];\n  string phone_number = 7 [debug_redact = true];\n  com.basiccapital.common.external.Address address = 8 [debug_redact = true];\n  Status status = 9;\n  repeated BeneficiaryAllocation allocations = 10;\n}\n\nenum BeneficiaryRelationship {\n  UNKNOWN_RELATIONSHIP = 0;\n  SPOUSE = 1 [(bcoptions.string_name) = \"Spouse\"];\n  PARENT = 2 [(bcoptions.string_name) = \"Parent\"];\n  SIBLING = 3 [(bcoptions.string_name) = \"Sibling\"];\n  CHILD = 4 [(bcoptions.string_name) = \"Child\"];\n  FRIEND = 5 [(bcoptions.string_name) = \"Friend\"];\n  OTHER_RELATIONSHIP = 6 [(bcoptions.string_name) = \"Other\"];\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Address {\n  string address_line_1 = 1 [debug_redact = true];\n  string address_line_2 = 2 [debug_redact = true];\n  string city = 3 [debug_redact = true];\n  string state = 4 [debug_redact = true];\n  string postal_code = 5 [debug_redact = true];\n  CountryCode country_code = 6 [debug_redact = true];\n}\n\nmessage BeneficiaryAllocation {\n  string beneficiary_uuid = 1;\n  optional string account_uuid = 2;\n  int32 allocation_bps = 3;\n}\n\nenum CountryCode {\n  UNKNOWN_COUNTRY_CODE = 0;\n  TKL = 1;\n  BGR = 2;\n  LBY = 3;\n  TKM = 4;\n  MDA = 5;\n  DZA = 6;\n  IOT = 7;\n  KAZ = 8;\n  LCA = 9;\n  FLK = 10;\n  MDG = 11;\n  UMI = 12;\n  VNM = 13;\n  DJI = 14;\n  NER = 15;\n  MTQ = 16;\n  LSO = 17;\n  CYM = 18;\n  CYP = 19;\n  MDV = 20;\n  TLS = 21;\n  GNB = 22;\n  JAM = 23;\n  BHR = 24;\n  AGO = 25;\n  BHS = 26;\n  CIV = 27;\n  PHL = 28;\n  NFK = 29;\n  GNQ = 30;\n  SLB = 31;\n  CZE = 32;\n  SLE = 33;\n  MUS = 34;\n  BIH = 35;\n  LTU = 36;\n  MEX = 37;\n  PYF = 38;\n  NGA = 39;\n  SLV = 40;\n  AIA = 41;\n  SMR = 42;\n  IRL = 43;\n  LUX = 44;\n  IRN = 45;\n  IRQ = 46;\n  LVA = 47;\n  DMA = 48;\n  MWI = 49;\n  TON = 50;\n  AZE = 51;\n  VAT = 52;\n  KEN = 53;\n  GAB = 54;\n  ISL = 55;\n  YEM = 56;\n  NIC = 57;\n  ISR = 58;\n  WSM = 59;\n  HRV = 60;\n  MHL = 61;\n  DNK = 62;\n  ITA = 63;\n  ZWE = 64;\n  NIU = 65;\n  SOM = 66;\n  BLM = 67;\n  CMR = 68;\n  GRD = 69;\n  GRC = 70;\n  BLR = 71;\n  IDN = 72;\n  GRL = 73;\n  BLZ = 74;\n  JEY = 75;\n  NZL = 76;\n  GBR = 77;\n  PLW = 78;\n  ALA = 79;\n  ALB = 80;\n  DOM = 81;\n  MYS = 82;\n  SPM = 83;\n  VCT = 84;\n  MYT = 85;\n  URY = 86;\n  KWT = 87;\n  FRA = 88;\n  HTI = 89;\n  USA = 90;\n  BMU = 91;\n  ROU = 92;\n  KGZ = 93;\n  LIE = 94;\n  FRO = 95;\n  COD = 96;\n  COG = 97;\n  COK = 98;\n  COL = 99;\n  COM = 100;\n  KHM = 101;\n  PNG = 102;\n  SAU = 103;\n  NLD = 104;\n  HUN = 105;\n  GTM = 106;\n  MKD = 107;\n  OMN = 108;\n  TCA = 109;\n  ERI = 110;\n  FSM = 111;\n  SRB = 112;\n  TCD = 113;\n  VEN = 114;\n  VUT = 115;\n  AND = 116;\n  BOL = 117;\n  KIR = 118;\n  GUF = 119;\n  CPV = 120;\n  POL = 121;\n  GUM = 122;\n  LKA = 123;\n  ESH = 124;\n  GEO = 125;\n  MLI = 126;\n  SSD = 127;\n  CAF = 128;\n  ESP = 129;\n  GUY = 130;\n  TTO = 131;\n  EST = 132;\n  MLT = 133;\n  ECU = 134;\n  CAN = 135;\n  VGB = 136;\n  QAT = 137;\n  ETH = 138;\n  CRI = 139;\n  TUN = 140;\n  MMR = 141;\n  TUR = 142;\n  SDN = 143;\n  STP = 144;\n  TUV = 145;\n  PAK = 146;\n  UGA = 147;\n  PAN = 148;\n  MNE = 149;\n  MNG = 150;\n  BRA = 151;\n  BRB = 152;\n  NOR = 153;\n  ZMB = 154;\n  MNP = 155;\n  GGY = 156;\n  CCK = 157;\n  SEN = 158;\n  BRN = 159;\n  GHA = 160;\n  SUR = 161;\n  PRI = 162;\n  PRK = 163;\n  NPL = 164;\n  PRT = 165;\n  PRY = 166;\n  VIR = 167;\n  TWN = 168;\n  SVK = 169;\n  ARE = 170;\n  SVN = 171;\n  ARG = 172;\n  TGO = 173;\n  PSE = 174;\n  DEU = 175;\n  GIB = 176;\n  ARM = 177;\n  MOZ = 178;\n  RUS = 179;\n  REU = 180;\n  PCN = 181;\n  THA = 182;\n  GIN = 183;\n  ABW = 184;\n  CUB = 185;\n  KNA = 186;\n  NAM = 187;\n  SWE = 188;\n  BDI = 189;\n  BTN = 190;\n  EGY = 191;\n  HKG = 192;\n  ASM = 193;\n  SGS = 194;\n  CUW = 195;\n  SGP = 196;\n  UZB = 197;\n  SWZ = 198;\n  WLF = 199;\n  MAC = 200;\n  MAF = 201;\n  FIN = 202;\n  RWA = 203;\n  ATA = 204;\n  NRU = 205;\n  MAR = 206;\n  SXM = 207;\n  ATG = 208;\n  SHN = 209;\n  ATF = 210;\n  BEL = 211;\n  KOR = 212;\n  BEN = 213;\n  IMN = 214;\n  BES = 215;\n  TZA = 216;\n  FJI = 217;\n  PER = 218;\n  NCL = 219;\n  SYC = 220;\n  BFA = 221;\n  TJK = 222;\n  UKR = 223;\n  IND = 224;\n  LAO = 225;\n  MRT = 226;\n  ZAF = 227;\n  HMD = 228;\n  SYR = 229;\n  JOR = 230;\n  BVT = 231;\n  AUS = 232;\n  AUT = 233;\n  GLP = 234;\n  BWA = 235;\n  CHE = 236;\n  BGD = 237;\n  MCO = 238;\n  MSR = 239;\n  LBN = 240;\n  CHL = 241;\n  SJM = 242;\n  CHN = 243;\n  AFG = 244;\n  CXR = 245;\n  GMB = 246;\n  HND = 247;\n  JPN = 248;\n  LBR = 249;\n}\nservice PartnerEmployeeIngressService {\n  rpc ListBeneficiaries(ListBeneficiariesRequest) returns (ListBeneficiariesResponse);\n}\n\nmessage ListBeneficiariesRequest {\n  optional string account_uuid = 1;\n}\n\nmessage ListBeneficiariesResponse {\n  repeated Beneficiary beneficiaries = 1;\n}\n\nmessage Beneficiary {\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    PENDING = 1;\n    CONFIRMED = 2;\n  }\n\n  string uuid = 1;\n  string given_name = 2 [debug_redact = true];\n  string surname = 3 [debug_redact = true];\n  com.basiccapital.common.external.BeneficiaryRelationship relationship = 4;\n  Date date_of_birth = 5 [debug_redact = true];\n  string email = 6 [debug_redact = true];\n  string phone_number = 7 [debug_redact = true];\n  com.basiccapital.common.external.Address address = 8 [debug_redact = true];\n  Status status = 9;\n  repeated BeneficiaryAllocation allocations = 10;\n}\n\nenum BeneficiaryRelationship {\n  UNKNOWN_RELATIONSHIP = 0;\n  SPOUSE = 1 [(bcoptions.string_name) = \"Spouse\"];\n  PARENT = 2 [(bcoptions.string_name) = \"Parent\"];\n  SIBLING = 3 [(bcoptions.string_name) = \"Sibling\"];\n  CHILD = 4 [(bcoptions.string_name) = \"Child\"];\n  FRIEND = 5 [(bcoptions.string_name) = \"Friend\"];\n  OTHER_RELATIONSHIP = 6 [(bcoptions.string_name) = \"Other\"];\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Address {\n  string address_line_1 = 1 [debug_redact = true];\n  string address_line_2 = 2 [debug_redact = true];\n  string city = 3 [debug_redact = true];\n  string state = 4 [debug_redact = true];\n  string postal_code = 5 [debug_redact = true];\n  CountryCode country_code = 6 [debug_redact = true];\n}\n\nmessage BeneficiaryAllocation {\n  string beneficiary_uuid = 1;\n  optional string account_uuid = 2;\n  int32 allocation_bps = 3;\n}\n\nenum CountryCode {\n  UNKNOWN_COUNTRY_CODE = 0;\n  TKL = 1;\n  BGR = 2;\n  LBY = 3;\n  TKM = 4;\n  MDA = 5;\n  DZA = 6;\n  IOT = 7;\n  KAZ = 8;\n  LCA = 9;\n  FLK = 10;\n  MDG = 11;\n  UMI = 12;\n  VNM = 13;\n  DJI = 14;\n  NER = 15;\n  MTQ = 16;\n  LSO = 17;\n  CYM = 18;\n  CYP = 19;\n  MDV = 20;\n  TLS = 21;\n  GNB = 22;\n  JAM = 23;\n  BHR = 24;\n  AGO = 25;\n  BHS = 26;\n  CIV = 27;\n  PHL = 28;\n  NFK = 29;\n  GNQ = 30;\n  SLB = 31;\n  CZE = 32;\n  SLE = 33;\n  MUS = 34;\n  BIH = 35;\n  LTU = 36;\n  MEX = 37;\n  PYF = 38;\n  NGA = 39;\n  SLV = 40;\n  AIA = 41;\n  SMR = 42;\n  IRL = 43;\n  LUX = 44;\n  IRN = 45;\n  IRQ = 46;\n  LVA = 47;\n  DMA = 48;\n  MWI = 49;\n  TON = 50;\n  AZE = 51;\n  VAT = 52;\n  KEN = 53;\n  GAB = 54;\n  ISL = 55;\n  YEM = 56;\n  NIC = 57;\n  ISR = 58;\n  WSM = 59;\n  HRV = 60;\n  MHL = 61;\n  DNK = 62;\n  ITA = 63;\n  ZWE = 64;\n  NIU = 65;\n  SOM = 66;\n  BLM = 67;\n  CMR = 68;\n  GRD = 69;\n  GRC = 70;\n  BLR = 71;\n  IDN = 72;\n  GRL = 73;\n  BLZ = 74;\n  JEY = 75;\n  NZL = 76;\n  GBR = 77;\n  PLW = 78;\n  ALA = 79;\n  ALB = 80;\n  DOM = 81;\n  MYS = 82;\n  SPM = 83;\n  VCT = 84;\n  MYT = 85;\n  URY = 86;\n  KWT = 87;\n  FRA = 88;\n  HTI = 89;\n  USA = 90;\n  BMU = 91;\n  ROU = 92;\n  KGZ = 93;\n  LIE = 94;\n  FRO = 95;\n  COD = 96;\n  COG = 97;\n  COK = 98;\n  COL = 99;\n  COM = 100;\n  KHM = 101;\n  PNG = 102;\n  SAU = 103;\n  NLD = 104;\n  HUN = 105;\n  GTM = 106;\n  MKD = 107;\n  OMN = 108;\n  TCA = 109;\n  ERI = 110;\n  FSM = 111;\n  SRB = 112;\n  TCD = 113;\n  VEN = 114;\n  VUT = 115;\n  AND = 116;\n  BOL = 117;\n  KIR = 118;\n  GUF = 119;\n  CPV = 120;\n  POL = 121;\n  GUM = 122;\n  LKA = 123;\n  ESH = 124;\n  GEO = 125;\n  MLI = 126;\n  SSD = 127;\n  CAF = 128;\n  ESP = 129;\n  GUY = 130;\n  TTO = 131;\n  EST = 132;\n  MLT = 133;\n  ECU = 134;\n  CAN = 135;\n  VGB = 136;\n  QAT = 137;\n  ETH = 138;\n  CRI = 139;\n  TUN = 140;\n  MMR = 141;\n  TUR = 142;\n  SDN = 143;\n  STP = 144;\n  TUV = 145;\n  PAK = 146;\n  UGA = 147;\n  PAN = 148;\n  MNE = 149;\n  MNG = 150;\n  BRA = 151;\n  BRB = 152;\n  NOR = 153;\n  ZMB = 154;\n  MNP = 155;\n  GGY = 156;\n  CCK = 157;\n  SEN = 158;\n  BRN = 159;\n  GHA = 160;\n  SUR = 161;\n  PRI = 162;\n  PRK = 163;\n  NPL = 164;\n  PRT = 165;\n  PRY = 166;\n  VIR = 167;\n  TWN = 168;\n  SVK = 169;\n  ARE = 170;\n  SVN = 171;\n  ARG = 172;\n  TGO = 173;\n  PSE = 174;\n  DEU = 175;\n  GIB = 176;\n  ARM = 177;\n  MOZ = 178;\n  RUS = 179;\n  REU = 180;\n  PCN = 181;\n  THA = 182;\n  GIN = 183;\n  ABW = 184;\n  CUB = 185;\n  KNA = 186;\n  NAM = 187;\n  SWE = 188;\n  BDI = 189;\n  BTN = 190;\n  EGY = 191;\n  HKG = 192;\n  ASM = 193;\n  SGS = 194;\n  CUW = 195;\n  SGP = 196;\n  UZB = 197;\n  SWZ = 198;\n  WLF = 199;\n  MAC = 200;\n  MAF = 201;\n  FIN = 202;\n  RWA = 203;\n  ATA = 204;\n  NRU = 205;\n  MAR = 206;\n  SXM = 207;\n  ATG = 208;\n  SHN = 209;\n  ATF = 210;\n  BEL = 211;\n  KOR = 212;\n  BEN = 213;\n  IMN = 214;\n  BES = 215;\n  TZA = 216;\n  FJI = 217;\n  PER = 218;\n  NCL = 219;\n  SYC = 220;\n  BFA = 221;\n  TJK = 222;\n  UKR = 223;\n  IND = 224;\n  LAO = 225;\n  MRT = 226;\n  ZAF = 227;\n  HMD = 228;\n  SYR = 229;\n  JOR = 230;\n  BVT = 231;\n  AUS = 232;\n  AUT = 233;\n  GLP = 234;\n  BWA = 235;\n  CHE = 236;\n  BGD = 237;\n  MCO = 238;\n  MSR = 239;\n  LBN = 240;\n  CHL = 241;\n  SJM = 242;\n  CHN = 243;\n  AFG = 244;\n  CXR = 245;\n  GMB = 246;\n  HND = 247;\n  JPN = 248;\n  LBR = 249;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/ListBeneficiaries"},{"label":"ListContributionTypesAvailableForSetup","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/listcontributiontypesavailableforsetup","routeSlug":"/openapi/partneremployeeingressservice/listcontributiontypesavailableforsetup","metadata":{"seo":{"title":"ListContributionTypesAvailableForSetup","description":"service PartnerEmployeeIngressService {\n  rpc ListContributionTypesAvailableForSetup(ListContributionTypesAvailableForSetupRequest) returns (ListContributionTypesAvailableForSetupResponse);\n}\n\nmessage ListContributionTypesAvailableForSetupRequest {}\n\nmessage ListContributionTypesAvailableForSetupResponse {\n  repeated ContributionType contribution_types = 1;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\nservice PartnerEmployeeIngressService {\n  rpc ListContributionTypesAvailableForSetup(ListContributionTypesAvailableForSetupRequest) returns (ListContributionTypesAvailableForSetupResponse);\n}\n\nmessage ListContributionTypesAvailableForSetupRequest {}\n\nmessage ListContributionTypesAvailableForSetupResponse {\n  repeated ContributionType contribution_types = 1;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/ListContributionTypesAvailableForSetup"},{"label":"ListEmployerSelectedInvestmentOptions","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/listemployerselectedinvestmentoptions","routeSlug":"/openapi/partneremployeeingressservice/listemployerselectedinvestmentoptions","metadata":{"seo":{"title":"ListEmployerSelectedInvestmentOptions","description":"service PartnerEmployeeIngressService {\n  rpc ListEmployerSelectedInvestmentOptions(ListEmployerSelectedInvestmentOptionsRequest) returns (ListEmployerSelectedInvestmentOptionsResponse);\n}\n\nmessage ListEmployerSelectedInvestmentOptionsRequest {}\n\nmessage ListEmployerSelectedInvestmentOptionsResponse {\n  repeated AssetMetadata employer_selected_investment_options = 1;\n  bool has_bw = 2;\n  bool has_trm = 3;\n  int32 min_employer_selected_allocation_bps = 4;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc ListEmployerSelectedInvestmentOptions(ListEmployerSelectedInvestmentOptionsRequest) returns (ListEmployerSelectedInvestmentOptionsResponse);\n}\n\nmessage ListEmployerSelectedInvestmentOptionsRequest {}\n\nmessage ListEmployerSelectedInvestmentOptionsResponse {\n  repeated AssetMetadata employer_selected_investment_options = 1;\n  bool has_bw = 2;\n  bool has_trm = 3;\n  int32 min_employer_selected_allocation_bps = 4;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/ListEmployerSelectedInvestmentOptions"},{"label":"ListRetirementMortgageInvestmentOptions","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/listretirementmortgageinvestmentoptions","routeSlug":"/openapi/partneremployeeingressservice/listretirementmortgageinvestmentoptions","metadata":{"seo":{"title":"ListRetirementMortgageInvestmentOptions","description":"service PartnerEmployeeIngressService {\n  rpc ListRetirementMortgageInvestmentOptions(ListRetirementMortgageInvestmentOptionsRequest) returns (ListRetirementMortgageInvestmentOptionsResponse);\n}\n\nmessage ListRetirementMortgageInvestmentOptionsRequest {}\n\nmessage ListRetirementMortgageInvestmentOptionsResponse {\n  repeated AssetMetadata retirement_mortgage_investment_options = 1;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc ListRetirementMortgageInvestmentOptions(ListRetirementMortgageInvestmentOptionsRequest) returns (ListRetirementMortgageInvestmentOptionsResponse);\n}\n\nmessage ListRetirementMortgageInvestmentOptionsRequest {}\n\nmessage ListRetirementMortgageInvestmentOptionsResponse {\n  repeated AssetMetadata retirement_mortgage_investment_options = 1;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/ListRetirementMortgageInvestmentOptions"},{"label":"RebalanceAccountInvestmentSelection","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/rebalanceaccountinvestmentselection","routeSlug":"/openapi/partneremployeeingressservice/rebalanceaccountinvestmentselection","metadata":{"seo":{"title":"RebalanceAccountInvestmentSelection","description":"service PartnerEmployeeIngressService {\n  rpc RebalanceAccountInvestmentSelection(RebalanceAccountInvestmentSelectionRequest) returns (RebalanceAccountInvestmentSelectionResponse);\n}\n\nmessage RebalanceAccountInvestmentSelectionRequest {\n  string account_id = 1;\n  repeated AccountInvestmentSelection selections = 2;\n}\n\nmessage RebalanceAccountInvestmentSelectionResponse {}\n\nmessage AccountInvestmentSelection {\n  AccountInvestmentSelectionType type = 1;\n  optional string asset_uuid = 2;\n  int32 allocation_bps = 3;\n}\n\nenum AccountInvestmentSelectionType {\n  UNKNOWN_INVESTMENT_SELECTION_TYPE = 0;\n  EMPLOYER_SELECTED = 1;\n  BROKERAGE_WINDOW = 2;\n  RETIREMENT_MORTGAGE = 3;\n}\nservice PartnerEmployeeIngressService {\n  rpc RebalanceAccountInvestmentSelection(RebalanceAccountInvestmentSelectionRequest) returns (RebalanceAccountInvestmentSelectionResponse);\n}\n\nmessage RebalanceAccountInvestmentSelectionRequest {\n  string account_id = 1;\n  repeated AccountInvestmentSelection selections = 2;\n}\n\nmessage RebalanceAccountInvestmentSelectionResponse {}\n\nmessage AccountInvestmentSelection {\n  AccountInvestmentSelectionType type = 1;\n  optional string asset_uuid = 2;\n  int32 allocation_bps = 3;\n}\n\nenum AccountInvestmentSelectionType {\n  UNKNOWN_INVESTMENT_SELECTION_TYPE = 0;\n  EMPLOYER_SELECTED = 1;\n  BROKERAGE_WINDOW = 2;\n  RETIREMENT_MORTGAGE = 3;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/RebalanceAccountInvestmentSelection"},{"label":"RebalanceRetirementMortgageInvestmentSelections","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/rebalanceretirementmortgageinvestmentselections","routeSlug":"/openapi/partneremployeeingressservice/rebalanceretirementmortgageinvestmentselections","metadata":{"seo":{"title":"RebalanceRetirementMortgageInvestmentSelections","description":"service PartnerEmployeeIngressService {\n  rpc RebalanceRetirementMortgageInvestmentSelections(RebalanceRetirementMortgageInvestmentSelectionsRequest) returns (RebalanceRetirementMortgageInvestmentSelectionsResponse);\n}\n\nmessage RebalanceRetirementMortgageInvestmentSelectionsRequest {\n  string account_id = 1;\n  repeated TrmInvestmentSelection selections = 2;\n  bool apply_allocations_to_future = 3;\n}\n\nmessage RebalanceRetirementMortgageInvestmentSelectionsResponse {}\n\nmessage TrmInvestmentSelection {\n  string asset_uuid = 1;\n  int32 allocation_bps = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc RebalanceRetirementMortgageInvestmentSelections(RebalanceRetirementMortgageInvestmentSelectionsRequest) returns (RebalanceRetirementMortgageInvestmentSelectionsResponse);\n}\n\nmessage RebalanceRetirementMortgageInvestmentSelectionsRequest {\n  string account_id = 1;\n  repeated TrmInvestmentSelection selections = 2;\n  bool apply_allocations_to_future = 3;\n}\n\nmessage RebalanceRetirementMortgageInvestmentSelectionsResponse {}\n\nmessage TrmInvestmentSelection {\n  string asset_uuid = 1;\n  int32 allocation_bps = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/RebalanceRetirementMortgageInvestmentSelections"},{"label":"SearchBrokerageWindowInvestmentOptions","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/searchbrokeragewindowinvestmentoptions","routeSlug":"/openapi/partneremployeeingressservice/searchbrokeragewindowinvestmentoptions","metadata":{"seo":{"title":"SearchBrokerageWindowInvestmentOptions","description":"service PartnerEmployeeIngressService {\n  rpc SearchBrokerageWindowInvestmentOptions(SearchBrokerageWindowInvestmentOptionsRequest) returns (SearchBrokerageWindowInvestmentOptionsResponse);\n}\n\nmessage SearchBrokerageWindowInvestmentOptionsRequest {\n  Search search = 1;\n}\n\nmessage SearchBrokerageWindowInvestmentOptionsResponse {\n  repeated AssetMetadata brokerage_window_investment_options = 1;\n}\n\nmessage Search {\n  oneof criteria {\n    string exact_match = 1;\n    string query = 2;\n  }\n  optional int32 max_results = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc SearchBrokerageWindowInvestmentOptions(SearchBrokerageWindowInvestmentOptionsRequest) returns (SearchBrokerageWindowInvestmentOptionsResponse);\n}\n\nmessage SearchBrokerageWindowInvestmentOptionsRequest {\n  Search search = 1;\n}\n\nmessage SearchBrokerageWindowInvestmentOptionsResponse {\n  repeated AssetMetadata brokerage_window_investment_options = 1;\n}\n\nmessage Search {\n  oneof criteria {\n    string exact_match = 1;\n    string query = 2;\n  }\n  optional int32 max_results = 3;\n}\n\nmessage AssetMetadata {\n  enum AssetClass {\n    UNKNOWN_ASSET_CLASS_NAME = 0;\n    BONDS = 1;\n    EQUITIES = 2;\n    TARGET_DATE_FUND = 3;\n    CASH = 4;\n  }\n\n  enum AssetSuggestionType {\n    UNKNOWN_CLASSIFICATION = 0;\n    POPULAR = 1;\n    OPTIONAL = 2;\n    REQUIRED = 3;\n  }\n\n  string uuid = 1;\n  string short_name = 2;\n  string full_name = 3;\n  string symbol = 4;\n  AssetClass asset_class = 5;\n  int32 allocation_bps = 6;\n  optional int32 yield_bps = 7;\n  optional int32 expense_ratio_bps = 8;\n  optional Money value = 9;\n  optional AssetSuggestionType classification = 10;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/SearchBrokerageWindowInvestmentOptions"},{"label":"SetAccountInvestmentSelections","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/setaccountinvestmentselections","routeSlug":"/openapi/partneremployeeingressservice/setaccountinvestmentselections","metadata":{"seo":{"title":"SetAccountInvestmentSelections","description":"service PartnerEmployeeIngressService {\n  rpc SetAccountInvestmentSelections(SetAccountInvestmentSelectionsRequest) returns (SetAccountInvestmentSelectionsResponse);\n}\n\nmessage SetAccountInvestmentSelectionsRequest {\n  optional string account_id = 1;\n  repeated AccountInvestmentSelection selections = 2;\n}\n\nmessage SetAccountInvestmentSelectionsResponse {\n  EmployeeDetails.OnboardingStatus onboarding_status = 1;\n}\n\nmessage AccountInvestmentSelection {\n  AccountInvestmentSelectionType type = 1;\n  optional string asset_uuid = 2;\n  int32 allocation_bps = 3;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nenum AccountInvestmentSelectionType {\n  UNKNOWN_INVESTMENT_SELECTION_TYPE = 0;\n  EMPLOYER_SELECTED = 1;\n  BROKERAGE_WINDOW = 2;\n  RETIREMENT_MORTGAGE = 3;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc SetAccountInvestmentSelections(SetAccountInvestmentSelectionsRequest) returns (SetAccountInvestmentSelectionsResponse);\n}\n\nmessage SetAccountInvestmentSelectionsRequest {\n  optional string account_id = 1;\n  repeated AccountInvestmentSelection selections = 2;\n}\n\nmessage SetAccountInvestmentSelectionsResponse {\n  EmployeeDetails.OnboardingStatus onboarding_status = 1;\n}\n\nmessage AccountInvestmentSelection {\n  AccountInvestmentSelectionType type = 1;\n  optional string asset_uuid = 2;\n  int32 allocation_bps = 3;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nenum AccountInvestmentSelectionType {\n  UNKNOWN_INVESTMENT_SELECTION_TYPE = 0;\n  EMPLOYER_SELECTED = 1;\n  BROKERAGE_WINDOW = 2;\n  RETIREMENT_MORTGAGE = 3;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/SetAccountInvestmentSelections"},{"label":"SetEmployeeContributionRates","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/setemployeecontributionrates","routeSlug":"/openapi/partneremployeeingressservice/setemployeecontributionrates","metadata":{"seo":{"title":"SetEmployeeContributionRates","description":"service PartnerEmployeeIngressService {\n  rpc SetEmployeeContributionRates(SetEmployeeContributionRatesRequest) returns (SetEmployeeContributionRatesResponse);\n}\n\nmessage SetEmployeeContributionRatesRequest {\n  repeated ContributionInfo employee_contributions = 1;\n}\n\nmessage SetEmployeeContributionRatesResponse {\n  EmployeeDetails.OnboardingStatus onboarding_status = 1;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc SetEmployeeContributionRates(SetEmployeeContributionRatesRequest) returns (SetEmployeeContributionRatesResponse);\n}\n\nmessage SetEmployeeContributionRatesRequest {\n  repeated ContributionInfo employee_contributions = 1;\n}\n\nmessage SetEmployeeContributionRatesResponse {\n  EmployeeDetails.OnboardingStatus onboarding_status = 1;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/SetEmployeeContributionRates"},{"label":"SetRetirementMortgageInvestmentSelections","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/setretirementmortgageinvestmentselections","routeSlug":"/openapi/partneremployeeingressservice/setretirementmortgageinvestmentselections","metadata":{"seo":{"title":"SetRetirementMortgageInvestmentSelections","description":"service PartnerEmployeeIngressService {\n  rpc SetRetirementMortgageInvestmentSelections(SetRetirementMortgageInvestmentSelectionsRequest) returns (SetRetirementMortgageInvestmentSelectionsResponse);\n}\n\nmessage SetRetirementMortgageInvestmentSelectionsRequest {\n  optional string account_id = 1;\n  repeated TrmInvestmentSelection selections = 2;\n}\n\nmessage SetRetirementMortgageInvestmentSelectionsResponse {\n  EmployeeDetails.OnboardingStatus onboarding_status = 1;\n}\n\nmessage TrmInvestmentSelection {\n  string asset_uuid = 1;\n  int32 allocation_bps = 2;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerEmployeeIngressService {\n  rpc SetRetirementMortgageInvestmentSelections(SetRetirementMortgageInvestmentSelectionsRequest) returns (SetRetirementMortgageInvestmentSelectionsResponse);\n}\n\nmessage SetRetirementMortgageInvestmentSelectionsRequest {\n  optional string account_id = 1;\n  repeated TrmInvestmentSelection selections = 2;\n}\n\nmessage SetRetirementMortgageInvestmentSelectionsResponse {\n  EmployeeDetails.OnboardingStatus onboarding_status = 1;\n}\n\nmessage TrmInvestmentSelection {\n  string asset_uuid = 1;\n  int32 allocation_bps = 2;\n}\n\nmessage EmployeeDetails {\n  enum ParticipationStatus {\n    UNKNOWN_PARTICIPATION_STATUS = 0;\n    ACTIVE = 1;\n    PENDING_ELIGIBILITY = 3;\n    NOT_PARTICIPATING = 4;\n    CANNOT_PARTICIPATE = 5;\n    TERMINATED = 6;\n    ELIGIBLE = 7;\n  }\n\n  message OnboardingStatus {\n    enum KycStatus {\n      UNKNOWN_KYC_STATUS = 0;\n      KYC_PENDING = 1;\n      KYC_FAILED = 2;\n      KYC_PASSED = 3;\n      MUST_LINK_ACCOUNT = 4;\n    }\n\n    enum SectionStatus {\n      UNKNOWN_SECTION_STATUS = 0;\n      BLOCKED = 1;\n      PENDING = 2;\n      IN_PROGRESS = 3;\n      COMPLETE = 4;\n    }\n\n    enum Status {\n      UNKNOWN_ONBOARDING_STATUS = 0;\n      ONBOARDING_UNINITIATED = 1;\n      ONBOARDING_IN_PROGRESS = 2;\n      ONBOARDING_COMPLETE = 3;\n    }\n\n    SectionStatus sign_agreements_status = 1;\n    Status status = 2;\n    SectionStatus set_investment_selections = 3;\n    SectionStatus set_trm_investment_selections = 4;\n    SectionStatus set_employee_contribution_rates = 5;\n    KycStatus kyc_status = 6;\n  }\n\n  string uuid = 1;\n  string given_name = 2;\n  string surname = 3;\n  string employment_email = 4;\n  repeated ContributionInfo contribution_rates = 5;\n  ParticipationStatus status = 6;\n  Date dob = 7;\n  Date employment_begin_date = 8;\n  Compensation compensation = 9;\n  bool is_auto_enrolled = 10;\n  OnboardingStatus onboarding_status = 11;\n  optional Date end_date = 12;\n}\n\nmessage ContributionInfo {\n  ContributionType type = 1;\n  int32 paycheck_contribution_amount_bps = 2;\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Compensation {\n  enum Cadence {\n    UNKNOWN_CADENCE = 0;\n    MONTHLY = 1;\n    ANNUALLY = 2;\n    HOURLY = 3;\n    WEEKLY = 4;\n    COMMISSION = 5;\n  }\n\n  Money amount = 1;\n  Cadence cadence = 2;\n}\n\nenum ContributionType {\n  UNKNOWN_CONTRIBUTION_TYPE = 0;\n  TRADITIONAL = 1;\n  ROTH = 2;\n  MEGA_BACKDOOR_ROTH = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/SetRetirementMortgageInvestmentSelections"},{"label":"UpdateBeneficiaries","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partneremployeeingressservice/updatebeneficiaries","routeSlug":"/openapi/partneremployeeingressservice/updatebeneficiaries","metadata":{"seo":{"title":"UpdateBeneficiaries","description":"service PartnerEmployeeIngressService {\n  rpc UpdateBeneficiaries(UpdateBeneficiariesRequest) returns (UpdateBeneficiariesResponse);\n}\n\nmessage UpdateBeneficiariesRequest {\n  repeated UpdateBeneficiaryInfo update_beneficiaries = 1;\n}\n\nmessage UpdateBeneficiariesResponse {\n  repeated Beneficiary beneficiaries = 1;\n}\n\nmessage UpdateBeneficiaryInfo {\n  string beneficiary_uuid = 1;\n  optional string given_name = 2 [debug_redact = true];\n  optional string surname = 3 [debug_redact = true];\n  optional com.basiccapital.common.external.BeneficiaryRelationship relationship = 4;\n  optional Date date_of_birth = 5 [debug_redact = true];\n  optional string email = 6 [debug_redact = true];\n  optional string phone_number = 7 [debug_redact = true];\n  optional com.basiccapital.common.external.Address address = 8 [debug_redact = true];\n  repeated BeneficiaryAllocationInfo allocation_info = 9;\n}\n\nmessage Beneficiary {\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    PENDING = 1;\n    CONFIRMED = 2;\n  }\n\n  string uuid = 1;\n  string given_name = 2 [debug_redact = true];\n  string surname = 3 [debug_redact = true];\n  com.basiccapital.common.external.BeneficiaryRelationship relationship = 4;\n  Date date_of_birth = 5 [debug_redact = true];\n  string email = 6 [debug_redact = true];\n  string phone_number = 7 [debug_redact = true];\n  com.basiccapital.common.external.Address address = 8 [debug_redact = true];\n  Status status = 9;\n  repeated BeneficiaryAllocation allocations = 10;\n}\n\nenum BeneficiaryRelationship {\n  UNKNOWN_RELATIONSHIP = 0;\n  SPOUSE = 1 [(bcoptions.string_name) = \"Spouse\"];\n  PARENT = 2 [(bcoptions.string_name) = \"Parent\"];\n  SIBLING = 3 [(bcoptions.string_name) = \"Sibling\"];\n  CHILD = 4 [(bcoptions.string_name) = \"Child\"];\n  FRIEND = 5 [(bcoptions.string_name) = \"Friend\"];\n  OTHER_RELATIONSHIP = 6 [(bcoptions.string_name) = \"Other\"];\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Address {\n  string address_line_1 = 1 [debug_redact = true];\n  string address_line_2 = 2 [debug_redact = true];\n  string city = 3 [debug_redact = true];\n  string state = 4 [debug_redact = true];\n  string postal_code = 5 [debug_redact = true];\n  CountryCode country_code = 6 [debug_redact = true];\n}\n\nmessage BeneficiaryAllocationInfo {\n  optional string account_uuid = 1;\n  int32 allocation_bps = 2;\n}\n\nmessage BeneficiaryAllocation {\n  string beneficiary_uuid = 1;\n  optional string account_uuid = 2;\n  int32 allocation_bps = 3;\n}\n\nenum CountryCode {\n  UNKNOWN_COUNTRY_CODE = 0;\n  TKL = 1;\n  BGR = 2;\n  LBY = 3;\n  TKM = 4;\n  MDA = 5;\n  DZA = 6;\n  IOT = 7;\n  KAZ = 8;\n  LCA = 9;\n  FLK = 10;\n  MDG = 11;\n  UMI = 12;\n  VNM = 13;\n  DJI = 14;\n  NER = 15;\n  MTQ = 16;\n  LSO = 17;\n  CYM = 18;\n  CYP = 19;\n  MDV = 20;\n  TLS = 21;\n  GNB = 22;\n  JAM = 23;\n  BHR = 24;\n  AGO = 25;\n  BHS = 26;\n  CIV = 27;\n  PHL = 28;\n  NFK = 29;\n  GNQ = 30;\n  SLB = 31;\n  CZE = 32;\n  SLE = 33;\n  MUS = 34;\n  BIH = 35;\n  LTU = 36;\n  MEX = 37;\n  PYF = 38;\n  NGA = 39;\n  SLV = 40;\n  AIA = 41;\n  SMR = 42;\n  IRL = 43;\n  LUX = 44;\n  IRN = 45;\n  IRQ = 46;\n  LVA = 47;\n  DMA = 48;\n  MWI = 49;\n  TON = 50;\n  AZE = 51;\n  VAT = 52;\n  KEN = 53;\n  GAB = 54;\n  ISL = 55;\n  YEM = 56;\n  NIC = 57;\n  ISR = 58;\n  WSM = 59;\n  HRV = 60;\n  MHL = 61;\n  DNK = 62;\n  ITA = 63;\n  ZWE = 64;\n  NIU = 65;\n  SOM = 66;\n  BLM = 67;\n  CMR = 68;\n  GRD = 69;\n  GRC = 70;\n  BLR = 71;\n  IDN = 72;\n  GRL = 73;\n  BLZ = 74;\n  JEY = 75;\n  NZL = 76;\n  GBR = 77;\n  PLW = 78;\n  ALA = 79;\n  ALB = 80;\n  DOM = 81;\n  MYS = 82;\n  SPM = 83;\n  VCT = 84;\n  MYT = 85;\n  URY = 86;\n  KWT = 87;\n  FRA = 88;\n  HTI = 89;\n  USA = 90;\n  BMU = 91;\n  ROU = 92;\n  KGZ = 93;\n  LIE = 94;\n  FRO = 95;\n  COD = 96;\n  COG = 97;\n  COK = 98;\n  COL = 99;\n  COM = 100;\n  KHM = 101;\n  PNG = 102;\n  SAU = 103;\n  NLD = 104;\n  HUN = 105;\n  GTM = 106;\n  MKD = 107;\n  OMN = 108;\n  TCA = 109;\n  ERI = 110;\n  FSM = 111;\n  SRB = 112;\n  TCD = 113;\n  VEN = 114;\n  VUT = 115;\n  AND = 116;\n  BOL = 117;\n  KIR = 118;\n  GUF = 119;\n  CPV = 120;\n  POL = 121;\n  GUM = 122;\n  LKA = 123;\n  ESH = 124;\n  GEO = 125;\n  MLI = 126;\n  SSD = 127;\n  CAF = 128;\n  ESP = 129;\n  GUY = 130;\n  TTO = 131;\n  EST = 132;\n  MLT = 133;\n  ECU = 134;\n  CAN = 135;\n  VGB = 136;\n  QAT = 137;\n  ETH = 138;\n  CRI = 139;\n  TUN = 140;\n  MMR = 141;\n  TUR = 142;\n  SDN = 143;\n  STP = 144;\n  TUV = 145;\n  PAK = 146;\n  UGA = 147;\n  PAN = 148;\n  MNE = 149;\n  MNG = 150;\n  BRA = 151;\n  BRB = 152;\n  NOR = 153;\n  ZMB = 154;\n  MNP = 155;\n  GGY = 156;\n  CCK = 157;\n  SEN = 158;\n  BRN = 159;\n  GHA = 160;\n  SUR = 161;\n  PRI = 162;\n  PRK = 163;\n  NPL = 164;\n  PRT = 165;\n  PRY = 166;\n  VIR = 167;\n  TWN = 168;\n  SVK = 169;\n  ARE = 170;\n  SVN = 171;\n  ARG = 172;\n  TGO = 173;\n  PSE = 174;\n  DEU = 175;\n  GIB = 176;\n  ARM = 177;\n  MOZ = 178;\n  RUS = 179;\n  REU = 180;\n  PCN = 181;\n  THA = 182;\n  GIN = 183;\n  ABW = 184;\n  CUB = 185;\n  KNA = 186;\n  NAM = 187;\n  SWE = 188;\n  BDI = 189;\n  BTN = 190;\n  EGY = 191;\n  HKG = 192;\n  ASM = 193;\n  SGS = 194;\n  CUW = 195;\n  SGP = 196;\n  UZB = 197;\n  SWZ = 198;\n  WLF = 199;\n  MAC = 200;\n  MAF = 201;\n  FIN = 202;\n  RWA = 203;\n  ATA = 204;\n  NRU = 205;\n  MAR = 206;\n  SXM = 207;\n  ATG = 208;\n  SHN = 209;\n  ATF = 210;\n  BEL = 211;\n  KOR = 212;\n  BEN = 213;\n  IMN = 214;\n  BES = 215;\n  TZA = 216;\n  FJI = 217;\n  PER = 218;\n  NCL = 219;\n  SYC = 220;\n  BFA = 221;\n  TJK = 222;\n  UKR = 223;\n  IND = 224;\n  LAO = 225;\n  MRT = 226;\n  ZAF = 227;\n  HMD = 228;\n  SYR = 229;\n  JOR = 230;\n  BVT = 231;\n  AUS = 232;\n  AUT = 233;\n  GLP = 234;\n  BWA = 235;\n  CHE = 236;\n  BGD = 237;\n  MCO = 238;\n  MSR = 239;\n  LBN = 240;\n  CHL = 241;\n  SJM = 242;\n  CHN = 243;\n  AFG = 244;\n  CXR = 245;\n  GMB = 246;\n  HND = 247;\n  JPN = 248;\n  LBR = 249;\n}\nservice PartnerEmployeeIngressService {\n  rpc UpdateBeneficiaries(UpdateBeneficiariesRequest) returns (UpdateBeneficiariesResponse);\n}\n\nmessage UpdateBeneficiariesRequest {\n  repeated UpdateBeneficiaryInfo update_beneficiaries = 1;\n}\n\nmessage UpdateBeneficiariesResponse {\n  repeated Beneficiary beneficiaries = 1;\n}\n\nmessage UpdateBeneficiaryInfo {\n  string beneficiary_uuid = 1;\n  optional string given_name = 2 [debug_redact = true];\n  optional string surname = 3 [debug_redact = true];\n  optional com.basiccapital.common.external.BeneficiaryRelationship relationship = 4;\n  optional Date date_of_birth = 5 [debug_redact = true];\n  optional string email = 6 [debug_redact = true];\n  optional string phone_number = 7 [debug_redact = true];\n  optional com.basiccapital.common.external.Address address = 8 [debug_redact = true];\n  repeated BeneficiaryAllocationInfo allocation_info = 9;\n}\n\nmessage Beneficiary {\n  enum Status {\n    UNKNOWN_STATUS = 0;\n    PENDING = 1;\n    CONFIRMED = 2;\n  }\n\n  string uuid = 1;\n  string given_name = 2 [debug_redact = true];\n  string surname = 3 [debug_redact = true];\n  com.basiccapital.common.external.BeneficiaryRelationship relationship = 4;\n  Date date_of_birth = 5 [debug_redact = true];\n  string email = 6 [debug_redact = true];\n  string phone_number = 7 [debug_redact = true];\n  com.basiccapital.common.external.Address address = 8 [debug_redact = true];\n  Status status = 9;\n  repeated BeneficiaryAllocation allocations = 10;\n}\n\nenum BeneficiaryRelationship {\n  UNKNOWN_RELATIONSHIP = 0;\n  SPOUSE = 1 [(bcoptions.string_name) = \"Spouse\"];\n  PARENT = 2 [(bcoptions.string_name) = \"Parent\"];\n  SIBLING = 3 [(bcoptions.string_name) = \"Sibling\"];\n  CHILD = 4 [(bcoptions.string_name) = \"Child\"];\n  FRIEND = 5 [(bcoptions.string_name) = \"Friend\"];\n  OTHER_RELATIONSHIP = 6 [(bcoptions.string_name) = \"Other\"];\n}\n\nmessage Date {\n  int32 year = 1;\n  int32 month = 2;\n  int32 day = 3;\n}\n\nmessage Address {\n  string address_line_1 = 1 [debug_redact = true];\n  string address_line_2 = 2 [debug_redact = true];\n  string city = 3 [debug_redact = true];\n  string state = 4 [debug_redact = true];\n  string postal_code = 5 [debug_redact = true];\n  CountryCode country_code = 6 [debug_redact = true];\n}\n\nmessage BeneficiaryAllocationInfo {\n  optional string account_uuid = 1;\n  int32 allocation_bps = 2;\n}\n\nmessage BeneficiaryAllocation {\n  string beneficiary_uuid = 1;\n  optional string account_uuid = 2;\n  int32 allocation_bps = 3;\n}\n\nenum CountryCode {\n  UNKNOWN_COUNTRY_CODE = 0;\n  TKL = 1;\n  BGR = 2;\n  LBY = 3;\n  TKM = 4;\n  MDA = 5;\n  DZA = 6;\n  IOT = 7;\n  KAZ = 8;\n  LCA = 9;\n  FLK = 10;\n  MDG = 11;\n  UMI = 12;\n  VNM = 13;\n  DJI = 14;\n  NER = 15;\n  MTQ = 16;\n  LSO = 17;\n  CYM = 18;\n  CYP = 19;\n  MDV = 20;\n  TLS = 21;\n  GNB = 22;\n  JAM = 23;\n  BHR = 24;\n  AGO = 25;\n  BHS = 26;\n  CIV = 27;\n  PHL = 28;\n  NFK = 29;\n  GNQ = 30;\n  SLB = 31;\n  CZE = 32;\n  SLE = 33;\n  MUS = 34;\n  BIH = 35;\n  LTU = 36;\n  MEX = 37;\n  PYF = 38;\n  NGA = 39;\n  SLV = 40;\n  AIA = 41;\n  SMR = 42;\n  IRL = 43;\n  LUX = 44;\n  IRN = 45;\n  IRQ = 46;\n  LVA = 47;\n  DMA = 48;\n  MWI = 49;\n  TON = 50;\n  AZE = 51;\n  VAT = 52;\n  KEN = 53;\n  GAB = 54;\n  ISL = 55;\n  YEM = 56;\n  NIC = 57;\n  ISR = 58;\n  WSM = 59;\n  HRV = 60;\n  MHL = 61;\n  DNK = 62;\n  ITA = 63;\n  ZWE = 64;\n  NIU = 65;\n  SOM = 66;\n  BLM = 67;\n  CMR = 68;\n  GRD = 69;\n  GRC = 70;\n  BLR = 71;\n  IDN = 72;\n  GRL = 73;\n  BLZ = 74;\n  JEY = 75;\n  NZL = 76;\n  GBR = 77;\n  PLW = 78;\n  ALA = 79;\n  ALB = 80;\n  DOM = 81;\n  MYS = 82;\n  SPM = 83;\n  VCT = 84;\n  MYT = 85;\n  URY = 86;\n  KWT = 87;\n  FRA = 88;\n  HTI = 89;\n  USA = 90;\n  BMU = 91;\n  ROU = 92;\n  KGZ = 93;\n  LIE = 94;\n  FRO = 95;\n  COD = 96;\n  COG = 97;\n  COK = 98;\n  COL = 99;\n  COM = 100;\n  KHM = 101;\n  PNG = 102;\n  SAU = 103;\n  NLD = 104;\n  HUN = 105;\n  GTM = 106;\n  MKD = 107;\n  OMN = 108;\n  TCA = 109;\n  ERI = 110;\n  FSM = 111;\n  SRB = 112;\n  TCD = 113;\n  VEN = 114;\n  VUT = 115;\n  AND = 116;\n  BOL = 117;\n  KIR = 118;\n  GUF = 119;\n  CPV = 120;\n  POL = 121;\n  GUM = 122;\n  LKA = 123;\n  ESH = 124;\n  GEO = 125;\n  MLI = 126;\n  SSD = 127;\n  CAF = 128;\n  ESP = 129;\n  GUY = 130;\n  TTO = 131;\n  EST = 132;\n  MLT = 133;\n  ECU = 134;\n  CAN = 135;\n  VGB = 136;\n  QAT = 137;\n  ETH = 138;\n  CRI = 139;\n  TUN = 140;\n  MMR = 141;\n  TUR = 142;\n  SDN = 143;\n  STP = 144;\n  TUV = 145;\n  PAK = 146;\n  UGA = 147;\n  PAN = 148;\n  MNE = 149;\n  MNG = 150;\n  BRA = 151;\n  BRB = 152;\n  NOR = 153;\n  ZMB = 154;\n  MNP = 155;\n  GGY = 156;\n  CCK = 157;\n  SEN = 158;\n  BRN = 159;\n  GHA = 160;\n  SUR = 161;\n  PRI = 162;\n  PRK = 163;\n  NPL = 164;\n  PRT = 165;\n  PRY = 166;\n  VIR = 167;\n  TWN = 168;\n  SVK = 169;\n  ARE = 170;\n  SVN = 171;\n  ARG = 172;\n  TGO = 173;\n  PSE = 174;\n  DEU = 175;\n  GIB = 176;\n  ARM = 177;\n  MOZ = 178;\n  RUS = 179;\n  REU = 180;\n  PCN = 181;\n  THA = 182;\n  GIN = 183;\n  ABW = 184;\n  CUB = 185;\n  KNA = 186;\n  NAM = 187;\n  SWE = 188;\n  BDI = 189;\n  BTN = 190;\n  EGY = 191;\n  HKG = 192;\n  ASM = 193;\n  SGS = 194;\n  CUW = 195;\n  SGP = 196;\n  UZB = 197;\n  SWZ = 198;\n  WLF = 199;\n  MAC = 200;\n  MAF = 201;\n  FIN = 202;\n  RWA = 203;\n  ATA = 204;\n  NRU = 205;\n  MAR = 206;\n  SXM = 207;\n  ATG = 208;\n  SHN = 209;\n  ATF = 210;\n  BEL = 211;\n  KOR = 212;\n  BEN = 213;\n  IMN = 214;\n  BES = 215;\n  TZA = 216;\n  FJI = 217;\n  PER = 218;\n  NCL = 219;\n  SYC = 220;\n  BFA = 221;\n  TJK = 222;\n  UKR = 223;\n  IND = 224;\n  LAO = 225;\n  MRT = 226;\n  ZAF = 227;\n  HMD = 228;\n  SYR = 229;\n  JOR = 230;\n  BVT = 231;\n  AUS = 232;\n  AUT = 233;\n  GLP = 234;\n  BWA = 235;\n  CHE = 236;\n  BGD = 237;\n  MCO = 238;\n  MSR = 239;\n  LBN = 240;\n  CHL = 241;\n  SJM = 242;\n  CHN = 243;\n  AFG = 244;\n  CXR = 245;\n  GMB = 246;\n  HND = 247;\n  JPN = 248;\n  LBR = 249;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerEmployeeIngressService/UpdateBeneficiaries"}]},{"type":"group","label":"PartnerConstantsIngressService","link":"/openapi/partnerconstantsingressservice","routeSlug":"/openapi/partnerconstantsingressservice","items":[{"label":"GetAnnualContributionLimits","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnerconstantsingressservice/getannualcontributionlimits","routeSlug":"/openapi/partnerconstantsingressservice/getannualcontributionlimits","metadata":{"seo":{"title":"GetAnnualContributionLimits","description":"service PartnerConstantsIngressService {\n  rpc GetAnnualContributionLimits(GetAnnualContributionLimitsRequest) returns (GetAnnualContributionLimitsResponse);\n}\n\nmessage GetAnnualContributionLimitsRequest {\n  optional int32 year = 1;\n}\n\nmessage GetAnnualContributionLimitsResponse {\n  Money annual_deferral_limit = 1;\n  Money annual_total_contribution_limit = 2;\n  int32 year = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\nservice PartnerConstantsIngressService {\n  rpc GetAnnualContributionLimits(GetAnnualContributionLimitsRequest) returns (GetAnnualContributionLimitsResponse);\n}\n\nmessage GetAnnualContributionLimitsRequest {\n  optional int32 year = 1;\n}\n\nmessage GetAnnualContributionLimitsResponse {\n  Money annual_deferral_limit = 1;\n  Money annual_total_contribution_limit = 2;\n  int32 year = 3;\n}\n\nmessage Money {\n  string currency_code = 1;\n  int64 amount_cents = 2;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerConstantsIngressService/GetAnnualContributionLimits"},{"label":"GetRegulatoryPlanConfigurationRates","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnerconstantsingressservice/getregulatoryplanconfigurationrates","routeSlug":"/openapi/partnerconstantsingressservice/getregulatoryplanconfigurationrates","metadata":{"seo":{"title":"GetRegulatoryPlanConfigurationRates","description":"service PartnerConstantsIngressService {\n  rpc GetRegulatoryPlanConfigurationRates(GetRegulatoryPlanConfigurationRatesRequest) returns (GetRegulatoryPlanConfigurationRatesResponse);\n}\n\nmessage GetRegulatoryPlanConfigurationRatesRequest {}\n\nmessage GetRegulatoryPlanConfigurationRatesResponse {\n  int32 safe_harbor_required_min_match_bps = 1;\n  int32 safe_harbor_max_recommended_bps = 2;\n  int32 secure_act_min_required_auto_enrolled_bps = 3;\n  int32 secure_act_min_required_auto_increase_bps = 4;\n  int32 secure_act_max_auto_enrolled_bps = 5;\n  int32 secure_act_max_auto_increase_bps = 6;\n}\nservice PartnerConstantsIngressService {\n  rpc GetRegulatoryPlanConfigurationRates(GetRegulatoryPlanConfigurationRatesRequest) returns (GetRegulatoryPlanConfigurationRatesResponse);\n}\n\nmessage GetRegulatoryPlanConfigurationRatesRequest {}\n\nmessage GetRegulatoryPlanConfigurationRatesResponse {\n  int32 safe_harbor_required_min_match_bps = 1;\n  int32 safe_harbor_max_recommended_bps = 2;\n  int32 secure_act_min_required_auto_enrolled_bps = 3;\n  int32 secure_act_min_required_auto_increase_bps = 4;\n  int32 secure_act_max_auto_enrolled_bps = 5;\n  int32 secure_act_max_auto_increase_bps = 6;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerConstantsIngressService/GetRegulatoryPlanConfigurationRates"},{"label":"GetRetirementProjectionParameters","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/partnerconstantsingressservice/getretirementprojectionparameters","routeSlug":"/openapi/partnerconstantsingressservice/getretirementprojectionparameters","metadata":{"seo":{"title":"GetRetirementProjectionParameters","description":"service PartnerConstantsIngressService {\n  rpc GetRetirementProjectionParameters(GetRetirementProjectionParametersRequest) returns (GetRetirementProjectionParametersResponse);\n}\n\nmessage GetRetirementProjectionParametersRequest {}\n\nmessage GetRetirementProjectionParametersResponse {\n  int32 expected_annual_return_bps = 1;\n  int32 annual_wage_growth_bps = 2;\n  int32 inflation_rate_bps = 3;\n  int32 withdrawal_rate_bps = 4;\n  int32 retirement_income_replacement_ratio_bps = 5;\n  int32 default_retirement_age = 6;\n}\nservice PartnerConstantsIngressService {\n  rpc GetRetirementProjectionParameters(GetRetirementProjectionParametersRequest) returns (GetRetirementProjectionParametersResponse);\n}\n\nmessage GetRetirementProjectionParametersRequest {}\n\nmessage GetRetirementProjectionParametersResponse {\n  int32 expected_annual_return_bps = 1;\n  int32 annual_wage_growth_bps = 2;\n  int32 inflation_rate_bps = 3;\n  int32 withdrawal_rate_bps = 4;\n  int32 retirement_income_replacement_ratio_bps = 5;\n  int32 default_retirement_age = 6;\n}\n"}},"httpPath":"/v1/partner-rpc/com.basiccapital.systems.ingress.partner.PartnerConstantsIngressService/GetRetirementProjectionParameters"}]}]}