Skip to Content
SDKEntitiesProjects

Projects

Projects represent the top-level organizational unit in Rhesis. They contain test sets, endpoints, and other resources for testing and evaluating AI applications.

Properties

PropertyTypeDescription
idstrUnique identifier
namestrDisplay name
descriptionstrProject description
is_activeboolWhether the project is active
iconstrIcon identifier for the project
status_idstrAssociated status ID
user_idstrUser who created the project
owner_idstrProject owner ID
organization_idstrOrganization this project belongs to

Fetching Projects

fetch_projects.py
from rhesis.sdk.entities import Projects

# List all projects
for project in Projects.all():
    print(f"{project.name}: {project.description}")

# Get by ID
project = Projects.pull(id="project-123")

# Get by name (case-insensitive)
project = Projects.pull(name="My AI App")

Filtering Projects

Use OData filter syntax to query specific projects:

filter_projects.py
from rhesis.sdk.entities import Projects

# Get active projects only
active_projects = Projects.all(filter="is_active eq true")

# Filter by name pattern
safety_projects = Projects.all(filter="contains(tolower(name), 'safety')")

Creating Projects

create_project.py
from rhesis.sdk.entities import Project

project = Project(
    name="Customer Support Bot",
    description="Testing suite for our customer service chatbot",
    is_active=True,
)

project.push()
print(f"Created project: {project.id}")

Updating Projects

update_project.py
from rhesis.sdk.entities import Projects

# Fetch existing project
project = Projects.pull(name="Customer Support Bot")

# Modify and save
project.description = "Updated testing suite for customer service v2"
project.push()

Checking Existence

check_project.py
from rhesis.sdk.entities import Projects

if Projects.exists("project-123"):
    project = Projects.pull(id="project-123")
    print(f"Found: {project.name}")
else:
    print("Project not found")

Deleting Projects

delete_project.py
from rhesis.sdk.entities import Projects

project = Projects.pull(name="Deprecated Project")
deleted = project.delete()

if deleted:
    print("Project removed")

Next Steps