JetBrains Space Help

Team Directory

Get all calendar events

get /api/http/team-directory/calendar-events

Get calendar events attached to an article in a specific time period

Request arguments

dateFrom: string (format: full-date) (Query) ( Required )

dateTo: string (format: full-date) (Query) ( Required )

Response

array of MeetingRecord

Get calendar event

get /api/http/team-directory/calendar-events/{id}

Get a calendar event attached to an article

Request arguments

id: string (Path) ( Required )

Get all absence events

get /api/http/team-directory/calendar-events/absence-events

Get/search absences. Parameters are applied as ' AND ' filters.

Request arguments

dateFrom: string (format: full-date) (Query) ( Required )

dateTo: string (format: full-date) (Query) ( Required )

team: string (Query) ( Nullable and Optional , defaults to null)

location: string (Query) ( Nullable and Optional , defaults to null)

role: string (Query) ( Nullable and Optional , defaults to null)

Response

array of AbsenceEvent

Get all birthday events

get /api/http/team-directory/calendar-events/birthday-events

Get/search birthdays. Parameters are applied as ' AND ' filters.

Request arguments

dateFrom: string (format: full-date) (Query) ( Required )

dateTo: string (format: full-date) (Query) ( Required )

team: string (Query) ( Nullable and Optional , defaults to null)

location: string (Query) ( Nullable and Optional , defaults to null)

role: string (Query) ( Nullable and Optional , defaults to null)

Response

array of BirthdayEvent

Get all starred birthday events

get /api/http/team-directory/calendar-events/birthday-events/starred

Get/search birthdays in a specific time period for starred profiles.

Request arguments

dateFrom: string (format: full-date) (Query) ( Required )

dateTo: string (format: full-date) (Query) ( Required )

Response

array of BirthdayEvent

Get all holidays

get /api/http/team-directory/calendar-events/holidays

Get/search holidays. Parameters are applied as ' AND ' filters.

Request arguments

startDate: string (format: full-date) (Query) ( Required )

endDate: string (format: full-date) (Query) ( Required )

team: string (Query) ( Nullable and Optional , defaults to null)

location: string (Query) ( Nullable and Optional , defaults to null)

role: string (Query) ( Nullable and Optional , defaults to null)

workingDays: boolean (Query) ( Nullable and Optional , defaults to null)

Response

array of HolidaysEvent

Update meeting participation

patch /api/http/team-directory/calendar-events/meeting-participations/{id}

Update RSVP / calendar event participation status for a calendar event attached to an article

Request arguments

id: string (Path) ( Required )

object with fields:

Get all membership events

get /api/http/team-directory/calendar-events/membership-events

Get/search membership events. Parameters are applied as ' AND ' filters.

Required permissions: View memberships

Request arguments

dateFrom: string (format: full-date) (Query) ( Required )

dateTo: string (format: full-date) (Query) ( Required )

team: string (Query) ( Nullable and Optional , defaults to null)

location: string (Query) ( Nullable and Optional , defaults to null)

role: string (Query) ( Nullable and Optional , defaults to null)

Response

array of MembershipEvent

Get all non working days events

get /api/http/team-directory/calendar-events/non-working-days-events

Get/search non-working day events. Parameters are applied as ' AND ' filters.

Request arguments

dateFrom: string (format: full-date) (Query) ( Required )

dateTo: string (format: full-date) (Query) ( Required )

member: string (Query) ( Nullable and Optional , defaults to null)

team: string (Query) ( Nullable and Optional , defaults to null)

location: string (Query) ( Nullable and Optional , defaults to null)

role: string (Query) ( Nullable and Optional , defaults to null)

Response

array of NonWorkingDaysEvent

post /api/http/team-directory/invitation-links

Create an organization-wide invitation link

Request arguments

object with fields:

  • name: string ( Required )

  • expiresAt: string (format: date-time) ( Required )

  • inviteeLimit: integer (format: int32) ( Required )

  • team: string ( Nullable and Optional , defaults to null)

  • role: string ( Nullable and Optional , defaults to null)

  • project: ProjectIdentifier ( Nullable and Optional , defaults to null)

  • projectRole: ProjectTeamRole ( Nullable and Optional )

  • globalRole: GlobalRole ( Nullable and Optional )

Response

object with fields:

get /api/http/team-directory/invitation-links

Get organization-wide invitation links

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

withDeleted: boolean (Query) ( Optional , defaults to false)

projects: array of ProjectIdentifier (Query) ( Nullable and Optional , defaults to null)

teams: array of string (Query) ( Nullable and Optional , defaults to null)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of InvitationLink ( Required )

patch /api/http/team-directory/invitation-links/{invitationLinkId}

Update an organization-wide invitation link

Request arguments

invitationLinkId: string (Path) ( Required )

object with fields:

  • name: string ( Nullable and Optional , defaults to null)

  • expiresAt: string (format: date-time) ( Nullable and Optional , defaults to null)

  • inviteeLimit: integer (format: int32) ( Nullable and Optional , defaults to null)

  • team: string ( Nullable and Optional )

  • position: string ( Nullable and Optional )

  • project: ProjectIdentifier ( Nullable and Optional )

  • projectRole: ProjectTeamRole ( Nullable and Optional , defaults to null)

Response

No arguments

delete /api/http/team-directory/invitation-links/{invitationLinkId}

Delete currently active organization-wide invitation link

Request arguments

invitationLinkId: string (Path) ( Required )

Response

No arguments

Create invitation

post /api/http/team-directory/invitations

Create an invitation to join the current organization. Optionally, the team and/or role to join when accepting the invitation can be specified.

Request arguments

object with fields:

  • inviteeEmail: string ( Required )

  • inviteeFirstName: string ( Nullable and Optional , defaults to null)

  • inviteeLastName: string ( Nullable and Optional , defaults to null)

  • team: string ( Nullable and Optional , defaults to null)

  • role: string ( Nullable and Optional , defaults to null)

  • project: ProjectIdentifier ( Nullable and Optional , defaults to null)

  • projectRole: ProjectTeamRole ( Nullable and Optional , defaults to null)

  • globalRole: GlobalRole ( Nullable and Optional , defaults to null)

Response

Invitation

Get all invitations

get /api/http/team-directory/invitations

Get a list of invitations

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

withDeleted: boolean (Query) ( Optional , defaults to false)

