Projects
Projects in Kinesis API serve as the primary organizational units that group related collections, structures, and routes. They provide logical separation between different API initiatives and help maintain clear boundaries for access control and resource management.
Accessing Projects
The Projects page can be accessed by navigating to /web/projects
in your browser after logging in.
Projects Visibility
The visibility of projects depends on your user role:
- ROOT Users: Can see all projects created within the Kinesis API instance
- All Other Users: Can only see projects they are members of
This role-based visibility ensures that users only have access to projects relevant to their work.
Project List Interface
The Projects interface includes:
- A filterable, paginated list of projects
- Project cards showing key information
- Action buttons for various operations
- A creation button for ROOT and ADMIN users
Each project card displays:
- Project name
- Project ID
- Description
- API path
- Number of members
Creating a New Project
ROOT and ADMIN users can create new projects:
- Click the "Create a new project" button
- Fill in the required information:
- Name: A human-readable name for the project
- ID: A unique identifier (used in URLs and API paths)
- Description: A brief explanation of the project's purpose
- API Path: The base path for all API routes in this project
Project ID Requirements
Project IDs must:
- Be unique across the Kinesis API instance
- Contain only lowercase letters, numbers, and underscores
- Start with a letter
- Be between 3 and 50 characters long
API Path Conventions
API paths should:
- Start with a forward slash (
/
) - Follow RESTful conventions
- Be unique across all projects
- Reflect the project's purpose
Example: /api/v1/inventory
for an inventory management project
Project Member Management
Projects use member-based access control. Only users who are members of a project can access its resources.
Viewing Project Members
To view the members of a project:
- Click the "View Members" button (user icon) on the project card
- A modal will display all users who have access to the project
Adding Project Members
ROOT and ADMIN users can add members to a project:
- Click the "Add Member" button (plus user icon)
- Select users from the list to add them to the project
- Click the add icon next to each user you want to add
Removing Project Members
ROOT and ADMIN users can remove members from a project:
- Click the "Remove Member" button (user with x icon)
- Select users from the list to remove them from the project
- Click the remove icon next to each user you want to remove
Accessing a Project
To view or manage a specific project:
- Click on the project name or use the "View Project" button
- You'll be taken to the project detail page (
/web/project?id=[project_id]
)
The project detail page provides access to all collections within that project. Most operations described above (such as managing members and deleting the project) can also be performed directly from this page.
Project Page Capabilities
From the project detail page, you can:
- View and edit the project's information (name, description, API path)
- Manage project members (add or remove users)
- Delete the project entirely
- View and interact with all collections belonging to the project
- Create new collections directly from this interface
- Access collections to manage their data and structures
The centralized project interface makes it convenient to perform all project-related operations without returning to the main projects list, streamlining your workflow when working within a specific project context.
Deleting Projects
ROOT and ADMIN users can delete projects:
- Click the "Delete Project" button (trash icon) on the project card
- Confirm the deletion in the modal that appears
⚠️ Warning: Deleting a project permanently removes all collections, structures, data, and routes associated with it. This action cannot be undone.
Filtering Projects
To find specific projects:
- Use the filter input at the top of the project list
- Type any part of the project name, ID, description, or API path
- The list will automatically filter to show matching projects
Pagination
For systems with many projects:
- Navigate between pages using the pagination controls
- The page displays up to 8 projects at a time
Project Lifecycle
Projects typically follow this lifecycle:
- Creation: A ROOT or ADMIN user creates the project
- Configuration: Collections and structures are defined
- Development: API routes are created using the X Engine
- Maintenance: The project evolves with new features and updates
- Retirement: When no longer needed, the project is deleted
Related Documentation
- Collections - Manage data collections within projects
- Structures - Define data structures for collections
- Data - Work with data stored in collections
- Routes - Create API endpoints for project resources