- route definition
- Url: /api/v1/migrate/down
- Method: POST
- Request:
MigrateDownRequest - Response:
MigrateDownResponse
- request definition
type MigrateDownRequest struct {
Target string `json:"target,optional"` // specific version to migrate to
Force bool `json:"force,optional"` // force run even if already applied
}
- response definition
type MigrateDownResponse struct {
Success bool `json:"success"`
Message string `json:"message"`
Results []MigrationResult `json:"results,omitempty"`
}
- route definition
- Url: /api/v1/migrate/history
- Method: GET
- Request:
MigrationHistoryRequest - Response:
MigrationHistoryResponse
- request definition
type MigrationHistoryRequest struct {
Page int `form:"page,optional,default=1"`
PageSize int `form:"pageSize,optional,default=20"`
Status string `form:"status,optional"`
}
- response definition
type MigrationHistoryResponse struct {
Items []MigrationResult `json:"items"`
Total int64 `json:"total"`
Page int `json:"page"`
Size int `json:"pageSize"`
}
- route definition
- Url: /api/v1/migrate/status
- Method: GET
- Request:
MigrationStatusRequest - Response:
MigrationStatusResponse
- request definition
type MigrationStatusRequest struct {
}
- response definition
type MigrationStatusResponse struct {
LatestVersion string `json:"latestVersion"`
PendingCount int `json:"pendingCount"`
HistoryItems []MigrationResult `json:"historyItems,omitempty"`
}
- route definition
- Url: /api/v1/migrate/up
- Method: POST
- Request:
MigrateUpRequest - Response:
MigrateUpResponse
- request definition
type MigrateUpRequest struct {
Force bool `json:"force,optional"` // force run even if already applied
Step int `json:"step,optional"` // specific step to run (-1 for all)
}
- response definition
type MigrateUpResponse struct {
Success bool `json:"success"`
Message string `json:"message"`
Results []MigrationResult `json:"results,omitempty"`
}