### GET /v2/app-installations Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/app-installations ```markdown ### Parameters - **appIds** (array (string (uuid)), query, optional): IDs of Apps to filter for. - **searchTerm** (string, query, optional): Search term to filter for. The fields id, shortId, description, appVersion, systemSoftwareVersion and customerId are searchable. - **limit** (integer, query, optional): The max count of resources to return in the list response. - **skip** (integer, query, optional): Number of items to skip. Should be multiple of `limit`. - **page** (integer, query, optional): Page to display. `skip` and `page` end up doing the same. If both `page` and `skip` are set, skip is used. ### Responses #### 200 - Object containing the list of AppInstallations. - Array of de.mittwald.v1.app.AppInstallation #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/app-installations?appIds=item1,item2&searchTerm=string&limit=0&skip=0&page=0" ``` ``` -------------------------------- ### GET /v2/project-invites Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/project-invites ```markdown ### Parameters - **limit** (integer, query, optional) - **skip** (integer, query, optional) - **page** (integer, query, optional) ### Responses #### 200 - OK - Array of de.mittwald.v1.membership.ProjectInvite #### 403 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 404 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/project-invites?limit=0&skip=0&page=0" ``` ``` -------------------------------- ### GET /v2/extension-instances Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/extension-instances ```markdown ### Parameters - **context** (de.mittwald.v1.marketplace.Context, query, optional) - **contextId** (string, query, optional): The ID of your customer or project. - **extensionId** (string (uuid), query, optional) - **searchTerm** (string, query, optional) - **anchor** (string, query, optional) - **limit** (integer, query, optional): The max count of resources to return in the list response. - **skip** (integer, query, optional): Number of items to skip. Should be multiple of `limit`. - **page** (integer, query, optional): Page to display. `skip` and `page` end up doing the same. If both `page` and `skip` are set, skip is used. - **sort** (array (string (createdAt|extensionId|extensionName)), query, optional): List of fields how the result should be sorted. - **order** (array (string (asc|desc)), query, optional): Should the result be sorted ascending or descending? You can specify for each field another sorting: sort[0]=foo, order[0]=asc, sort[1]=bar, order[1]=desc. ### Responses #### 200 - A list of extension instances. - Array of de.mittwald.v1.marketplace.ExtensionInstance #### 400 - response **de.mittwald.v1.commons.ValidationErrors** - **type** (string (ValidationError)) (required) ("ValidationError") - **message** (string) (example: "Validation failed") - **validationErrors** (array (de.mittwald.v1.commons.ValidationErrorSchema)) (required) Array items: - **message** (string) (required): The standard error message (example: "should be string") - **path** (string) (required): The path to the part of the data that was validated. JavaScript property access notation (e.g., ".prop[1].subProp") is used. (example: ".address.street") - **type** (string) (required): ajv validation error type (e.g. "format", "required", "type") or own validation error types (example: "format") - **context** (object): The object with the additional information about the error that can be used to create custom error messages. Keys depend on the type that failed validation (e.g. "missingProperty" for type "required") (example: {"format":"email"}) #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/extension-instances?context=value&contextId=string&extensionId=string&searchTerm=string&anchor=string&limit=0&skip=0&page=0&sort=createdAt&order=asc" ``` ``` -------------------------------- ### GET /v2/projects Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/projects ```markdown ### Parameters - **customerId** (string, query, optional): ID of the Organization to list Projects for. (example: "15b8a787-8d46-43b0-907e-01af35032c0a") - **serverId** (string (uuid), query, optional): ID of the Server to list Projects for. - **searchTerm** (string, query, optional): Search term to list Projects for. The fields id, shortId, and description are searchable. - **limit** (integer, query, optional): The max count of resources to return in the list response. - **skip** (integer, query, optional): Number of items to skip. Should be multiple of `limit`. - **page** (integer, query, optional): Page to display. `skip` and `page` end up doing the same. If both `page` and `skip` are set, skip is used. - **sort** (string (createdAt|description), query, optional): Sort the result by this field. - **order** (string (asc|desc), query, optional): Should the result be sorted ascending or descending? Default ascending. ### Responses #### 200 - OK - Array of object - **backupStorageUsageInBytes** (integer (int64)) (required) - **backupStorageUsageInBytesSetAt** (string (date-time)) (required) - **createdAt** (string (date-time)) (required) - **customerId** (string) (required) - **customerMeta** (object) (required) - **id** (string) (required) - **description** (string) (required) - **disableReason** (string (maliciousCode|illegalContent|maliciousConduct|suspended)) ("maliciousCode"|"illegalContent"|"maliciousConduct"|"suspended") - **disabledAt** (string (date-time)) - **enabled** (boolean) (required) - **features** (array (de.mittwald.v1.project.ProjectFeature)): Deprecated by 'supportedFeatures'. - **id** (string) (required) - **imageRefId** (string) - **isReady** (boolean) (required): deprecated - **projectHostingId** (string (uuid)) - **readiness** (string (creating|ready|unready)) (required): deprecated by property status ("creating"|"ready"|"unready") - **serverId** (string) - **shortId** (string) (required) - **status** (string (pending|ready|preparingForVolumeMigration|migratingVolume|error|disabled)) (required) ("pending"|"ready"|"preparingForVolumeMigration"|"migratingVolume"|"error"|"disabled") - **statusSetAt** (string (date-time)) (required) - **supportedFeatures** (array (de.mittwald.v1.project.ProjectFeature)) (required) - **webStorageUsageInBytes** (integer (int64)) (required) - **webStorageUsageInBytesSetAt** (string (date-time)) (required) #### 400 - response **de.mittwald.v1.commons.ValidationErrors** - **type** (string (ValidationError)) (required) ("ValidationError") - **message** (string) (example: "Validation failed") - **validationErrors** (array (de.mittwald.v1.commons.ValidationErrorSchema)) (required) Array items: - **message** (string) (required): The standard error message (example: "should be string") - **path** (string) (required): The path to the part of the data that was validated. JavaScript property access notation (e.g., ".prop[1].subProp") is used. (example: ".address.street") - **type** (string) (required): ajv validation error type (e.g. "format", "required", "type") or own validation error types (example: "format") - **context** (object): The object with the additional information about the error that can be used to create custom error messages. Keys depend on the type that failed validation (e.g. "missingProperty" for type "required") (example: {"format":"email"}) #### 403 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/projects?customerId=15b8a787-8d46-43b0-907e-01af35032c0a&serverId=string&searchTerm=string&limit=10000&skip=0&page=0&sort=createdAt&order=asc" ``` ``` -------------------------------- ### GET /v2/system-softwares Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/system-softwares ```markdown ### Parameters - **limit** (integer, query, optional): The max count of resources to return in the list response. - **skip** (integer, query, optional): Number of items to skip. Should be multiple of `limit`. - **page** (integer, query, optional): Page to display. `skip` and `page` end up doing the same. If both `page` and `skip` are set, skip is used. ### Responses #### 200 - Object containing the list of SystemSoftwares. - Array of de.mittwald.v1.app.SystemSoftware #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/system-softwares?limit=0&skip=0&page=0" ``` ``` -------------------------------- ### GET /v2/project-token-invite Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/project-token-invite ```markdown ### Parameters - **token** (string, header, required): Token of the ProjectInvite to be retrieved. ### Responses #### 200 - OK **de.mittwald.v1.membership.ProjectInvite** - **avatarRefId** (string (uuid)): Reference to the Project's avatar. - **id** (string (uuid)) (required): ID of the ProjectInvite. - **information** (object) (required) - **invitationToken** (string): Token for authentication purposes. - **invitedBy** (string (uuid)) (required): ID of the user that created the invite. - **mailAddress** (string (email)) (required): Mail-address of the user the ProjectInvite is for. - **membershipExpiresAt** (string (date-time)): Time the ProjectMembership should expire at. - **message** (string): Message contained in the ProjectInvite. - **projectDescription** (string) (required): Description of the Project the invite is created for. - **projectId** (string (uuid)) (required): ID of the Project the invitation is for. - **role** (string (notset|owner|emailadmin|external)) (required) ("notset"|"owner"|"emailadmin"|"external") #### 404 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/project-token-invite" ``` ``` -------------------------------- ### GET /v2/mysql-versions Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/mysql-versions ```markdown ### Parameters - **projectId** (string, query, optional): ID of the Project to list available MySQLVersions for. ### Responses #### 200 - OK - Array of de.mittwald.v1.database.MySqlVersion #### 400 - response **de.mittwald.v1.commons.ValidationErrors** - **type** (string (ValidationError)) (required) ("ValidationError") - **message** (string) (example: "Validation failed") - **validationErrors** (array (de.mittwald.v1.commons.ValidationErrorSchema)) (required) Array items: - **message** (string) (required): The standard error message (example: "should be string") - **path** (string) (required): The path to the part of the data that was validated. JavaScript property access notation (e.g., ".prop[1].subProp") is used. (example: ".address.street") - **type** (string) (required): ajv validation error type (e.g. "format", "required", "type") or own validation error types (example: "format") - **context** (object): The object with the additional information about the error that can be used to create custom error messages. Keys depend on the type that failed validation (e.g. "missingProperty" for type "required") (example: {"format":"email"}) #### 404 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/mysql-versions?projectId=string" ``` ``` -------------------------------- ### GET /v2/servers Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/servers ```markdown ### Parameters - **customerId** (string, query, optional): ID of the Organization to list Servers for. If no ID is provided, the ID of the executing User is used instead. - **searchTerm** (string, query, optional): Search term to list Servers for. The fields id, shortId, and description are searchable. - **limit** (integer, query, optional): The max count of resources to return in the list response. - **skip** (integer, query, optional): Number of items to skip. Should be multiple of `limit`. - **page** (integer, query, optional): Page to display. `skip` and `page` end up doing the same. If both `page` and `skip` are set, skip is used. - **sort** (string (createdAt|description), query, optional): Sort the result by this field. - **order** (string (asc|desc), query, optional): Should the result be sorted ascending or descending? Default ascending. ### Responses #### 200 - OK - Array of de.mittwald.v1.project.Server #### 403 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/servers?customerId=string&searchTerm=string&limit=10000&skip=0&page=0&sort=createdAt&order=asc" ``` ``` -------------------------------- ### GET /v2/app-installations/{appInstallationId} Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/app-installations/{appInstallationId} ```markdown ### Parameters - **appInstallationId** (string, path, required) ### Responses #### 200 - The AppInstallation. **de.mittwald.v1.app.AppInstallation** - **appId** (string (uuid)) (required) - **appVersion** (object) (required): VersionStatus describes the current and desired version of something like the AppVersion of an AppInstallation. If diverging, an internal process is going to assert, the current value will be aligned. - **current** (string) - **desired** (string) (required) - **createdAt** (string (date-time)) (required) (example: "2024-09-20T22:57:32.000Z") - **customDocumentRoot** (string) - **deletionRequested** (boolean) - **description** (string) (required) - **disabled** (boolean) (required) - **id** (string (uuid)) (required) - **installationPath** (string) (required) - **linkedDatabases** (array (de.mittwald.v1.app.LinkedDatabase)) (required) Array items: - **databaseId** (string (uuid)) (required) - **databaseUserIds** (object) - **kind** (string (mysql|redis)) (required) ("mysql"|"redis") - **purpose** (string (primary|cache|custom)) (required) ("primary"|"cache"|"custom") - **lockedBy** (object) - **phase** (string (pending|installing|upgrading|ready|disabled|reconfiguring)) (required): Phase describes the current phase/state of an AppInstallation in its lifecycle. (example: "ready") ("pending"|"installing"|"upgrading"|"ready"|"disabled"|"reconfiguring") - **projectId** (string (uuid)) (required) - **screenshotId** (string (uuid)) - **screenshotRef** (string) - **shortId** (string) (required) (example: "a-XXXXXX") - **systemSoftware** (array (de.mittwald.v1.app.InstalledSystemSoftware)) (required) Array items: - **systemSoftwareId** (string (uuid)) (required) - **systemSoftwareVersion** (object) (required): VersionStatus describes the current and desired version of something like the AppVersion of an AppInstallation. If diverging, an internal process is going to assert, the current value will be aligned. - **updatePolicy** (string (none|inheritedFromApp|patchLevel|all)) (required): SystemSoftwareUpdatePolicy describes which updates should be applied automatically by our systems. ("none"|"inheritedFromApp"|"patchLevel"|"all") - **updatePolicy** (string (none|patchLevel|all)) (required): AppUpdatePolicy describes which updates should be applied automatically by our systems. ("none"|"patchLevel"|"all") - **userInputs** (array (de.mittwald.v1.app.SavedUserInput)) (required) Array items: - **name** (string) (required) - **value** (string) (required) #### 404 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/app-installations/{appInstallationId}" ``` ``` -------------------------------- ### GET /v2/domain-suggestions Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/domain-suggestions ```markdown ### Parameters - **prompt** (string, query, required) - **domainCount** (integer, query, optional) - **tlds** (array (string), query, optional) ### Responses #### 200 - OK **de.mittwald.v1.domain.SuggestedDomains** - **domains** (array (string)) (required) #### 400 - response **de.mittwald.v1.commons.ValidationErrors** - **type** (string (ValidationError)) (required) ("ValidationError") - **message** (string) (example: "Validation failed") - **validationErrors** (array (de.mittwald.v1.commons.ValidationErrorSchema)) (required) Array items: - **message** (string) (required): The standard error message (example: "should be string") - **path** (string) (required): The path to the part of the data that was validated. JavaScript property access notation (e.g., ".prop[1].subProp") is used. (example: ".address.street") - **type** (string) (required): ajv validation error type (e.g. "format", "required", "type") or own validation error types (example: "format") - **context** (object): The object with the additional information about the error that can be used to create custom error messages. Keys depend on the type that failed validation (e.g. "missingProperty" for type "required") (example: {"format":"email"}) #### 412 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/domain-suggestions?prompt=string&domainCount=6&tlds=item1,item2" ``` ``` -------------------------------- ### GET /v2/apps Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/apps ```markdown ### Parameters - **limit** (integer, query, optional): The max count of resources to return in the list response. - **skip** (integer, query, optional): Number of items to skip. Should be multiple of `limit`. - **page** (integer, query, optional): Page to display. `skip` and `page` end up doing the same. If both `page` and `skip` are set, skip is used. ### Responses #### 200 - Object containing the list of Apps. - Array of de.mittwald.v1.app.App #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/apps?limit=0&skip=0&page=0" ``` ``` -------------------------------- ### GET /v2/customer-invites Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/customer-invites ```markdown ### Parameters - **limit** (integer, query, optional) - **skip** (integer, query, optional) - **page** (integer, query, optional) ### Responses #### 200 - OK - Array of de.mittwald.v1.membership.CustomerInvite #### 403 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 404 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/customer-invites?limit=0&skip=0&page=0" ``` ``` -------------------------------- ### GET /v2/customer-token-invite Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/customer-token-invite ```markdown ### Parameters - **token** (string, header, required): Token of the CustomerInvite to be retrieved. ### Responses #### 200 - response **de.mittwald.v1.membership.CustomerInvite** - **avatarRefId** (string (uuid)): Reference to the Customer's avatar. - **customerId** (string (uuid)) (required): ID of the Customer the invite is for. - **customerName** (string) (required): Name of the Customer the user is invited to. - **id** (string (uuid)) (required): ID of the CustomerInvite. - **information** (object) (required) - **invitationToken** (string): Token for authentication purposes. - **invitedBy** (string (uuid)) (required): ID of the user that created the invite. - **mailAddress** (string (email)) (required): Mail-address of the user the invite is for. - **membershipExpiresAt** (string (date-time)): Time the CustomerMembership should expire at. - **message** (string): Message contained in the CustomerInvite. - **role** (string (notset|owner|member|accountant)) (required) ("notset"|"owner"|"member"|"accountant") #### 404 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/customer-token-invite" ``` ``` -------------------------------- ### GET /v2/users/self/credentials/support-code Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/users/self/credentials/support-code ```markdown ### Parameters - **forceRecreate** (boolean, query, optional) ### Responses #### 200 - The requested support code and the expiry. - **expiresAt** (string (date-time)) (required): Expiration of the support code - **supportCode** (string) (required): support code to authenticate yourself against the mittwald support via telephone (example: "123456") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/users/self/credentials/support-code?forceRecreate=true" ``` ``` -------------------------------- ### POST /v2/contributors/{contributorId}/onboarding-process Source: https://api.mittwald.de/v2/openapi.json The OnboardingProcess is needed to publish paid extensions. ```markdown ### Parameters - **contributorId** (string, path, required) ### Request Body **Content-Type:** application/json - **shippingCountryRestriction** (string (onlyDomestic)) (required): You can restrict your customers to certain countries. ("onlyDomestic") ### Responses #### 201 - The Process has been started. - **contributorId** (string (uuid)) - **onboardingLink** (string) #### 400 - response **de.mittwald.v1.commons.ValidationErrors** - **type** (string (ValidationError)) (required) ("ValidationError") - **message** (string) (example: "Validation failed") - **validationErrors** (array (de.mittwald.v1.commons.ValidationErrorSchema)) (required) Array items: - **message** (string) (required): The standard error message (example: "should be string") - **path** (string) (required): The path to the part of the data that was validated. JavaScript property access notation (e.g., ".prop[1].subProp") is used. (example: ".address.street") - **type** (string) (required): ajv validation error type (e.g. "format", "required", "type") or own validation error types (example: "format") - **context** (object): The object with the additional information about the error that can be used to create custom error messages. Keys depend on the type that failed validation (e.g. "missingProperty" for type "required") (example: {"format":"email"}) #### 404 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X POST "https://api.example.com/v2/contributors/{contributorId}/onboarding-process" \ -H "Content-Type: application/json" \ -d '{ "shippingCountryRestriction": "onlyDomestic" }' ``` ``` -------------------------------- ### GET /v2/users/self/sessions Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/users/self/sessions ```markdown ### Parameters - **limit** (integer, query, optional): The max count of resources to return in the list response. - **skip** (integer, query, optional): Number of items to skip. Should be multiple of `limit`. - **page** (integer, query, optional): Page to display. `skip` and `page` end up doing the same. If both `page` and `skip` are set, skip is used. ### Responses #### 200 - List of all sessions. - Array of de.mittwald.v1.signup.UserSession #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/users/self/sessions?limit=0&skip=0&page=0" ``` ``` -------------------------------- ### GET /v2/ai-hosting-models Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/ai-hosting-models ```markdown ### Responses #### 200 - List of currently active models. - Array of de.mittwald.v1.aihosting.Model #### 400 - response **de.mittwald.v1.commons.ValidationErrors** - **type** (string (ValidationError)) (required) ("ValidationError") - **message** (string) (example: "Validation failed") - **validationErrors** (array (de.mittwald.v1.commons.ValidationErrorSchema)) (required) Array items: - **message** (string) (required): The standard error message (example: "should be string") - **path** (string) (required): The path to the part of the data that was validated. JavaScript property access notation (e.g., ".prop[1].subProp") is used. (example: ".address.street") - **type** (string) (required): ajv validation error type (e.g. "format", "required", "type") or own validation error types (example: "format") - **context** (object): The object with the additional information about the error that can be used to create custom error messages. Keys depend on the type that failed validation (e.g. "missingProperty" for type "required") (example: {"format":"email"}) #### 403 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 404 - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/ai-hosting-models" ``` ``` -------------------------------- ### POST /v2/projects/{projectId}/appinstallations Source: https://api.mittwald.de/v2/openapi.json This route is deprecated. Please use /v2/projects/{projectId}/app-installations instead. ```markdown ### Parameters - **projectId** (string, path, required) ### Request Body **Content-Type:** application/json - **appVersionId** (string (uuid)) (required) - **description** (string) (required) - **installationPath** (string) - **updatePolicy** (string (none|patchLevel|all)) (required): AppUpdatePolicy describes which updates should be applied automatically by our systems. ("none"|"patchLevel"|"all") - **userInputs** (array (de.mittwald.v1.app.SavedUserInput)) (required) Array items: - **name** (string) (required) - **value** (string) (required) ### Responses #### 308 - This route is deprecated, and will redirect you to another URL. This route is deprecated, and will redirect you to another URL. ### Example Usage ```bash curl -X POST "https://api.example.com/v2/projects/{projectId}/appinstallations" \ -H "Content-Type: application/json" \ -d '{ "appVersionId": "string", "description": "string", "installationPath": "string", "updatePolicy": "value", "userInputs": [ "value" ] }' ``` ``` -------------------------------- ### GET /v2/users/self/credentials/password-updated-at Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/users/self/credentials/password-updated-at ```markdown ### Request Body **Content-Type:** application/json ### Responses #### 200 - Timestamp of latest password change. - **passwordUpdatedAt** (string (date-time)) (required) #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/users/self/credentials/password-updated-at" \ -H "Content-Type: application/json" \ -d '"value"' ``` ``` -------------------------------- ### POST /v2/appinstallations/{appInstallationId}/actions/{action} Source: https://api.mittwald.de/v2/openapi.json This route is deprecated. Please use /v2/app-installations/{appInstallationId}/actions/{action} instead. ```markdown ### Parameters - **appInstallationId** (string, path, required) - **action** (de.mittwald.v1.app.Action, path, required) ### Responses #### 308 - This route is deprecated, and will redirect you to another URL. This route is deprecated, and will redirect you to another URL. ### Example Usage ```bash curl -X POST "https://api.example.com/v2/appinstallations/{appInstallationId}/actions/{action}" ``` ``` -------------------------------- ### GET /v2/users/self/ssh-keys Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/users/self/ssh-keys ```markdown ### Parameters - **limit** (integer, query, optional): The max count of resources to return in the list response. - **skip** (integer, query, optional): Number of items to skip. Should be multiple of `limit`. - **page** (integer, query, optional): Page to display. `skip` and `page` end up doing the same. If both `page` and `skip` are set, skip is used. ### Responses #### 200 - The list of stored ssh-keys. - **sshKeys** (array (de.mittwald.v1.signup.SshKey)) Array items: - **algorithm** (string) (required) (example: "ssh-rsa") - **comment** (string) (required) (example: "a.lovelace@example.com") - **createdAt** (string (date-time)) (required) - **expiresAt** (string (date-time)) - **fingerprint** (string (hexdump)) (required) (example: "a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1") - **key** (string) (required) - **sshKeyId** (string (uuid)) (required) #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/users/self/ssh-keys?limit=0&skip=0&page=0" ``` ``` -------------------------------- ### POST /v2/appinstallations/{appInstallationId}/actions/copy Source: https://api.mittwald.de/v2/openapi.json This route is deprecated. Please use /v2/app-installations/{appInstallationId}/actions/copy instead. ```markdown ### Parameters - **appInstallationId** (string (uuid), path, required) ### Request Body **Content-Type:** application/json - **description** (string) (required) - **installationPath** (string) - **targetProjectId** (string (uuid)) ### Responses #### 308 - This route is deprecated, and will redirect you to another URL. This route is deprecated, and will redirect you to another URL. ### Example Usage ```bash curl -X POST "https://api.example.com/v2/appinstallations/{appInstallationId}/actions/copy" \ -H "Content-Type: application/json" \ -d '{ "description": "string", "installationPath": "string", "targetProjectId": "string" }' ``` ``` -------------------------------- ### GET /v2/users/self/api-tokens Source: https://api.mittwald.de/v2/openapi.json API endpoint for GET /v2/users/self/api-tokens ```markdown ### Parameters - **limit** (integer, query, optional): The max count of resources to return in the list response. - **skip** (integer, query, optional): Number of items to skip. Should be multiple of `limit`. - **page** (integer, query, optional): Page to display. `skip` and `page` end up doing the same. If both `page` and `skip` are set, skip is used. ### Responses #### 200 - A list of ApiTokens. - Array of de.mittwald.v1.signup.ApiToken #### 429 - response - **message** (string) (example: "too many requests") - **type** (string) (example: "RateLimitError") #### default - response **de.mittwald.v1.commons.Error** - **message** (string) (required) (example: "Something went wrong") - **type** (string) (required) (example: "InternalServerError") ### Example Usage ```bash curl -X GET "https://api.example.com/v2/users/self/api-tokens?limit=0&skip=0&page=0" ``` ```