Releases: mittwald/api-client-php
v2.1.192
Features
Set Stack Update Schedule
- New API endpoint to set an update schedule for a stack, allowing users to define a cron-based schedule for updates. This includes detailed request and response handling for different HTTP status codes.
Improvements and Updates
- Updated descriptions in existing API request and response schemas for better clarity, including information about command, entrypoint, environment variables, image handling, and more.
- Added context-rich descriptions for properties related to resource specifications such as CPU and memory limits.
Documentation Enhancements
- Enhanced schema documentation across various models to provide clarity on expected formats and examples, helping developers integrate more effectively with the API.
API Changes
New Methods
setStackUpdateSchedule: Added to theContainerClientinterface, allowing the setting of a scheduled update for containers.
Updated Method Descriptions
- The method documentation for pulling images and recreating services has been updated for clarity.
New Response Classes
- Created various response classes for error handling in the
setStackUpdateSchedulemethod, including:SetStackUpdateScheduleBadRequestResponseSetStackUpdateScheduleForbiddenResponseSetStackUpdateScheduleNotFoundResponseSetStackUpdateScheduleInternalServerErrorResponseSetStackUpdateScheduleTooManyRequestsResponse
Schema Updates
- Resource Specification Updates: Detailed descriptions for CPU and memory usage in the
ResourceSpecschema. - New fields added in the
StackResponseschema to accommodate scheduling updates, enhancing the overall responsiveness of service management.
Consistency Improvements
- Improved naming and structuring in the request schemas for better semantic understanding when configuring containers and services, making it easier for clients to manage them programmatically.
v2.1.191
Added
License API
-
Introduced a new
LicenseClientand its implementation, providing functionality for managing licenses including:- Fetching a Single License:
getLicense(GetLicenseRequest $request) - Listing Licenses for a Project:
listLicensesForProject(ListLicensesForProjectRequest $request) - Rotating License Keys:
rotateLicenseKey(RotateLicenseKeyRequest $request) - Validating License Keys for a Project:
validateLicenseKeyForProject(ValidateLicenseKeyForProjectRequest $request)
- Fetching a Single License:
-
New response classes for
GetLicenseoperation:GetLicenseOKResponseGetLicenseBadRequestResponseGetLicenseForbiddenResponseGetLicenseTooManyRequestsResponseGetLicenseInternalServerErrorResponseGetLicenseDefaultResponse
-
New response classes for
ListLicensesForProjectoperation:ListLicensesForProjectOKResponseListLicensesForProjectBadRequestResponseListLicensesForProjectForbiddenResponseListLicensesForProjectInternalServerErrorResponseListLicensesForProjectDefaultResponseListLicensesForProjectTooManyRequestsResponse
-
New response classes for
RotateLicenseKeyoperation:RotateLicenseKeyOKResponseRotateLicenseKeyBadRequestResponseRotateLicenseKeyForbiddenResponseRotateLicenseKeyNotFoundResponseRotateLicenseKeyInternalServerErrorResponseRotateLicenseKeyDefaultResponseRotateLicenseKeyPreconditionFailedResponseRotateLicenseKeyTooManyRequestsResponse
-
New request classes for
ListLicensesForProjectandValidateLicenseKeyForProjectoperations.
Data Models
- Added data models for managing licenses including
License,Key,ExternalKey,KeyResponse,Meta,Reference, and their respective enums and request/response classes.
Enhancements
-
New schema definitions for various operations in the License API, providing structure for input validation and response handling.
-
New functionality for validating and processing license keys related to projects.
License Order Support
- Integrations for creating and managing aspects of TYPO3 ELTS license orders including key management and version handling were established.
This update introduces significant capability to manage licenses accurately, ensuring robust API interactions for license validations, actions, listing, and details management.
v2.1.190
Breaking Changes
- Removed the deprecated method
deprecatedCronjobAbortExecutionand its associated classes and functionality within theCronjobClientinterface. This feature is no longer supported.
Features
- Added a new boolean property
avoidEmailConfirmationto theUpdateDomainContactRequestandUpdateDomainContactRequestBodyclasses. This property allows users to indicate whether to avoid the email confirmation during updates, which might result in the application of a 60-day transfer lock on the domain.
Improvements
- Improved the
UpdateDomainContactRequestBodyclass by providing methods to set and unset theavoidEmailConfirmationparameter, alongside validation during input processing.
Bug Fixes
- No bug fixes were explicitly mentioned in this release; the focus was primarily on removing deprecated features and introducing new functionality.
v2.1.189
Added Features
Get Detail of Contract by License
- Introduced a new method
getDetailOfContractByLicenseto theContractClientinterface and its implementation, allowing retrieval of contracts based on License ID. - The new method enhances querying capabilities for contracts, improving the overall API usability for clients managing contracts.
New Request and Response Classes
- Added
GetDetailOfContractByLicenseRequestto construct requests for fetching contract details using a License ID. - Introduced new response classes to handle the result of the
getDetailOfContractByLicensemethod:GetDetailOfContractByLicenseOKResponse: for successful responses.GetDetailOfContractByLicenseBadRequestResponse: for handling bad requests.GetDetailOfContractByLicenseNotFoundResponse: for scenarios where no contract is found for the given License ID.GetDetailOfContractByLicenseDefaultResponse: for handling any other issues.GetDetailOfContractByLicenseTooManyRequestsResponse: to manage rate limiting scenarios.GetDetailOfContractByLicenseTooManyRequestsResponseBody: to encapsulate the response body for too many requests.
Internal Validation
- Each new response and request class includes a schema for input validation to ensure data integrity when interacting with the API.
v2.1.188
Features Added
- Verification Address Confidence Enum: Introduced a new enum
VerifyAddressConfidenceto categorize the confidence levels of address verification. This enhancement allows users to understand the certainty of an address's existence more clearly.
Changes
-
Refactor Verification Response Handling:
- The class
VerificationVerifyAddressOKResponsenow utilizes theVerifyAddressResponseschema instead of the previously definedVerificationVerifyAddressOKResponseBody. This change improves the clarity and structure of the response handling. - Updated constructor and method signatures in
VerificationVerifyAddressOKResponseto utilize the newVerifyAddressResponseclass.
- The class
-
New
VerifyAddressResponseClass:- Renamed
VerificationVerifyAddressOKResponseBodytoVerifyAddressResponse. - Enhanced docstrings and adjusted method signatures to reflect the renaming and structural changes.
- Renamed
-
Removed Cloning of Body: Simplified handling of the body in the
__clonemethod by removing unnecessary cloning, which enhances performance and memory management.
v2.1.187
Added
- Introduced
ExecuteActionBadRequestResponseclass to handle bad request responses for execute action operations, providing a structured way to manage validation errors. - Added
ExecuteActionPreconditionFailedResponseclass to manage responses when precondition failures occur, enhancing error handling capabilities.
Changed
- Updated the AppClientImpl to incorporate the new response classes for 400 (Bad Request) and 412 (Precondition Failed) status codes.
- Removed the
projectIdparameter from theCreateMySqlDatabaseschema to streamline the database creation process and ensure it aligns with the latest API specifications.
Documentation
- Corrected documentation in the
MiscClientinterface and implementation to capitalize "German" in describing the company register for clarity.
v2.1.186
New Features
DnsCreateDnsZoneConflictResponse
An implementation for handling conflict responses when creating DNS zones has been introduced. This feature allows the API client to manage scenarios when a request to create a DNS zone conflicts with existing resources.
Changes
- Introduced
DnsCreateDnsZoneConflictResponseclass to handle conflict responses for DNS zone creation, providing validation and serialization capabilities. - Updated
DomainClientImplto throw aDnsCreateDnsZoneConflictResponsefor HTTP status code 409 sessions, enabling the client to correctly interpret conflict responses.
v2.1.185
Enhancements
DatabaseClient Interface
- The
Create a MySQLDatabase with a MySQLUsermethod now includes detailed descriptions about the operation, noting that it is asynchronous and providing guidance on how to check the database status after creation.
DatabaseClient Implementation
- Similar to the interface, the
Create a MySQLDatabase with a MySQLUsermethod in theDatabaseClientImplclass has been updated to clarify the operation's asynchronous nature.
Added Response Class
- Introduced
ContributorGetLoginLinkForbiddenResponseto handle 403 Forbidden responses specific to the login link process.
Schema Updates
CharacterSettings
- Added descriptions and examples for
characterSetandcollationproperties indicating their valid values and sources.
CreateMySqlDatabase
- Enhanced the schema to include descriptions for
descriptionandversionproperties providing contextual information for users.
CreateMySqlUser
- Enhanced the schema with detailed descriptions, including examples for
accessIpMask,accessLevel, andexternalAccess.
CreateMySqlUserWithDatabase
- Updated the schema to include detailed descriptions for both
accessLevelandexternalAccess, clarifying user permissions and external connectivity scenarios.
MySqlDatabase
- Enhanced the schema to provide more context in the form of descriptions for properties like
description,externalHostname,hostname,name, andversion.
v2.1.184
Added
- lastError Property:
- A new property
lastErrorhas been added to theAppInstallationclass, which holds the last error that occurred during an update and resets on success. This provides better tracking of issues during updates.
- A new property
Enhanced
- Getter and Setter for lastError:
- Methods
getLastError(),withLastError(string $lastError), andwithoutLastError()have been introduced to manage thelastErrorproperty effectively.
- Methods
Updated
-
Input Processing:
- The input processing for the
AppInstallationclass has been updated to include thelastErrorproperty, ensuring that it can be set and retrieved as part of the installation state.
- The input processing for the
-
Output Serialization:
- The output serialization method has been modified to include the
lastErrorin the serialized output, allowing external clients to see if there was an error during the last update.
- The output serialization method has been modified to include the
v2.1.183
Summary of Changes
This release includes the implementation of new response handling for the verification of addresses and the modification of existing response structures related to user deletion. Notably, the new VerificationVerifyAddressBadRequestResponse class is introduced, which enhances error handling when verifying addresses.
Added
- VerificationVerifyAddressBadRequestResponse class added to improve address verification error handling.
- Implements response handling for invalid requests to the address verification service.
Changed
- The
UnexpectedResponseExceptionhandling inMiscClientImplnow recognizes HTTP status code400for bad requests, returning aVerificationVerifyAddressBadRequestResponse. - Updates made to the
DeleteUserConflictResponseto use a more generalized error response structure based on theErrorschema instead of the previously definedDeleteUserConflictResponseBody. - Removal of the now obsolete
DeleteUserConflictResponseBodyand its associated properties, along with theDeleteUserConflictResponseBodyNameenumeration. - Documentation corrections made in the
UserClientandUserClientImplinterfaces to fix typos in the authentication method descriptions.