Skip to content

OrganizationInvitationsClient

Patrick Smith edited this page Jan 22, 2021 · 1 revision

OrganizationInvitationsClient

Client used for accessing Organization Invitation resource data

Parameters

  • token (Token) - Access Token that can be retrieved using the OAuthClient
  • organizationUuid - UUID of the Organization

Example Usage

const oauthClient = new OAuthClient(clientId, clientSecret)
const token = oauthClient.token({...})

const organizationUuid = '<organization_uuid>'

const client = new OrganizationInvitationsClient(token, organizationUuid)

Method Signatures

  • async create(options: OrganizationInvitationCreateOptions): Promise<OrganizationInvitation>

Please refer to Calendly's v2 API documentation for more details: Invite User to Organization

/**
  * Creates a new Organization Invitation
  * 
  * This action will send an email to the specified user, inviting them to join
  * the organization.
  */
async create(options: OrganizationInvitationCreateOptions): Promise<OrganizationInvitation>

type OrganizationInvitationOptions = {
  count?: number
  email?: string
  pageToken?: string
  sort?: OrganizationInvitationSort
  status?: OrganizationInvitationStatus
}

type OrganizationInvitation = {
  uri: string
  organization: string
  email: string
  status: OrganizationInvitationStatus
  createdAt: Date
  updatedAt: Date
  lastSentAt: Date
  user: string
}

enum OrganizationInvitationSort {
  CreatedAtAscending = 'created_at:asc',
  CreatedAtDescending = 'created_at:desc'
}

enum OrganizationInvitationStatus {
  Accepted = 'accepted',
  Declined = 'declined',
  Pending = 'pending'
}
  • async delete(uuid: string): Promise<void>

Please refer to Calendly's v2 API documentation for more details: Revoke User's Organization Invitation

/**
  * Deletes the Organization Invitation associated with the specified UUID
  * @param uuid - UUID of Organization Invitation
  * 
  * Once deleted, the invitation link sent to the Invitee will no longer be valid.
  */
async delete(uuid: string): Promise<void>
  • async get(uuid: string): Promise<OrganizationInvitation>

Please refer to Calendly's v2 API documentation for more details: Get Organization Invitation

/**
  * Returns the Organization Invitation associated with the specified UUID
  * @param uuid - UUID of Organization Invitation
  */
async get(uuid: string): Promise<OrganizationInvitation>

type OrganizationInvitation = {
  uri: string
  organization: string
  email: string
  status: OrganizationInvitationStatus
  createdAt: Date
  updatedAt: Date
  lastSentAt: Date
  user: string
}

enum OrganizationInvitationStatus {
  Accepted = 'accepted',
  Declined = 'declined',
  Pending = 'pending'
}
  • async list(options: OrganizationInvitationOptions = {}): Promise<OrganizationInvitationList>

Please refer to Calendly's v2 API documentation for more details: List Organization Invitations

/**
  * Returns a list of Organization Invitations
  * @param options - OrganizationInvitationOptions
  */
async list(options: OrganizationInvitationOptions = {}): Promise<OrganizationInvitationList>

type OrganizationInvitationOptions = {
  count?: number
  email?: string
  pageToken?: string
  sort?: OrganizationInvitationSort
  status?: OrganizationInvitationStatus
}

enum OrganizationInvitationSort {
  CreatedAtAscending = 'created_at:asc',
  CreatedAtDescending = 'created_at:desc'
}

enum OrganizationInvitationStatus {
  Accepted = 'accepted',
  Declined = 'declined',
  Pending = 'pending'
}

type OrganizationInvitationList = {
  collection: OrganizationInvitation[]
  pagination: Pagination
}

type Pagination = {
  count: number,
  nextPage: string
}