projects: array of ProjectIdentifier (Query) ( Nullable and Optional , defaults to null)

teams: array of string (Query) ( Nullable and Optional , defaults to null)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of Invitation ( Required )

Update invitation

patch /api/http/team-directory/invitations/{id}

Update an invitation. Optional parameters will be ignored when not specified and updated otherwise.

Request arguments

id: string (Path) ( Required )

object with fields:

  • inviteeEmail: string ( Nullable and Optional , defaults to null)

  • inviteeFirstName: string ( Nullable and Optional , defaults to null)

  • inviteeLastName: string ( Nullable and Optional , defaults to null)

  • team: string ( Nullable and Optional )

  • role: string ( Nullable and Optional )

  • project: ProjectIdentifier ( Nullable and Optional )

  • projectRole: ProjectTeamRole ( Nullable and Optional , defaults to null)

Response

No arguments

Delete invitation

delete /api/http/team-directory/invitations/{id}

Delete an invitation. Deleted invitations can no longer be used to join the organization.

Request arguments

id: string (Path) ( Required )

Response

No arguments

Get all languages

get /api/http/team-directory/languages

Get all languages

Request arguments

No arguments

Response

array of TD_Language

Get all location equipment types

get /api/http/team-directory/location-equipment-types

Get all equipment types

Request arguments

withArchived: boolean (Query) ( Optional , defaults to false)

Response

array of TD_LocationEquipmentType

Delete location equipment type by name

delete /api/http/team-directory/location-equipment-types/name:{name}

Archive/restore location equipment type. Setting delete to true will archive the equipment type, false will restore it.

Request arguments

name: string (Path) ( Required )

delete: boolean (Query) ( Required )

Response

No arguments

Create location map member point

post /api/http/team-directory/location-map-member-points

Mark member location on a map

Required permissions: Update member profiles

Request arguments

object with fields:

  • memberLocationId: string ( Required )

  • x: integer (format: int32) ( Required )

  • y: integer (format: int32) ( Required )

  • mapId: string ( Required )

Get all location map member points

get /api/http/team-directory/location-map-member-points

Get members on a map for a location ID

Required permissions: View location map points

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

locationId: string (Query) ( Required )

includeUnmarked: boolean (Query) ( Optional , defaults to true)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of TD_MemberInLocationMap ( Required )

Update location map member point

patch /api/http/team-directory/location-map-member-points/{locationPointId}

Update member location on a map

Required permissions: Update member profiles

Request arguments

locationPointId: string (Path) ( Required )

object with fields:

  • x: integer (format: int32) ( Nullable and Optional , defaults to null)

  • y: integer (format: int32) ( Nullable and Optional , defaults to null)

Delete location map member point

delete /api/http/team-directory/location-map-member-points/{locationPointId}

Delete member location from a map

Required permissions: Update member profiles

Request arguments

locationPointId: string (Path) ( Required )

delete: boolean (Query) ( Required )

Response

No arguments

Create location

post /api/http/team-directory/locations

Create a location

Required permissions: Update locations

Request arguments

object with fields:

  • name: string ( Required )

  • timezone: string ( Nullable and Optional , defaults to null)

  • workdays: array of integer (format: int32) ( Nullable and Optional , defaults to null)

  • phones: array of string ( Nullable and Optional , defaults to null)

  • emails: array of string ( Nullable and Optional , defaults to null)

  • equipment: array of string ( Nullable and Optional , defaults to null)

  • description: string ( Nullable and Optional , defaults to null)

  • address: string ( Nullable and Optional , defaults to null)

  • type: string ( Nullable and Optional , defaults to null)

  • parentId: string ( Nullable and Optional , defaults to null)

  • capacity: integer (format: int32) ( Nullable and Optional , defaults to null)

Response

TD_Location

Get all locations

get /api/http/team-directory/locations

Get/search all locations. Parameters are applied as ' AND ' filters.

Required permissions: View locations

Request arguments

query: string (Query) ( Optional , defaults to "")

type: string (Query) ( Nullable and Optional , defaults to null)

withArchived: boolean (Query) ( Optional , defaults to false)

Response

array of TD_Location

Restore multiple locations

post /api/http/team-directory/locations/restore

Restore one or more archived locations

Required permissions: Update locations

Request arguments

object with fields:

  • ids: array of string ( Required )

Response

array of TD_Location

Restore location

post /api/http/team-directory/locations/{id}/restore

Restore an archived location

Required permissions: Update locations

Request arguments

id: string (Path) ( Required )

Response

TD_Location

Get location

get /api/http/team-directory/locations/{id}

Get a location by ID

Required permissions: View locations

Request arguments

id: string (Path) ( Required )

Response

TD_Location

Update location

patch /api/http/team-directory/locations/{id}

Update a location. Optional parameters will be ignored when null and updated otherwise.

Required permissions: Update locations

Request arguments

id: string (Path) ( Required )

object with fields:

  • name: string ( Nullable and Optional , defaults to null)

  • timezone: string ( Nullable and Optional )

  • customWorkdays: boolean ( Nullable and Optional , defaults to null)

  • workdays: array of integer (format: int32) ( Nullable and Optional , defaults to null)

  • phones: array of string ( Nullable and Optional , defaults to null)

  • emails: array of string ( Nullable and Optional , defaults to null)

  • equipment: array of string ( Nullable and Optional , defaults to null)

  • description: string ( Nullable and Optional , defaults to null)

  • address: string ( Nullable and Optional , defaults to null)

  • type: string ( Nullable and Optional , defaults to null)

  • parentId: string ( Nullable and Optional )

  • mapId: string ( Nullable and Optional )

  • capacity: integer (format: int32) ( Nullable and Optional )

Response

TD_Location

Archive location

delete /api/http/team-directory/locations/{id}

Archive a location

Required permissions: Update locations

Request arguments

id: string (Path) ( Required )

Response

array of TD_Location

Get map

get /api/http/team-directory/locations/{id}/map

Get map for a location ID

Required permissions: View locations

Request arguments

id: string (Path) ( Required )

Update map

patch /api/http/team-directory/locations/{id}/map

Update the map for a location

Required permissions: Update locations

Request arguments

id: string (Path) ( Required )

object with fields:

  • mapPictureId: string ( Required )

Get all locations with timezone

get /api/http/team-directory/locations-with-timezone

Get all locations with their time zone

Required permissions: View locations

Request arguments

