Fusioncat is currently in its alpha stage. The main API server is located at:
https://api.staging.fusioncatalyst.io/Please note that breaking changes and bugs are to be expected, as the product is still under active development.
Schema Management Commands
Thepaw schemas
commands allow you to create, update, and manage schemas with full versioning support.
Commands
schemas list
List all schemas in a project.Options
--project-id
(required): The ID of the project
Examples
schemas new
Create a new schema.Options
--project-id
(required): The ID of the project--name
(required): Name of the schema--type
(required): Type of the schema (e.g.,jsonschema
)--schema-file
(required): Path to the schema definition file--description
: Description of the schema
Examples
schemas update
Update an existing schema (creates a new version).Options
--schema-id
(required): The ID of the schema to update--schema-file
(required): Path to the updated schema definition
Examples
schemas versions
List all versions of a schema.Options
--schema-id
(required): The ID of the schema
Examples
schemas get-version
Get a specific version of a schema.Options
--schema-id
(required): The ID of the schema--version-id
(required): The version ID of the schema
Examples
Schema Types
JSON Schema
The most common schema type. Define your data structures using JSON Schema specification. Exampleuser.json
:
Schema Versioning
How Versioning Works
- Immutable Versions: Each schema version is immutable once created
- Automatic Versioning: Updates create new versions automatically
- Version History: Full history is maintained for auditing
- App Independence: Different apps can use different versions
Version Management
Best Practices
Schema Design
- Start Simple: Begin with core fields, add complexity gradually
- Use Standard Formats: Leverage format validators (email, uuid, date-time)
- Document Fields: Use descriptions in your schemas
- Required Fields: Only mark truly required fields as required
Versioning Strategy
- Backward Compatibility: Try to maintain compatibility when possible
- Semantic Versioning: Use clear version numbering
- Migration Path: Document changes between versions
- Deprecation: Mark old fields as deprecated before removal
Schema Organization
Examples
Evolution of a Schema
Complex Schema Example
Related Commands
- Messages - Create messages based on schemas
- Code Generation - Generate code from schemas
- Projects - Manage projects containing schemas