ExBifrost.Api.Teams (ex_bifrost v0.1.0)

Copy Markdown View Source

API calls for all endpoints tagged Teams.

Summary

Functions

Add team member Adds a user to a team. Both the team and user must exist.

Create team Creates a new team. The team ID is derived from the name.

Delete team Permanently removes a team.

Get team Returns details of a specific team including member count.

List team members Returns all members of a team with their user details and membership source.

List teams Returns a paginated list of teams with optional search.

Remove team member Removes a user from a team.

Update team Updates a team. Note that renaming teams is not allowed.

Functions

add_team_member(connection, id, add_team_member_request, opts \\ [])

Add team member Adds a user to a team. Both the team and user must exist.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • id (String.t): Team ID
  • add_team_member_request (AddTeamMemberRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.MessageResponse.t} on success
  • {:error, Tesla.Env.t} on failure

create_team(connection, create_team_request, opts \\ [])

Create team Creates a new team. The team ID is derived from the name.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • create_team_request (CreateTeamRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.CreateTeam200Response.t} on success
  • {:error, Tesla.Env.t} on failure

delete_team(connection, id, opts \\ [])

Delete team Permanently removes a team.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • id (String.t): Team ID
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.MessageResponse.t} on success
  • {:error, Tesla.Env.t} on failure

get_team(connection, id, opts \\ [])

Get team Returns details of a specific team including member count.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • id (String.t): Team ID
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.ListTeams200ResponseTeamsInner.t} on success
  • {:error, Tesla.Env.t} on failure

get_team_members(connection, id, opts \\ [])

List team members Returns all members of a team with their user details and membership source.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • id (String.t): Team ID
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.GetTeamMembers200Response.t} on success
  • {:error, Tesla.Env.t} on failure

list_teams(connection, opts \\ [])

@spec list_teams(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, ExBifrost.Model.BifrostError.t()}
  | {:ok, ExBifrost.Model.ListTeams200Response.t()}
  | {:error, Tesla.Env.t()}

List teams Returns a paginated list of teams with optional search.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :page (integer()): Page number (1-based)
    • :limit (integer()): Number of teams per page (max 100)
    • :search (String.t): Search by team name

Returns

  • {:ok, ExBifrost.Model.ListTeams200Response.t} on success
  • {:error, Tesla.Env.t} on failure

remove_team_member(connection, id, user_id, opts \\ [])

Remove team member Removes a user from a team.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • id (String.t): Team ID
  • user_id (String.t): User ID to remove
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.MessageResponse.t} on success
  • {:error, Tesla.Env.t} on failure

update_team(connection, id, update_team_request, opts \\ [])

Update team Updates a team. Note that renaming teams is not allowed.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • id (String.t): Team ID
  • update_team_request (UpdateTeamRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.CreateTeam200Response.t} on success
  • {:error, Tesla.Env.t} on failure