No arguments

Response

array of TD_LocationWithTimeZone

Create member location

post /api/http/team-directory/member-locations

Add a member location, optionally from/until a given date

Required permissions: Edit locations

Request arguments

object with fields:

  • member: ProfileIdentifier ( Required )

  • location: string ( Required )

  • since: string (format: full-date) ( Nullable and Optional , defaults to null)

  • till: string (format: full-date) ( Nullable and Optional , defaults to null)

  • previousLocation: string ( Nullable and Optional , defaults to null)

Get all member locations

get /api/http/team-directory/member-locations

Get/search member locations. Parameters are applied as ' AND ' filters.

Required permissions: View member locations

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

profiles: array of ProfileIdentifier (Query) ( Nullable and Optional , defaults to null)

locations: array of string (Query) ( Nullable and Optional , defaults to null)

since: string (format: full-date) (Query) ( Nullable and Optional , defaults to null)

till: string (format: full-date) (Query) ( Nullable and Optional , defaults to null)

withArchived: boolean (Query) ( Optional , defaults to false)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of TD_MemberLocation ( Required )

Get member location

get /api/http/team-directory/member-locations/{memberLocationId}

Get a member location by its ID

Required permissions: View member locations

Request arguments

memberLocationId: string (Path) ( Required )

Update member location

patch /api/http/team-directory/member-locations/{memberLocationId}

Update member location. Optional parameters will be ignored when null and updated otherwise.

Required permissions: Edit locations

Request arguments

memberLocationId: string (Path) ( Required )

object with fields:

  • location: string ( Nullable and Optional , defaults to null)

  • since: string (format: full-date) ( Nullable and Optional )

  • till: string (format: full-date) ( Nullable and Optional )

Delete member location

delete /api/http/team-directory/member-locations/{memberLocationId}

Archive/unarchive a member location. Setting delete to true will archive the member location, false will restore it.

Required permissions: Edit locations

Request arguments

memberLocationId: string (Path) ( Required )

delete: boolean (Query) ( Optional , defaults to true)

Response

No arguments

Get all membership events

get /api/http/team-directory/membership-events

Get/search membership events. Parameters are applied as ' AND ' filters.

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

teamId: string (Query) ( Nullable and Optional , defaults to null)

locationId: string (Query) ( Nullable and Optional , defaults to null)

roleId: string (Query) ( Nullable and Optional , defaults to null)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of TD_MergedEvent ( Required )

Create membership

post /api/http/team-directory/memberships

Create a team membership

Required permissions: Update teams

Request arguments

object with fields:

  • member: ProfileIdentifier ( Required )

  • teamId: string ( Required )

  • roleId: string ( Required )

  • lead: boolean ( Optional , defaults to false)

  • manager: ProfileIdentifier ( Nullable and Optional , defaults to null)

  • activeSince: string (format: date-time) ( Nullable and Optional , defaults to null)

  • activeTill: string (format: date-time) ( Nullable and Optional , defaults to null)

  • previousMembershipId: string ( Nullable and Optional , defaults to null)

  • requiresApproval: boolean ( Optional , defaults to false)

  • customFieldValues: array of CustomFieldInputValue ( Nullable and Optional , defaults to null)

Get all memberships

get /api/http/team-directory/memberships

Get/search team memberships. Parameters are applied as ' AND ' filters.

Required permissions: View memberships

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

identifiers: array of TeamMembershipIdentifier (Query) ( Nullable and Optional , defaults to null)

profiles: array of ProfileIdentifier (Query) ( Nullable and Optional , defaults to null)

teams: array of string (Query) ( Nullable and Optional , defaults to null)

directTeams: boolean (Query) ( Optional , defaults to false)

roles: array of string (Query) ( Nullable and Optional , defaults to null)

directRoles: boolean (Query) ( Optional , defaults to false)

since: string (format: date-time) (Query) ( Nullable and Optional , defaults to null)

till: string (format: date-time) (Query) ( Nullable and Optional , defaults to null)

requiresApproval: boolean (Query) ( Nullable and Optional , defaults to null)

withArchived: boolean (Query) ( Optional , defaults to false)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of TD_Membership ( Required )

Get sync batch

get /api/http/team-directory/memberships/sync-batch

Get memberships for synchronization with third-party system. Memberships with etag greater than specified value are returned. Read more in the documentation.

Required permissions: View memberships

Request arguments

batchInfo: string in one of the formats

  • { etag: string , batchSize: integer (format: int32) }

(Query) ( Required )

Response

object with fields:

  • etag: string ( Required )

  • data: array of TD_Membership ( Required )

  • hasMore: boolean ( Required )

Get membership

get /api/http/team-directory/memberships/{membershipId}

Get a single membership by its identifier

Required permissions: View memberships

Request arguments

membershipId: string in one of the formats

  • id: string

(Path) ( Required )

Update membership

patch /api/http/team-directory/memberships/{membershipId}

Update a team membership. Optional parameters will be ignored when null and updated otherwise.

Required permissions: Update teams

Request arguments

membershipId: string (Path) ( Required )

object with fields:

  • teamId: string ( Nullable and Optional , defaults to null)

  • roleId: string ( Nullable and Optional , defaults to null)

  • lead: boolean ( Nullable and Optional , defaults to null)

  • manager: ProfileIdentifier ( Nullable and Optional )

  • activeSince: string (format: date-time) ( Nullable and Optional )

  • activeTill: string (format: date-time) ( Nullable and Optional )

  • requiresApproval: boolean ( Optional , defaults to false)

  • customFieldValues: array of CustomFieldInputValue ( Nullable and Optional , defaults to null)

Delete membership

delete /api/http/team-directory/memberships/{membershipId}

Archive/unarchive a team membership. Setting delete to true will archive the membership, false will restore it.

Required permissions: Update teams

Request arguments

membershipId: string (Path) ( Required )

delete: boolean (Query) ( Optional , defaults to true)

Response

No arguments

Revoke membership

delete /api/http/team-directory/memberships/{membershipId}/revoke

Revoke a team membership to end at a given date/time

Required permissions: Update teams

Request arguments

membershipId: string (Path) ( Required )

till: string (format: date-time) (Query) ( Nullable and Optional , defaults to null)

Response

No arguments

Get manager candidate

get /api/http/team-directory/memberships/manager-candidates

Query profiles that can be a manager

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

term: string (Query) ( Required )

