projects

Client API for projects in Nexus.

qnexus.client.projects.add_property(
name: str,
property_type: Literal['bool', 'int', 'float', 'string'],
project: ProjectRef | None = None,
description: str | None = None,
required: bool = False,
) None

Add a property definition to a project.

qnexus.client.projects.create(
name: str,
description: str | None = None,
properties: OrderedDict[str, bool | int | float | str] | None = None,
) ProjectRef

Create a new project in Nexus.

qnexus.client.projects.delete(
project: ProjectRef,
) None

Delete a project and all associated data in Nexus. Project must be archived first. WARNING: this will delete all data associated with the project.

qnexus.client.projects.get(
*,
id: str | UUID | None = None,
name_like: str | None = None,
creator_email: list[str] | None = None,
created_before: datetime | None = None,
created_after: datetime | None = datetime.datetime(2023, 1, 1, 0, 0),
modified_before: datetime | None = None,
modified_after: datetime | None = None,
is_archived: bool = False,
sort_filters: list[SortFilterEnum] | None = None,
page_number: int | None = None,
page_size: int | None = None,
) ProjectRef

Get a single project using filters. Throws an exception if the filters do not match exactly one object.

qnexus.client.projects.get_all(
name_like: str | None = None,
creator_email: list[str] | None = None,
created_before: datetime | None = None,
created_after: datetime | None = datetime.datetime(2023, 1, 1, 0, 0),
modified_before: datetime | None = None,
modified_after: datetime | None = None,
is_archived: bool = False,
sort_filters: list[SortFilterEnum] | None = None,
page_number: int | None = None,
page_size: int | None = None,
) NexusIterator[ProjectRef]

Get a NexusIterator over projects with optional filters.

qnexus.client.projects.get_or_create(
name: str,
description: str | None = None,
properties: OrderedDict[str, bool | int | float | str] | None = None,
) ProjectRef

Get a project reference if the projects exists (by name), otherwise create a new project using the supplied description and properties.

qnexus.client.projects.get_properties(
project: ProjectRef | None = None,
) DataframableList[Property]

Get the property definitions for the Project.

qnexus.client.projects.summarize(
project: ProjectRef | None = None,
) DataFrame

Summarize the current state of a project.

qnexus.client.projects.update(
project: ProjectRef,
name: str | None = None,
description: str | None = None,
archive: bool = False,
) ProjectRef

Update the details of a project.

class qnexus.projects.ProjectRef(
*,
id: UUID,
annotations: Annotations,
contents_modified: datetime,
archived: bool = False,
type: Literal['ProjectRef'] = 'ProjectRef',
)

Proxy object to a Project in Nexus.

df() DataFrame

Present in a pandas DataFrame.

class qnexus.projects.Property(
*,
annotations: Annotations,
property_type: str,
required: bool,
color: str,
id: UUID,
)

A property definition.

df() DataFrame

Convert to a pandas DataFrame.