API changes for v2 API, October 10 to October 17
This week's changelog for the mittwald API includes significant updates such as changes to request parameter types, the addition of new optional properties, and the introduction of a new endpoint for copying MySQL databases.
Summary
- The type of the
mysqlDatabaseIdpath parameter has changed from 'string'/'uuid' to 'string' for the following operations:DELETE(delete a MySQLDatabase),GET(get a MySQLDatabase),PATCH(update a MySQLDatabase's default character settings),PATCH(update a MySQLDatabase's description),GET(list MySQLUsers belonging to a Database), andPOST(create a MySQLUser). - The type of the
mysqlUserIdpath parameter has changed from 'string'/'uuid' to 'string' for the following operations:DELETE(delete a MySQLUser),GET(get a MySQLUser),PUT(update a MySQLUser),POST(disable a MySQLUser),POST(enable a MySQLUser),PATCH(update a MySQLUser's password), andGET(get a MySQLUser's PhpMyAdmin-URL). - The type of the
projectBackupIdpath parameter has changed from 'string'/'uuid' to 'string' for the following operations:DELETE(delete a ProjectBackup),GET(get a ProjectBackup),PATCH(update a ProjectBackup's description),DELETE(delete a ProjectBackupExport), andPOST(create a ProjectBackupExport). T - The type of the
projectIdpath parameter has changed from 'string'/'uuid' to 'string' for the following operations:GET(get a Project),DELETE(delete a Project's avatar),POST(request a Project avatar upload),GET(list BackupSchedules belonging to a Project),POST(create a BackupSchedule for a Project),GET(list Backups belonging to a Project),POST(create a Backup of a Project),PATCH(update a Project's description),GET(get a Project directory filesystem usage),GET(get a Project file's content),GET(get a Project file's information),GET(list MySQLDatabases belonging to a Project),POST(create a MySQLDatabase with a MySQLUser),GET(list RedisDatabases belonging to a Project),POST(create a RedisDatabase),GET(list Registries belonging to a Project),POST(create a Registry),GET(list Services belonging to a Project),GET(list Stacks belonging to a Project), andGET(list Volumes belonging to a Project). - The type of the
redisDatabaseIdpath parameter has changed from 'string'/'uuid' to 'string' for the following operations:DELETE(delete a RedisDatabase),GET(get a RedisDatabase),PATCH(update a RedisDatabase's configuration), andPATCH(update a RedisDatabase's description). - The type of the
serverIdpath parameter has changed from 'string'/'uuid' to 'string' for the following operations:DELETE(delete a Server's avatar),POST(request a Server avatar upload),PATCH(update a Server's description), andPOST(create a Project belonging to a Server). - The type of the
serviceIdpath parameter has changed from 'string'/'uuid' to 'string' for the following operations:GET(get a Service belonging to a Stack),POST(pull image for a Service),POST(recreate a Service),POST(restart a Service),POST(start a Service),POST(stop a Service), andGET(get logs belonging to a Service). - The
dryRunrequest property has been removed from thePUToperation to update extension pricing. - The
priceInCentsrequest property has been removed from thePUToperation to update extension pricing. - The
PUToperation to update extension pricing has added 'subschema #1, subschema #2' to the request body 'oneOf' list. - The
PUToperation to update extension pricing has added the optional propertynextPossiblePriceChangeto the response with the '200' status. - The
PUToperation to update extension pricing has made the response propertiesextensionIdandpriceChangeConsequencerequired for the status '200'. - The
GEToperation to get the contract strategy of an extension instance has added the optional propertiesvariantDescription,variantKey, andvariantNameto the response with the '200' status. - The
PUToperation to update or create a contract for existing extension instances has added the new optional request propertyvariantKey. - A new endpoint has been added for the
POSToperation to copy a MySQLDatabase with a MySQLUser. - The
GEToperation to get a Project has added the optional propertydeletionRequestedto the response with the '200' status.
Disclaimer: This summary is AI-generated. If you find any discrepancies, please refer to the detailed changes below.
Developer's note
For a lot of routes, the format of the id parameter has changed from a UUID to a simple string, according to the API Spec. This is only logical, as we enabled resources to be queried using shortId some time ago.
Detailed changes
Changes in "Delete a MySQL database"
- for the 'path' request parameter 'mysqlDatabaseId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the DELETE/ endpoint.
Changes in "Get a MySQL database"
- for the 'path' request parameter 'mysqlDatabaseId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Update a MySQL database's default character settings"
- for the 'path' request parameter 'mysqlDatabaseId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the PATCH/ endpoint.
Changes in "Update a MySQL database's description"
- for the 'path' request parameter 'mysqlDatabaseId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the PATCH/ endpoint.
Changes in "List MySQL users belonging to a Database"
- for the 'path' request parameter 'mysqlDatabaseId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Create a MySQL user"
- for the 'path' request parameter 'mysqlDatabaseId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Delete a MySQL user"
- for the 'path' request parameter 'mysqlUserId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the DELETE/ endpoint.
Changes in "Get a MySQL user"
- for the 'path' request parameter 'mysqlUserId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Update a MySQL user"
- for the 'path' request parameter 'mysqlUserId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the PUT/ endpoint.
Changes in "Disable a MySQL user"
- for the 'path' request parameter 'mysqlUserId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Enable a MySQL user"
- for the 'path' request parameter 'mysqlUserId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Update a MySQL user's password"
- for the 'path' request parameter 'mysqlUserId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the PATCH/ endpoint.
Changes in "Get a MySQL user's PhpMyAdmin-URL"
- for the 'path' request parameter 'mysqlUserId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Delete a project backup"
- for the 'path' request parameter 'projectBackupId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the DELETE/ endpoint.
Changes in "Get a project backup"
- for the 'path' request parameter 'projectBackupId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Change the description of a project backup"
- for the 'path' request parameter 'projectBackupId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the PATCH/ endpoint.
Changes in "Delete a project backup export"
- for the 'path' request parameter 'projectBackupId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the DELETE/ endpoint.
Changes in "Export a project backup for download"
- for the 'path' request parameter 'projectBackupId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Get a Project"
-
for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
-
added the optional property 'deletionRequested' to the response with the '200' status
For details, refer to the GET/ endpoint.
Changes in "Delete a Project's avatar"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the DELETE/ endpoint.
Changes in "Request a Project avatar upload"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "List backup schedules belonging to a Project"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Create a backup schedule for a Project"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "List Backups belonging to a Project"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Create a Backup of a Project"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Update a Project's description"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the PATCH/ endpoint.
Changes in "Get a Project directory filesystem usage"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Get a Project file's content"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Get a Project file's information"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "List MySQL databases belonging to a Project"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Create a MySQL database with a MySQL user"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "List Redis databases belonging to a Project"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Create a Redis database"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "List Registries belonging to a Project"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Create a Registry"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "List Services belonging to a Project"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "List Stacks belonging to a Project"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "List Volumes belonging to a Project"
- for the 'path' request parameter 'projectId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Delete a Redis database"
- for the 'path' request parameter 'redisDatabaseId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the DELETE/ endpoint.
Changes in "Get a Redis database"
- for the 'path' request parameter 'redisDatabaseId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Update a Redis database's configuration"
- for the 'path' request parameter 'redisDatabaseId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the PATCH/ endpoint.
Changes in "Update a Redis database's description"
- for the 'path' request parameter 'redisDatabaseId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the PATCH/ endpoint.
Changes in "Delete a Server's avatar"
- for the 'path' request parameter 'serverId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the DELETE/ endpoint.
Changes in "Request a Server avatar upload"
- for the 'path' request parameter 'serverId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Update a Servers's description"
- for the 'path' request parameter 'serverId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the PATCH/ endpoint.
Changes in "Create a Project belonging to a Server"
- for the 'path' request parameter 'serverId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Get a Service belonging to a Stack"
- for the 'path' request parameter 'serviceId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Pulls the latest version of the Service's image and optionally recreates the Service"
- for the 'path' request parameter 'serviceId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Recreate a Service"
- for the 'path' request parameter 'serviceId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Restart a started Service"
- for the 'path' request parameter 'serviceId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Start a stopped Service"
- for the 'path' request parameter 'serviceId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Stop a started Service"
- for the 'path' request parameter 'serviceId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the POST/ endpoint.
Changes in "Get logs belonging to a Service"
- for the 'path' request parameter 'serviceId', the type/format was changed from 'string'/'uuid' to 'string'/''
For details, refer to the GET/ endpoint.
Changes in "Get the Contract Strategy of an Extension Instance"
-
added the optional property '/oneOf[#/components/schemas/de.mittwald.v1.extension.SubscriptionBasedContract]/variantDescription' to the response with the '200' status
-
added the optional property '/oneOf[#/components/schemas/de.mittwald.v1.extension.SubscriptionBasedContract]/variantKey' to the response with the '200' status
-
added the optional property '/oneOf[#/components/schemas/de.mittwald.v1.extension.SubscriptionBasedContract]/variantName' to the response with the '200' status
For details, refer to the GET/ endpoint.
Changes in "Update or Create Contract for existing Extension Instances"
- added the new optional request property 'variantKey'
For details, refer to the PUT/ endpoint.
Changes in "Copy a MySQL database with a MySQL user"
- endpoint added
For details, refer to the POST/ endpoint.
Client package releases
mittwald PHP SDK Release v2.1.155
The latest release of the mittwald PHP SDK, version 2.1.155, introduces several updates and improvements.
Features
- A new property
deletionRequestedhas been added to the Project schema. This boolean property indicates whether a deletion request for a project has been made.
Changes
API Request Modifications
- The
format: uuidspecification has been removed from several request properties to simplify API interactions. This affects the following requests:CreateProjectRequest.serverIdDeleteProjectAvatarRequest.projectIdDeleteServerAvatarRequest.serverIdGetProjectRequest.projectIdRequestProjectAvatarUploadRequest.projectIdRequestServerAvatarUploadRequest.serverIdUpdateProjectDescriptionRequest.projectIdUpdateServerDescriptionRequest.serverIdProjectFileSystemGetDiskUsageRequest.projectIdProjectFileSystemGetFileContentRequest.projectIdProjectFileSystemListFilesRequest.projectId
Project Schema Update
- The
deletionRequestedproperty has been added, allowing clients to check if a project deletion has been requested.
Constructor and Method Updates
- The Project class now includes methods to manage the
deletionRequestedproperty:getDeletionRequested(): Retrieves the current value.withDeletionRequested(bool $deletionRequested): Sets the value.withoutDeletionRequested(): Removes the flag.
For more details, visit the release page.
mittwald PHP SDK Release v2.1.154
The latest release of the mittwald PHP SDK, v2.1.154, introduces new features and improvements to enhance database management capabilities.
Features
- New Database Copying Functionality: This release adds a feature to copy MySQL databases along with their associated users via a dedicated API endpoint. It includes comprehensive handling for various scenarios such as successful operations, bad requests, and rate limit exceedances.
Bug Fixes and Improvements
- The
formatproperty foruuidhas been removed from several request schemas within theBackupandDatabaseclients, including:CreateProjectBackupRequestCreateProjectBackupExportRequestCreateProjectBackupScheduleRequest- Other related database operations handling client requests.
New Endpoints
- Copy MySQL Database Endpoint:
- Introduces the ability to copy a MySQL database with associated user creation.
- Implements related request and response classes to handle operations, including:
CopyMysqlDatabaseRequestCopyMysqlDatabaseCreatedResponseCopyMysqlDatabaseBadRequestResponseCopyMysqlDatabaseNotFoundResponseCopyMysqlDatabaseTooManyRequestsResponseCopyMysqlDatabaseDefaultResponse
These updates provide a robust setup for managing MySQL databases and enhance the existing API capabilities.
mittwald PHP SDK Release v2.1.153
The latest release of the mittwald PHP SDK, version 2.1.153, introduces several new features and changes aimed at enhancing the management of extension pricing and variants.
Features
- Variant Handling in Extension Pricing: This release adds support for managing different price plans and variants of extensions. Users can now specify a
variantKeywhen updating an extension instance and choose pricing options based on price plans.
Changes
-
Extension Update Requests:
ExtensionUpdateExtensionInstanceContractRequest: Introduces a newvariantKeyproperty, essential for extensions with multiple variants.ExtensionUpdateExtensionPricingRequest: Updated to support two alternative request bodies for specifying a price in cents or selecting a price plan, with added validations.
-
Responses:
ExtensionUpdateExtensionPricingOKResponse: Includes a newnextPossiblePriceChangeproperty to indicate the next valid time for price changes.
-
Data Models:
- New classes such as
PricePlan,Variant, andVariantDescriptionChangeTypehave been introduced to handle price plans and variant descriptions. SubscriptionBasedContract: Enhanced with new properties for extended variant information.
- New classes such as
-
Validation Enhancements: Improved validation logic to ensure the integrity of inputs related to price plans and variants.
-
Miscellaneous: Code refactoring for better clarity and maintainability, including improvements in cloning and JSON serialization.
For more details, visit the release page.
mittwald JavaScript SDK Release 4.242.0
The mittwald JavaScript SDK has been updated to version 4.242.0. This release includes an update to the generated client, enhancing the SDK's functionality. For more details, you can view the release on GitHub: mittwald JavaScript SDK 4.242.0.
mittwald JavaScript SDK Release 4.241.0
The mittwald JavaScript SDK has been updated to version 4.241.0. This release includes an update to the generated client, enhancing the SDK's functionality. For more details, you can view the release on GitHub: mittwald JavaScript SDK 4.241.0.
mittwald JavaScript SDK Release 4.240.0
The mittwald JavaScript SDK has been updated to version 4.240.0. This release includes an update to the generated client, enhancing the SDK's functionality. For more details, you can view the release on GitHub: mittwald JavaScript SDK 4.240.0.
mittwald JavaScript SDK Release 4.239.0
The mittwald JavaScript SDK has been updated to version 4.239.0. This release includes an update to the generated client, enhancing the SDK's functionality. For more details, you can view the release on GitHub here.