teamId: string (Query) ( Nullable and Optional , defaults to null)

excludedMemberId: string (Query) ( Nullable and Optional , defaults to null)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of TD_MemberProfile ( Required )

Get all requests

get /api/http/team-directory/memberships/requests

Get/search all membership requests. Parameters are applied as ' AND ' filters.

Required permissions: Update teams

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

teamId: string (Query) ( Nullable and Optional , defaults to null)

direct: boolean (Query) ( Nullable and Optional , defaults to true)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of object with fields:

    ( Required )

Update request

patch /api/http/team-directory/memberships/requests/{membershipRequestId}

Approve/reject a team membership request. Setting approved to true will approve the membership request, false will reject it.

Required permissions: Update teams

Request arguments

membershipRequestId: string (Path) ( Required )

object with fields:

  • approved: boolean ( Required )

Response

No arguments

Delete request

delete /api/http/team-directory/memberships/requests/{membershipRequestId}

Delete a team membership request

Required permissions: Update member profiles

Request arguments

membershipRequestId: string (Path) ( Required )

Request membership revocation

patch /api/http/team-directory/memberships/{membershipId}/request-revoke

Request a team membership to end at a given date/time. Will need approval.

Required permissions: Update teams

Request arguments

membershipId: string (Path) ( Required )

object with fields:

  • till: string (format: date-time) ( Required )

Response

No arguments

Create profile

post /api/http/team-directory/profiles

Create a profile

Required permissions: Add members, Add new external user

Request arguments

object with fields:

  • username: string ( Required )

  • firstName: string ( Required )

  • lastName: string ( Required )

  • emails: array of string ( Optional , defaults to [])

  • phones: array of string ( Optional , defaults to [])

  • birthday: string (format: full-date) ( Nullable and Optional , defaults to null)

  • about: string ( Nullable and Optional , defaults to null)

  • messengers: array of string ( Optional , defaults to [])

  • links: array of string ( Optional , defaults to [])

  • notAMember: boolean ( Optional , defaults to false)

  • joined: string (format: full-date) ( Nullable and Optional , defaults to null)

  • left: string (format: full-date) ( Nullable and Optional , defaults to null)

  • leftAt: string (format: date-time) ( Nullable and Optional , defaults to null)

  • speaksEnglish: boolean ( Nullable and Optional , defaults to null)

  • pictureAttachmentId: string ( Nullable and Optional , defaults to null)

  • avatarCropSquare: AvatarCropSquare ( Nullable and Optional , defaults to null)

  • customFieldValues: array of CustomFieldInputValue ( Optional , defaults to [])

  • externalId: string ( Nullable and Optional , defaults to null)

  • location: string ( Nullable and Optional , defaults to null)

  • guest: boolean ( Nullable and Optional , defaults to null)

  • guestType: GuestType ( Nullable and Optional , defaults to null)

  • project: ProjectIdentifier ( Nullable and Optional , defaults to null)

  • projectRole: ProjectTeamRole ( Nullable and Optional , defaults to null)

Get all profiles

get /api/http/team-directory/profiles

Get/search all profiles. Parameters are applied as ' AND ' filters.

Required permissions: View member profiles

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

query: string (Query) ( Optional , defaults to "")

reportPastMembers: boolean (Query) ( Optional , defaults to false)

reportFutureMembers: boolean (Query) ( Nullable and Optional , defaults to false)

reportCurrentMembers: boolean (Query) ( Nullable and Optional , defaults to true)

teamId: string (Query) ( Nullable and Optional , defaults to null)

locationId: string (Query) ( Nullable and Optional , defaults to null)

roleId: string (Query) ( Nullable and Optional , defaults to null)

meOnTop: boolean (Query) ( Optional , defaults to false)

order: ProfileOrder (Query) ( Nullable and Optional , defaults to null)

orgRelation: ProfileOrgRelation (Query) ( Optional , defaults to "MEMBER")

profiles: array of ProfileIdentifier (Query) ( Nullable and Optional , defaults to null)

No more than 100 profiles can be returned in a single request.

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of TD_MemberProfile ( Required )

Get profile by email

get /api/http/team-directory/profiles/email:{email}

Get profile information by email address

Required permissions: View member profiles

Request arguments

email: string (Path) ( Required )

verified: boolean (Query) ( Optional , defaults to true)

Get profile

get /api/http/team-directory/profiles/{profile}

Get profile information

Required permissions: View member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Update profile

patch /api/http/team-directory/profiles/{profile}

Update a profile. Optional parameters will be ignored when null and updated otherwise.

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • username: string ( Nullable and Optional , defaults to null)

  • firstName: string ( Nullable and Optional , defaults to null)

  • lastName: string ( Nullable and Optional , defaults to null)

  • emails: array of string ( Nullable and Optional , defaults to null)

  • phones: array of string ( Nullable and Optional , defaults to null)

  • birthday: string (format: full-date) ( Nullable and Optional )

  • about: string ( Nullable and Optional , defaults to null)

  • messengers: array of string ( Nullable and Optional , defaults to null)

  • links: array of string ( Nullable and Optional , defaults to null)

  • notAMember: boolean ( Nullable and Optional , defaults to null)

  • joined: string (format: full-date) ( Nullable and Optional )

  • left: string (format: full-date) ( Nullable and Optional )

  • leftAt: string (format: date-time) ( Nullable and Optional )

  • speaksEnglish: boolean ( Nullable and Optional , defaults to null)

  • pictureAttachmentId: string ( Nullable and Optional )

  • avatarCropSquare: AvatarCropSquare ( Nullable and Optional )

  • customFieldValues: array of CustomFieldInputValue ( Nullable and Optional , defaults to null)

  • externalId: string ( Nullable and Optional )

Delete profile

delete /api/http/team-directory/profiles/{profile}

Delete a profile

Required permissions: Delete member profile

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Check if profile is team member

get /api/http/team-directory/profiles/{profile}/is-team-member

Check if a user profile is a member of one or more teams

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

teamIds: array of string (Query) ( Required )

Response

boolean

Convert organization member into guest user

patch /api/http/team-directory/profiles/{profile}/convert-to-guest

Convert to guest profile

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • dryrun: boolean ( Required )

  • guestType: GuestType ( Nullable and Optional , defaults to null)

Response

DryRunResult

Convert guest user into organization member

