/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { memberPortalInvitationsDeleteV1ContractorsContractorUuidMemberPortalInvitations } from "../funcs/memberPortalInvitationsDeleteV1ContractorsContractorUuidMemberPortalInvitations.js"; import { memberPortalInvitationsDeleteV1EmployeesEmployeeIdMemberPortalInvitations } from "../funcs/memberPortalInvitationsDeleteV1EmployeesEmployeeIdMemberPortalInvitations.js"; import { memberPortalInvitationsGetV1ContractorsContractorUuidMemberPortalInvitations } from "../funcs/memberPortalInvitationsGetV1ContractorsContractorUuidMemberPortalInvitations.js"; import { memberPortalInvitationsGetV1EmployeesEmployeeIdMemberPortalInvitations } from "../funcs/memberPortalInvitationsGetV1EmployeesEmployeeIdMemberPortalInvitations.js"; import { memberPortalInvitationsPostV1ContractorsContractorUuidMemberPortalInvitations } from "../funcs/memberPortalInvitationsPostV1ContractorsContractorUuidMemberPortalInvitations.js"; import { memberPortalInvitationsPostV1EmployeesEmployeeIdMemberPortalInvitations } from "../funcs/memberPortalInvitationsPostV1EmployeesEmployeeIdMemberPortalInvitations.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import { DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest, DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse, } from "../models/operations/deletev1contractorscontractoruuidmemberportalinvitations.js"; import { DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest, DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse, } from "../models/operations/deletev1employeesemployeeidmemberportalinvitations.js"; import { GetV1ContractorsContractorUuidMemberPortalInvitationsRequest, GetV1ContractorsContractorUuidMemberPortalInvitationsResponse, } from "../models/operations/getv1contractorscontractoruuidmemberportalinvitations.js"; import { GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest, GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse, } from "../models/operations/getv1employeesemployeeidmemberportalinvitations.js"; import { PostV1ContractorsContractorUuidMemberPortalInvitationsRequest, PostV1ContractorsContractorUuidMemberPortalInvitationsResponse, } from "../models/operations/postv1contractorscontractoruuidmemberportalinvitations.js"; import { PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest, PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse, } from "../models/operations/postv1employeesemployeeidmemberportalinvitations.js"; import { unwrapAsync } from "../types/fp.js"; export class MemberPortalInvitations extends ClientSDK { /** * Create an employee member portal invitation * * @remarks * Generates a member portal invitation for the specified employee. If the employee already has an invitation and its token has expired, calling this endpoint regenerates the invitation and overrides the prior token. * * scope: `member_portal_invitation:write` */ async postV1EmployeesEmployeeIdMemberPortalInvitations( request: PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest, options?: RequestOptions, ): Promise { return unwrapAsync( memberPortalInvitationsPostV1EmployeesEmployeeIdMemberPortalInvitations( this, request, options, ), ); } /** * Get an employee member portal invitation * * @remarks * Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still be acted on by the employee. * * scope: `member_portal_invitation:read` */ async getV1EmployeesEmployeeIdMemberPortalInvitations( request: GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest, options?: RequestOptions, ): Promise { return unwrapAsync( memberPortalInvitationsGetV1EmployeesEmployeeIdMemberPortalInvitations( this, request, options, ), ); } /** * Cancel an employee member portal invitation * * @remarks * Cancels the member portal invitation for the specified employee. * * Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company admin to take full control of onboarding the employee, cancel the self-onboarding request instead. * * scope: `member_portal_invitation:write` */ async deleteV1EmployeesEmployeeIdMemberPortalInvitations( request: DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest, options?: RequestOptions, ): Promise { return unwrapAsync( memberPortalInvitationsDeleteV1EmployeesEmployeeIdMemberPortalInvitations( this, request, options, ), ); } /** * Create a contractor member portal invitation * * @remarks * Generates a member portal invitation for the specified contractor. If the contractor already has an invitation and its token has expired, calling this endpoint regenerates the invitation and overrides the prior token. * * scope: `member_portal_invitation:write` */ async postV1ContractorsContractorUuidMemberPortalInvitations( request: PostV1ContractorsContractorUuidMemberPortalInvitationsRequest, options?: RequestOptions, ): Promise { return unwrapAsync( memberPortalInvitationsPostV1ContractorsContractorUuidMemberPortalInvitations( this, request, options, ), ); } /** * Get a contractor member portal invitation * * @remarks * Returns the current status of a contractor's member portal invitation (`pending`, `sent`, `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still be acted on by the contractor. * * scope: `member_portal_invitation:read` */ async getV1ContractorsContractorUuidMemberPortalInvitations( request: GetV1ContractorsContractorUuidMemberPortalInvitationsRequest, options?: RequestOptions, ): Promise { return unwrapAsync( memberPortalInvitationsGetV1ContractorsContractorUuidMemberPortalInvitations( this, request, options, ), ); } /** * Cancel a contractor member portal invitation * * @remarks * Cancels the member portal invitation for the specified contractor. * * Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. * * scope: `member_portal_invitation:write` */ async deleteV1ContractorsContractorUuidMemberPortalInvitations( request: DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest, options?: RequestOptions, ): Promise { return unwrapAsync( memberPortalInvitationsDeleteV1ContractorsContractorUuidMemberPortalInvitations( this, request, options, ), ); } }