Overview
Projects are the top-level organizational unit in Mimir AIP. Each project groups all related resources for a specific use case or domain, providing isolation and management for:- Pipelines: Data ingestion and processing workflows
- Ontologies: Domain vocabulary and entity definitions
- ML Models: Machine learning models for predictions
- Digital Twins: Real-time entity graphs and simulations
- Storage Configs: Backend connections for data persistence
- Schedules: Recurring pipeline execution triggers
Projects are fully isolated. Resources in one project cannot directly reference resources in another project.
Project Structure
pkg/models/project.go:15
Creating a Project
- curl
- Response
Validation Rules
Project Name
Project Name
- Pattern:
^[a-zA-Z0-9_-]{3,50}$ - Must be 3-50 characters
- Alphanumeric, hyphens, and underscores only
- Must be unique across non-archived projects
pkg/project/service.go:15
Version
Version
- Pattern:
^\d+\.\d+\.\d+$ - Must follow semantic versioning (e.g., “1.0.0”)
- Defaults to “1.0.0” if not provided
pkg/project/service.go:16
Status
Status
Valid status values:
active— Project is operational (default)draft— Project is being configuredarchived— Read-only, hidden from listings
Listing Projects
| Parameter | Type | Description |
|---|---|---|
status | string | Filter by project status |
limit | integer | Number of results to return |
offset | integer | Number of results to skip |
Updating a Project
- curl
- Response
Only provided fields are updated. Omitted fields remain unchanged.
Cloning a Project
Create a copy of an existing project with a new name. The clone includes all settings and tags, but components are empty.- New unique ID assigned
- Description appended with ” (cloned)”
- Version reset to “1.0.0”
- Status set to
draft - All component arrays empty
- Settings and tags copied from original
pkg/project/service.go:214
Managing Components
Associate resources with a project using the component management endpoints.Add Pipeline
Add Pipeline
project_id, but can also be manually linked.Remove Pipeline
Remove Pipeline
Other Component Types
Other Component Types
The same pattern applies for:
- Ontologies:
/ontologies/:id - ML Models:
/ml-models/:id - Digital Twins:
/digital-twins/:id - Storage Configs:
/storage/:id
pkg/project/service.go:242
Deleting a Project
Deleting a project performs a soft delete by marking it as archived.pkg/project/service.go:177
Project Settings
Timezone
Controls timestamp display and schedule execution. Defaults to
"UTC".Environment
Deployment context label. Defaults to
"development".Best Practices
Naming Convention
Naming Convention
Use descriptive, kebab-case names:
customer-analyticssupply-chain-optimizationiot-sensor-monitoring
project1 or test.Version Management
Version Management
Increment versions when making significant changes:
- Patch (1.0.1): Bug fixes, minor updates
- Minor (1.1.0): New features, backwards compatible
- Major (2.0.0): Breaking changes
Tags
Tags
Status Transitions
Status Transitions
Recommended workflow:
- Create as
draftwhile configuring - Activate when ready:
active - Archive when no longer needed:
archived
Example: Complete Project Setup
Next Steps
Pipelines
Create data ingestion and processing workflows.
Ontologies
Define your domain vocabulary and entity types.
Storage
Configure storage backends for your data.