patch /api/http/team-directory/profiles/{profile}/convert-to-member

Convert to organization member

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • dryrun: boolean ( Required )

Response

DryRunResult

Reactivate user profile

patch /api/http/team-directory/profiles/{profile}/reactivate

Reactivate a user profile

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • joined: string (format: full-date) ( Nullable and Optional )

Restore suspended user profile

patch /api/http/team-directory/profiles/{profile}/restore

Restore a suspended user profile

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Suspend user profile

patch /api/http/team-directory/profiles/{profile}/suspend

Suspend a user profile

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • at: string (format: date-time) ( Nullable and Optional , defaults to null)

Deactivate user profile

delete /api/http/team-directory/profiles/{profile}/deactivate

Deactivate a user profile

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

at: string (format: date-time) (Query) ( Required )

Get all authentication sessions

get /api/http/team-directory/profiles/authentication-sessions/{owner}

Get the current authentication sessions for a given profile ID

Required permissions: Manage authentication sessions

Request arguments

owner: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of ES_AuthenticationSession

Terminate own authentication session

delete /api/http/team-directory/profiles/authentication-sessions/{owner}/{sessionId}

Terminate an existing authentication session. Doing so will close the session and log out.

Required permissions: Manage authentication sessions

Request arguments

owner: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

sessionId: string (Path) ( Required )

Response

No arguments

Get dashboard

get /api/http/team-directory/profiles/dashboards/{dashboard}

Request arguments

dashboard: string in one of the formats

(Path) ( Required )

Update dashboard

patch /api/http/team-directory/profiles/dashboards/{dashboard}

Request arguments

dashboard: string in one of the formats

(Path) ( Required )

object with fields:

Response

No arguments

Get oauth consents

get /api/http/team-directory/profiles/oauth-consents/{owner}

Get all OAuth consents for a given profile ID

Request arguments

owner: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of ES_OAuthConsent

Delete application

delete /api/http/team-directory/profiles/oauth-consents/{owner}/applications/{application}

Remove a previously approved application

Request arguments

owner: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

application: string in one of the formats

  • clientId: string

    Specifies application by the client id that it uses to authenticate in Space

    Read more

  • id: string

    Specifies application by the identifier that can be fetched via Get all applications method

  • me

    Specifies application that corresponds to the caller of this API method.

    Applicable only for calls made by Space applications.

(Path) ( Required )

Response

No arguments

Delete approved scope

delete /api/http/team-directory/profiles/oauth-consents/{owner}/approved-scopes/{id}

Remove a previously approved scope

Request arguments

owner: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

id: string (Path) ( Required )

Response

No arguments

Delete internal application

delete /api/http/team-directory/profiles/oauth-consents/{owner}/internal-applications/{clientId}

Remove a previously approved internal application

Request arguments

owner: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

clientId: string (Path) ( Required )

Response

No arguments

Delete refresh token

delete /api/http/team-directory/profiles/oauth-consents/{owner}/refresh-tokens/{id}

Remove a refresh token. This will require the client to re-authenticate.

Request arguments

owner: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

id: string (Path) ( Required )

Response

No arguments

Get widget setting

get /api/http/team-directory/profiles/widget-settings/{widget}

Request arguments

widget: string in one of the formats

(Path) ( Required )

Update widget setting

patch /api/http/team-directory/profiles/widget-settings/{widget}

Request arguments

widget: string in one of the formats

(Path) ( Required )

object with fields:

Response

No arguments

Query all working days

get /api/http/team-directory/profiles/working-days

Returns pairs of profiles and their working days. If several working days settings are defined for the same profile then several pairs are returned.

Required permissions: View working hours

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

profiles: array of ProfileIdentifier (Query) ( Optional , defaults to [])

since: string (format: full-date) (Query) ( Nullable and Optional , defaults to null)

till: string (format: full-date) (Query) ( Nullable and Optional , defaults to null)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of TD_ProfileWorkingDays ( Required )

Two-factor authentication requirements

get /api/http/team-directory/profiles/{profile}/2-fa/requirements

Get two-factor authentication requirements for a given profile ID. The response indicates whether two-factor authentication is required by participation in some permission roles.

Required permissions: View member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of Profile2FARequirement

Two-factor authentication status

get /api/http/team-directory/profiles/{profile}/2-fa/status

Get two-factor authentication status for a given profile ID. The response indicates whether two-factor authentication is active, not active, or not set up yet.

Required permissions: View member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Set up totp two-factor authentication

post /api/http/team-directory/profiles/{profile}/2-fa/totp

Set up two-factor authentication using TOTP ( Time-based One-time Password ) for a given profile ID. The response will return a QR code ( base64 encoded ) that can be scanned with an app to setup two-factor authentication. The code that the app generates has to be confirmed in Space to enable TOTP.

Required permissions: Set up two-factor authentication for yourself and create application passwords

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Update totp two-factor authentication settings

patch /api/http/team-directory/profiles/{profile}/2-fa/totp

Enable/disable two-factor authentication settings for a given profile ID

Required permissions: Manage two-factor authentication and application passwords

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • enabled: boolean ( Required )

  • code: integer (format: int32) ( Nullable and Optional , defaults to null)

Response

No arguments

Delete current totp two-factor authentication settings

delete /api/http/team-directory/profiles/{profile}/2-fa/totp

Remove two-factor authentication settings for a given profile ID. Previously generated TOTP ( Time-based One-time Password ) are rendered invalid.

Required permissions: Manage two-factor authentication and application passwords

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

code: integer (format: int32) (Query) ( Nullable and Optional , defaults to null)

Response

No arguments

Confirm totp two-factor authentication settings

post /api/http/team-directory/profiles/{profile}/2-fa/totp/confirm

Confirm two-factor authentication for a given profile ID using a TOTP ( Time-based One-time Password ) code from an app.

Required permissions: Set up two-factor authentication for yourself and create application passwords

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • code: integer (format: int32) ( Required )

Response

No arguments

Create application password

post /api/http/team-directory/profiles/{profile}/application-passwords

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • name: string ( Required )

  • scope: string ( Required )

Response

object with fields:

Get all application passwords

get /api/http/team-directory/profiles/{profile}/application-passwords

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of ES_ApplicationPassword ( Required )

Update application password

patch /api/http/team-directory/profiles/{profile}/application-passwords/{passwordId}

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

passwordId: string (Path) ( Required )

