OpenAPI Documentation
Automatically generate OpenAPI v3.0 documentation for your APIs with Swagger UI support
OpenAPI v3.0 Documentation Generation
WebApp 2.0.1 includes automatic OpenAPI v3.0 documentation generation, making it easy to document and test your APIs with tools like Swagger UI.
Overview
The OpenAPI documentation generator automatically creates comprehensive API documentation by analyzing your routes, controllers, and data models. This facilitates:
- Interactive API Testing: Use Swagger UI for testing endpoints
- Developer Experience: Clear documentation for API consumers
- API Specification: Standard OpenAPI 3.0 compliant documentation
- Code Generation: Enable client SDK generation from the spec
Features
Automatic Documentation Generation
- Scans your routes and controllers automatically
- Generates OpenAPI 3.0 compliant specifications
- Includes request/response schemas
- Documents authentication requirements
Swagger UI Integration
- Built-in Swagger UI for interactive testing
- Customizable documentation interface
- Real-time API testing capabilities
Schema Generation
- Automatic schema generation from Dart models
- Support for complex nested objects
- Validation rule documentation
Getting Started
Basic Setup
Accessing Documentation
Once enabled, your OpenAPI documentation will be available at:
- JSON Spec:
http://localhost:8085/openapi.json
- YAML Spec:
http://localhost:8085/openapi.yaml
- Swagger UI:
http://localhost:8085/docs
Documenting Controllers
Use annotations to enhance your API documentation:
Basic Controller Documentation
Route Parameters Documentation
Model Documentation
Document your data models for automatic schema generation:
Basic Model
Nested Models
Authentication Documentation
Document your authentication schemes:
Bearer Token Authentication
API Key Authentication
Controller-Level Security
Advanced Configuration
Custom Swagger UI
Response Examples
Error Response Documentation
Validation Integration
Integrate with form validators for automatic validation documentation:
Generating Client SDKs
Use the generated OpenAPI specification to create client SDKs:
Using OpenAPI Generator
Best Practices
Documentation Guidelines
- Comprehensive Descriptions: Provide clear, detailed descriptions for all operations
- Realistic Examples: Use realistic data in examples
- Error Documentation: Document all possible error responses
- Consistent Naming: Use consistent naming conventions
- Version Management: Keep API versions documented
Schema Design
- Reusable Components: Create reusable schema components
- Validation Rules: Include validation constraints in schemas
- Nested Objects: Properly structure nested object relationships
- Enum Documentation: Document all possible enum values
Security Documentation
- Authentication Methods: Clearly document all authentication methods
- Authorization Scopes: Define and document permission scopes
- Rate Limiting: Document rate limiting policies
- CORS Configuration: Document CORS settings
Troubleshooting
Common Issues
Missing Documentation
Schema Generation Errors
Authentication Issues
Next Steps
- Learn about Form Validation for request validation
- Explore API Integration for external API consumption
- Check out Controllers for organizing API logic
- Review Authentication for securing your APIs