Overview
A project houses the resources you create within it: Inputs, Collections, and Queries. An organization can have many projects, but a default project is created for you when onboarding. Projects allow you to restrict access to resources across users, and to keep different project data separate.Access Control
Projects serve as the primary access control mechanism:- org_admin users: Access all projects automatically
- client users: Access only explicitly assigned projects
- Resources isolation: Users can only see resources in accessible projects
- Shared ownership: Resources in a project are accessible to all Users in the project
Default Project
Every Organization has a default Project where resources are created when noOnDeck-Project header is specified.
To specify which Project a resource belongs to, include the project_id in a custom HTTP header in requests:
Cross-Project Access
Resources can only be used within their assigned project. Queries live in the same project as the Input or Collection it is created with. Inputs can only be added to Collections in the same project. This prevents users in a Project from being exposed to resources or derivatives from other Projects.Pagination and Filtering
When listing Projects, the API returns paginated results with support for filtering and sorting.Deletion
Projects in an Organization can only be deleted by Users with the roleorg_admin. Projects can only be deleted if they are empty.
This means to delete a non-empty Project, you must first delete all Inputs and Collections in the Project.
Related Endpoints
List Projects
View all accessible projects
Create Project
Create new project
Get Project Details
Retrieve specific project information
Manage Users
Learn about user-project access control
Delete Project
Delete a Project