object with fields:

  • name: string ( Nullable and Optional , defaults to null)

  • scope: string ( Nullable and Optional , defaults to null)

Response

No arguments

Delete application password

delete /api/http/team-directory/profiles/{profile}/application-passwords/{passwordId}

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

passwordId: string (Path) ( Required )

Response

No arguments

Create checklist

post /api/http/team-directory/profiles/{profile}/checklists

Create a new checklist associated with the profile

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • name: string ( Required )

Response

Checklist

Get all checklists

get /api/http/team-directory/profiles/{profile}/checklists

Get all existing checklists associated with the profile

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of Checklist

Import checklist

post /api/http/team-directory/profiles/{profile}/checklists/import

Create a new checklist associated with the profile using tab indented lines as checkable items. The items with the same indent level will be placed one under the other. An issue URL will be converted into the corresponding issue.

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • name: string ( Required )

  • tabIndentedLines: string ( Required )

Response

Checklist

Import checklist lines

post /api/http/team-directory/profiles/{profile}/checklists/{checklistId}/import

Tab indented lines are converted into checkable items following the same rules as in Import Checklist. The result is placed inside of the specified personal checklist.

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

checklistId: string (Path) ( Required )

object with fields:

  • targetParentId: string ( Required )

  • afterItemId: string ( Nullable and Optional , defaults to null)

  • tabIndentedLines: string ( Required )

Response

No arguments

Update checklist

patch /api/http/team-directory/profiles/{profile}/checklists/{checklistId}

Update an existing checklist associated with the profile

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

checklistId: string (Path) ( Required )

object with fields:

  • name: string ( Optional )

  • description: string ( Nullable and Optional )

Response

No arguments

Delete checklist

delete /api/http/team-directory/profiles/{profile}/checklists/{checklistId}

Delete an existing checklist associated with the profile

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

checklistId: string (Path) ( Required )

Response

No arguments

Get all starred checklists

get /api/http/team-directory/profiles/{profile}/checklists/starred

Get all starred checklists associated with the profile

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of Checklist

Get full checklist tree

get /api/http/team-directory/profiles/{profile}/checklists/{checklistId}/full-checklist-tree

Get the content of a checklist associated with the profile

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

checklistId: string (Path) ( Required )

Response

array of PlanItemChildren

Create document

post /api/http/team-directory/profiles/{profile}/documents

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

Response

Document

Get document

get /api/http/team-directory/profiles/{profile}/documents/{documentId}

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

documentId: string (Path) ( Required )

Response

Document

Update document

patch /api/http/team-directory/profiles/{profile}/documents/{documentId}

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

documentId: string (Path) ( Required )

object with fields:

Response

Document

Archive document

delete /api/http/team-directory/profiles/{profile}/documents/{documentId}

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

documentId: string (Path) ( Required )

Response

No arguments

Create folder

post /api/http/team-directory/profiles/{profile}/documents/folders

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

Get folder

get /api/http/team-directory/profiles/{profile}/documents/folders/{folder}

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

Rename folder

patch /api/http/team-directory/profiles/{profile}/documents/folders/{folder}

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

object with fields:

  • name: string ( Required )

Response

No arguments

Archive folder

delete /api/http/team-directory/profiles/{profile}/documents/folders/{folder}

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

Response

No arguments

Folder own access permissions

get /api/http/team-directory/profiles/{profile}/documents/folders/{folder}/access

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

Response

FolderAccess

Update folder access permissions

patch /api/http/team-directory/profiles/{profile}/documents/folders/{folder}/access

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

object with fields:

Response

No arguments

List documents in folder

get /api/http/team-directory/profiles/{profile}/documents/folders/{folder}/documents

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

withArchived: boolean (Query) ( Optional , defaults to false)

sortBy: string (Query) ( Nullable and Optional , defaults to null)

order: ColumnSortOrder (Query) ( Nullable and Optional , defaults to null)

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of Document ( Required )

Add folder introduction

patch /api/http/team-directory/profiles/{profile}/documents/folders/{folder}/introduction/{documentId}

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

documentId: string (Path) ( Required )

Response

No arguments

Remove folder introduction

delete /api/http/team-directory/profiles/{profile}/documents/folders/{folder}/introduction

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

Response

No arguments

Move folder

patch /api/http/team-directory/profiles/{profile}/documents/folders/{folder}/move

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

object with fields:

Search documents and folders

get /api/http/team-directory/profiles/{profile}/documents/folders/{folder}/search

Executes search for personal documents and folders in specified folder

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

query: string (Query) ( Required )

includeBody: boolean (Query) ( Nullable and Optional , defaults to null)

foldersOnly: boolean (Query) ( Nullable and Optional , defaults to false)

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of DocumentFolderItem ( Required )

List subfolders

get /api/http/team-directory/profiles/{profile}/documents/folders/{folder}/subfolders

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

folder: string in one of the formats

  • id: string

  • root

  • sharedWithMe

(Path) ( Required )

withArchived: boolean (Query) ( Optional , defaults to false)

sortBy: string (Query) ( Nullable and Optional , defaults to null)

order: ColumnSortOrder (Query) ( Nullable and Optional , defaults to null)

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of DocumentFolder ( Required )

Document own access permissions

get /api/http/team-directory/profiles/{profile}/documents/{documentId}/access

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

documentId: string (Path) ( Required )

Update document access permissions

patch /api/http/team-directory/profiles/{profile}/documents/{documentId}/access

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

documentId: string (Path) ( Required )

object with fields:

Response

No arguments

Copy document

post /api/http/team-directory/profiles/{profile}/documents/{documentId}/copy

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

documentId: string (Path) ( Required )

object with fields:

Response

Document

Move document

patch /api/http/team-directory/profiles/{profile}/documents/{documentId}/move

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

documentId: string (Path) ( Required )

object with fields:

Response

Document

Unarchive document

patch /api/http/team-directory/profiles/{profile}/documents/{documentId}/unarchive

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

documentId: string (Path) ( Required )

Response

Document

Add public gpg key

post /api/http/team-directory/profiles/{profile}/gpg-keys

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • key: string ( Required )

  • comment: string ( Optional , defaults to "")

Response

GpgKeyData

List public gpg keys

get /api/http/team-directory/profiles/{profile}/gpg-keys

List GPG public keys associated with a profile

Required permissions:

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of GpgKeyData

Revoke public gpg key

