Python SDKManagement API
Project Members
Fetch all unique members across every team in a project with get_all_members, optionally including their team memberships.
project.get_all_members() returns every unique user who is a member of at least one team
in the project. It deduplicates across teams, so each user appears exactly once even if they
belong to multiple teams.
Basic usage
from optixlog import SDKClient
from optixlog.management import Management
client = SDKClient(base_url="https://optixlog.leidos.com", api_key="sk-opt-...")
mgmt = Management(client)
project = mgmt.project("proj_grating_7f3a")
page = project.get_all_members()
for member in page.items:
print(member.user_ref.id, member.user_ref.name)Including team memberships
Pass include_memberships=True to populate each member's .memberships list. This shows
which teams the user belongs to and with what role.
page = project.get_all_members(include_memberships=True)
for member in page.items:
print(f"User: {member.user_ref.name}")
for m in (member.memberships or []):
print(f" Team: {m.team_ref.name} Role: {m.role}")Pagination and ordering
# Page through with cursor
first_page = project.get_all_members(limit=50, order_by="email", order="asc")
if first_page.next_cursor:
second_page = project.get_all_members(
limit=50,
cursor=first_page.next_cursor,
order_by="email",
order="asc",
)Valid order_by values: name, email, created_at, updated_at. Default is name ascending.
Parameters
Prop
Type
ProjectMember fields
Prop
Type
EntityRef
EntityRef carries three fields: type (always "user" here), id, and name (the
user's display name, when available). See the
Data Models reference.