patch /api/http/team-directory/profiles/{profile}/gpg-keys/{fingerprint}

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

fingerprint: string (Path) ( Required )

object with fields:

  • comment: string ( Optional , defaults to "")

Response

No arguments

Delete public gpg key

delete /api/http/team-directory/profiles/{profile}/gpg-keys/{fingerprint}

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

fingerprint: string (Path) ( Required )

Response

No arguments

Get all leads

get /api/http/team-directory/profiles/{profile}/leads

Get team leads for a given profile ID

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of TD_MemberProfile

Get all nav bar menu items

get /api/http/team-directory/profiles/{profile}/nav-bar-menu-items

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of NavBarMenuItem

Update nav bar menu item

patch /api/http/team-directory/profiles/{profile}/nav-bar-menu-items

Toggle visibility for a given navigation bar item

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • item: string ( Required )

  • enabled: boolean ( Required )

Response

No arguments

Create nav bar project

post /api/http/team-directory/profiles/{profile}/nav-bar-projects

Add a project to the navigation bar

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

Response

No arguments

Get all nav bar projects

get /api/http/team-directory/profiles/{profile}/nav-bar-projects

Add a project to the navigation bar

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of PR_Project

Delete nav bar project

delete /api/http/team-directory/profiles/{profile}/nav-bar-projects/{project}

Remove a project from the navigation bar

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

project: string in one of the formats

  • id: string

  • key: string

(Path) ( Required )

Response

No arguments

Get space global notification settings for a profile

get /api/http/team-directory/profiles/{profile}/notification-settings

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Set space global notification settings for a profile

patch /api/http/team-directory/profiles/{profile}/notification-settings

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • emailNotificationsEnabled: boolean ( Nullable and Optional , defaults to null)

  • notificationEmail: string ( Nullable and Optional )

  • pushNotificationEnabled: boolean ( Nullable and Optional , defaults to null)

  • desktopInactivityTimeout: integer (format: int32) ( Nullable and Optional )

Response

No arguments

Create permanent token

post /api/http/team-directory/profiles/{profile}/permanent-tokens

Create a personal token for the given profile that can be used to access the current organization

Required permissions: Create permanent tokens for yourself

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • name: string ( Required )

  • scope: string ( Required )

  • expires: string (format: date-time) ( Nullable and Optional , defaults to null)

Response

object with fields:

Get all permanent tokens

get /api/http/team-directory/profiles/{profile}/permanent-tokens

Get personal tokens used to access the current organization for the given profile

Required permissions: Manage permanent tokens

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of ES_PersonalToken ( Required )

Update permanent token

patch /api/http/team-directory/profiles/{profile}/permanent-tokens/{tokenId}

Update an existing personal token used to access the current organization. The name and/or scope of the personal token can be updated.

Required permissions: Manage permanent tokens

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

tokenId: string (Path) ( Required )

object with fields:

  • name: string ( Nullable and Optional , defaults to null)

  • scope: string ( Nullable and Optional , defaults to null)

  • expires: string (format: date-time) ( Nullable and Optional )

Response

No arguments

Delete permanent token

delete /api/http/team-directory/profiles/{profile}/permanent-tokens/{tokenId}

Delete a specific personal token used to access the current organization

Required permissions: Manage permanent tokens

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

tokenId: string (Path) ( Required )

Response

No arguments

Delete current permanent token

delete /api/http/team-directory/profiles/{profile}/permanent-tokens/current

Delete personal token of the given profile

Required permissions:

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

No arguments

Get space personalization data for a profile

get /api/http/team-directory/profiles/{profile}/settings

This endpoint will return profile information and Space personalisation data such as projects in the navigation bar, etc.

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Set space personalization data for a profile

patch /api/http/team-directory/profiles/{profile}/settings

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • darkTheme: DarkTheme ( Nullable and Optional )

  • themeName: string ( Nullable and Optional )

  • firstDayOfWeek: Weekday ( Nullable and Optional , defaults to null)

  • draftType: DraftDocumentType ( Nullable and Optional , defaults to null)

  • typographySettings: TypographySettings ( Nullable and Optional , defaults to null)

  • todoFilters: boolean ( Nullable and Optional , defaults to null)

  • calendarView: string ( Nullable and Optional )

  • emailNotificationsEnabled: boolean ( Nullable and Optional , defaults to null)

  • notificationEmail: string ( Nullable and Optional )

  • preferredLanguage: string ( Nullable and Optional )

  • defaultProject: ProjectIdentifier ( Nullable and Optional )

Response

No arguments

Create spoken language

post /api/http/team-directory/profiles/{profile}/spoken-languages

Update spoken language for a profile. Optionally, firstName and lastName can be specified to add a localized name to the profile.

Required permissions: Update languages

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • language: string ( Required )

  • firstName: string ( Nullable and Optional , defaults to null)

  • lastName: string ( Nullable and Optional , defaults to null)

Get all spoken languages

get /api/http/team-directory/profiles/{profile}/spoken-languages

Get spoken language of a profile

Required permissions: View member locations

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of TD_ProfileLanguage

Delete spoken language

delete /api/http/team-directory/profiles/{profile}/spoken-languages/{language}

Delete spoken language for a profile

Required permissions: Update languages

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

language: string (Path) ( Required )

Response

No arguments

Associate ssh key with profile

post /api/http/team-directory/profiles/{profile}/ssh-keys

Associate an SSH public key with the profile

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • key: string ( Required )

  • comment: string ( Optional , defaults to "")

Response

No arguments

Get all ssh keys

get /api/http/team-directory/profiles/{profile}/ssh-keys

List SSH public keys associated with the profile

Required permissions:

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

array of SshKeyData

Remove association between ssh key and profile

delete /api/http/team-directory/profiles/{profile}/ssh-keys/{fingerprint}

Remove association between the profile and the SSH public key

Required permissions: Update member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

fingerprint: string (Path) ( Required )

Response

No arguments

Get timezone

get /api/http/team-directory/profiles/{profile}/timezone

Get profile timezone. Returns profile ' s working hours timezone, location timezone or device timezone, whichever is present first in this list.

Required permissions: View member profiles

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

Response

ATimeZone

Add working days

post /api/http/team-directory/profiles/{profile}/working-days

Required permissions: Update working hours

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

object with fields:

  • dateStart: string (format: full-date) ( Nullable and Optional , defaults to null)

  • dateEnd: string (format: full-date) ( Nullable and Optional , defaults to null)

  • workingDaysSpec: WorkingDaysSpec ( Required )

Query working days for a profile

get /api/http/team-directory/profiles/{profile}/working-days

Required permissions: View working hours

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of TD_WorkingDays ( Required )

Update working days

patch /api/http/team-directory/profiles/{profile}/working-days/{workingDaysId}

Required permissions: Update working hours

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

workingDaysId: string (Path) ( Required )

object with fields:

  • dateStart: string (format: full-date) ( Nullable and Optional )

  • dateEnd: string (format: full-date) ( Nullable and Optional )

  • workingDaysSpec: WorkingDaysSpec ( Required )

Delete working days

delete /api/http/team-directory/profiles/{profile}/working-days/{workingDaysId}

Required permissions: Update working hours

Request arguments

profile: string in one of the formats

  • externalId: string

  • id: string

  • me

  • username: string

(Path) ( Required )

workingDaysId: string (Path) ( Required )

Response

No arguments

Create role

post /api/http/team-directory/roles

Create a role

Required permissions: Update positions

Request arguments

object with fields:

  • name: string ( Required )

  • parentId: string ( Nullable and Optional , defaults to null)

Response

TD_Role

Get all roles

get /api/http/team-directory/roles

Get/search all roles. Parameters are applied as ' AND ' filters.

Required permissions: View positions

Request arguments

query: string (Query) ( Optional , defaults to "")

withArchived: boolean (Query) ( Optional , defaults to false)

Response

array of TD_Role

Restore role

post /api/http/team-directory/roles/{id}/restore

Restore an archived role

Required permissions: Update positions

Request arguments

id: string (Path) ( Required )

Response

TD_Role

Get role

get /api/http/team-directory/roles/{id}

Get a role by ID

Required permissions: View positions

Request arguments

id: string (Path) ( Required )

Response

TD_Role

Update role

patch /api/http/team-directory/roles/{id}

Update a role. Optional parameters will be ignored when null and updated otherwise.

Required permissions: Update positions

Request arguments

id: string (Path) ( Required )

object with fields:

  • name: string ( Nullable and Optional , defaults to null)

  • parentId: string ( Nullable and Optional )

Response

TD_Role

Archive role

delete /api/http/team-directory/roles/{id}

Archive a role

Required permissions: Update positions

Request arguments

id: string (Path) ( Required )

Response

No arguments

Get all stats

get /api/http/team-directory/stats

Get statistics of total members, as well as members per location, role, and team. Parameters are applied as ' AND ' filters.

Required permissions: View teams, View locations, View positions

Request arguments

teamId: string (Query) ( Nullable and Optional , defaults to null)

locationId: string (Query) ( Nullable and Optional , defaults to null)

roleId: string (Query) ( Nullable and Optional , defaults to null)

Response

TD_Stats

Create team

post /api/http/team-directory/teams

Create a new team

Required permissions: Update teams

Request arguments

object with fields:

  • name: string ( Required )

  • description: string ( Nullable and Optional , defaults to null)

  • emails: array of string ( Nullable and Optional , defaults to null)

  • parentId: string ( Nullable and Optional , defaults to null)

  • defaultManager: string ( Nullable and Optional , defaults to null)

  • customFieldValues: array of CustomFieldInputValue ( Nullable and Optional , defaults to null)

  • externalId: string ( Nullable and Optional , defaults to null)

Response

TD_Team

Get all teams

get /api/http/team-directory/teams

Get or search all teams. Parameters are applied as ' AND ' filters.

Required permissions: View teams

Request arguments

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

query: string (Query) ( Optional , defaults to "")

withArchived: boolean (Query) ( Optional , defaults to false)

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of TD_Team ( Required )

Cancel team disbanding

post /api/http/team-directory/teams/{id}/cancel-disbanding

Cancel disbanding a team and restore its members

Required permissions: Update teams

Request arguments

id: string (Path) ( Required )

Response

No arguments

Restore team

post /api/http/team-directory/teams/{id}/restore

Restore an archived team

Required permissions: Update teams

Request arguments

id: string (Path) ( Required )

Response

TD_Team

Get sync batch

get /api/http/team-directory/teams/sync-batch

Get teams for synchronization with third-party system. Teams with etag greater than specified value are returned. Read more in the documentation.

Required permissions: View teams

Request arguments

batchInfo: string in one of the formats

  • { etag: string , batchSize: integer (format: int32) }

(Query) ( Required )

Response

object with fields:

  • etag: string ( Required )

  • data: array of TD_Team ( Required )

  • hasMore: boolean ( Required )

Get team

get /api/http/team-directory/teams/{id}

Get a team by ID

Required permissions: View teams

Request arguments

id: string in one of the formats

  • externalId: string

  • id: string

  • name: string

(Path) ( Required )

Response

TD_Team

Update team

patch /api/http/team-directory/teams/{id}

Update a team

Required permissions: Update teams

Request arguments

id: string (Path) ( Required )

object with fields:

  • name: string ( Optional )

  • description: string ( Nullable and Optional )

  • emails: array of string ( Nullable and Optional , defaults to null)

  • parentId: string ( Nullable and Optional )

  • defaultManager: string ( Nullable and Optional )

  • customFieldValues: array of CustomFieldInputValue ( Nullable and Optional , defaults to null)

  • externalId: string ( Nullable and Optional )

Response

TD_Team

Archive team

delete /api/http/team-directory/teams/{id}

Archive a team

Required permissions: Update teams

Request arguments

id: string (Path) ( Required )

Response

array of TD_Team

Disband team

delete /api/http/team-directory/teams/{id}/disband

Disband a team

Required permissions: Update teams

Request arguments

id: string (Path) ( Required )

Response

array of TD_Team

Get all direct members

get /api/http/team-directory/teams/{id}/direct-members

Get or search direct members of a given team

Request arguments

id: string (Path) ( Required )

$skip: string (Query) ( Nullable and Optional , defaults to null)

$top: integer (format: int32) (Query) ( Nullable and Optional , defaults to 100)

query: string (Query) ( Optional , defaults to "")

Response

object with fields:

  • next: string ( Required )

  • totalCount: integer (format: int32) ( Nullable and Optional , defaults to null)

  • data: array of TD_MemberProfile ( Required )

Last modified: 06 September 2023