Skip to main content

Mittwald API (2.0)

Download OpenAPI specification:Download

Introduction

This OpenAPI spec documents the mittwald API. It follows the OpenAPI 3.0.0 specification.

Authentication

You will need an API token to access the API. You can obtain one by logging into the mStudio and navigating to the "API Tokens" section in the user menu.

When making requests to the API, you can authenticate by passing your API token in the X-Access-Token header or as a bearer token.

Rate Limiting

Please note that usage of the API is rate-limited to prevent abuse. You can inspect the rate limiting for your current user by observing the X-Ratelimit-* headers included in each response.

mStudio

A main consumer of the mittwald API is the management interface for our customers, the mStudio.

Contact and support

For support, please use the mStudio support area or drop us an email at support@mittwald.de.

For security issues, please report to security@mittwald.de.

Project

The project API allows you to manage your projects, and also any kinds of user memberships concerning these projects.

Accept a ProjectInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectInviteId
required
string <uuid>

ID of the ProjectInvite to be accepted.

Request Body schema: application/json
required
invitationToken
string

Token contained in the invite for authentication.

Responses

Request samples

Content type
application/json
{
  • "invitationToken": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Create a ProjectInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to create a ProjectInvite for.

Request Body schema: application/json
required
mailAddress
required
string <email>

Mail-address of the person to be invited.

membershipExpiresAt
string <date-time>

Time the resulting ProjectMembership should expire at.

message
string

Message contained in the ProjectInvite.

role
required
string (de.mittwald.v1.membership.ProjectRoles)
Enum: "notset" "owner" "emailadmin" "external"

Responses

Request samples

Content type
application/json
{
  • "mailAddress": "user@example.com",
  • "membershipExpiresAt": "2019-08-24T14:15:22Z",
  • "message": "string",
  • "role": "notset"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "information": {
    },
  • "mailAddress": "user@example.com",
  • "membershipExpiresAt": "2019-08-24T14:15:22Z",
  • "message": "string",
  • "projectDescription": "string",
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "role": "notset"
}

List Invites belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to list invites for.

query Parameters
limit
integer
skip
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a Project belonging to a Server.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
serverId
required
string <uuid>

ID of the Server to create the Project for.

Request Body schema: application/json
description
required
string

Name of the Project as it is displayed in the mStudio.

Responses

Request samples

Content type
application/json
{
  • "description": "My first Project!"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

Decline a ProjectInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectInviteId
required
string <uuid>

ID of the ProjectInvite to be declined.

Request Body schema: application/json
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Delete a Project's avatar.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project the avatar should be deleted for.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Request a Project avatar upload.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project you want to request an avatar upload for.

Responses

Response samples

Content type
application/json
{
  • "refId": "639293c5-5581-48d7-94b9-83aceaff93f8",
  • "rules": {
    }
}

Delete a ProjectInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectInviteId
required
string <uuid>

ID of the ProjectInvite to be deleted.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get a ProjectInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectInviteId
required
string

ID of the ProjectInvite to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "information": {
    },
  • "mailAddress": "user@example.com",
  • "membershipExpiresAt": "2019-08-24T14:15:22Z",
  • "message": "string",
  • "projectDescription": "string",
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "role": "notset"
}

Delete a ProjectMembership.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectMembershipId
required
string <uuid>

ID of the ProjectMembership to be deleted.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get a ProjectMembership

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectMembershipId
required
string

ID of the ProjectMembership to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "email": "user@example.com",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "inherited": true,
  • "inviteId": "14ca54c2-5d85-4c93-81b5-495a2e7e0ca4",
  • "memberSince": "2019-08-24T14:15:22Z",
  • "mfa": true,
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "role": "notset",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Update a ProjectMembership.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectMembershipId
required
string <uuid>

ID of the ProjectMembership to be updated.

Request Body schema: application/json
required
expiresAt
string <date-time>

Time the ProjectMembership should expire at.

role
required
string (de.mittwald.v1.membership.ProjectRoles)
Enum: "notset" "owner" "emailadmin" "external"

Responses

Request samples

Content type
application/json
{
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "role": "notset"
}

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Delete a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

The ID of the Project.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "clusterDomain": "project.host",
  • "clusterID": "espelkamp",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "customerId": "f282f1a8-2b15-4b08-9850-6788e3b20136",
  • "description": "My first Project!",
  • "directories": {
    },
  • "disableReason": "maliciousCode",
  • "disabledAt": "2019-08-24T14:15:22Z",
  • "enabled": true,
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "imageRefId": "5d454fad-a07d-467d-829e-f074a16fea81",
  • "isReady": true,
  • "projectHostingId": "a25de6de-e6a3-424e-8829-dfb88b552281",
  • "readiness": "creating",
  • "serverId": "10d2345a-e43d-463d-830e-4f5b19b60d41",
  • "serverShortId": "string",
  • "shortId": "s-4e7tz3",
  • "spec": {
    },
  • "statisticsBaseDomain": "pe-prod.staging.mcloud.services",
  • "status": "pending",
  • "statusSetAt": "2019-08-24T14:15:22Z"
}

Delete a Server's avatar.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
serverId
required
string <uuid>

ID of the Server to delete the avatar for.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Request a Server avatar upload.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
serverId
required
string <uuid>

ID of the Server to request an avatar upload for.

Responses

Response samples

Content type
application/json
{
  • "refId": "639293c5-5581-48d7-94b9-83aceaff93f8",
  • "rules": {
    }
}

Get a ProjectInvite by token.

Authorizations:
de.mittwald.v1.commons.AccessToken
header Parameters
token
required
string

Token of the ProjectInvite to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "information": {
    },
  • "mailAddress": "user@example.com",
  • "membershipExpiresAt": "2019-08-24T14:15:22Z",
  • "message": "string",
  • "projectDescription": "string",
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "role": "notset"
}

Get the executing user's membership in a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to get the membership for.

Responses

Response samples

Content type
application/json
{
  • "email": "user@example.com",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "inherited": true,
  • "inviteId": "14ca54c2-5d85-4c93-81b5-495a2e7e0ca4",
  • "memberSince": "2019-08-24T14:15:22Z",
  • "mfa": true,
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "role": "notset",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Get a Server.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
serverId
required
string

ID of the Server to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "clusterName": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "customerId": "673c107f-75e1-451c-8eaa-5bf101bd2b2c",
  • "description": "My first Server!",
  • "disabledReason": "suspended",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "imageRefId": "5d454fad-a07d-467d-829e-f074a16fea81",
  • "isReady": true,
  • "machineType": {
    },
  • "readiness": "creating",
  • "shortId": "s-4e7tz3",
  • "statisticsBaseDomain": "pe-prod.staging.mcloud.services",
  • "status": "pending",
  • "storage": "50Gi"
}

Leave a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to be left.

Request Body schema: application/json
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

List Memberships belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to list memberships for.

query Parameters
limit
integer
skip
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List ProjectInvites belonging to the executing user.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
limit
integer
skip
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List ProjectMemberships belonging to the executing user.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
limit
integer
skip
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Projects belonging to the executing user.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
customerId
string
Example: customerId=15b8a787-8d46-43b0-907e-01af35032c0a

ID of the Organization to list Projects for.

serverId
string <uuid>

ID of the Server to list Projects for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Servers belonging to the executing user.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
customerId
string

ID of the Organization to list PlacementGroups for. If no ID is provided, the ID of the executing User is used instead.

limit
integer >= 0
page
integer >= 0
skip
integer >= 0

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Resend the mail for a ProjectInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectInviteId
required
string <uuid>

ID of the ProjectInvite to resend the mail for.

Request Body schema: application/json
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Update a Project's description.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to update the description for.

Request Body schema: application/json
description
required
string

Responses

Request samples

Content type
application/json
{
  • "description": "My new description!"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update a Servers's description.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
serverId
required
string <uuid>

ID of the Server to update the description of.

Request Body schema: application/json
description
required
string

Responses

Request samples

Content type
application/json
{
  • "description": "My first Server!"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Backup

The backup API allows you to manage your project backups.

Export a ProjectBackup for download.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectBackupId
required
string <uuid>

ID of the ProjectBackup to export.

Request Body schema: application/json
required
format
required
string
Enum: "tar" "zip"

The desired format to export the ProjectBackup in.

password
string

Password to use to protect the archive.

Responses

Request samples

Content type
application/json
{
  • "format": "tar",
  • "password": "password"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Delete a ProjectBackupExport.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectBackupId
required
string <uuid>

ID if the ProjectBackup to delete the export of.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Create a BackupSchedule for a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to create a BackupSchedule for.

Request Body schema: application/json
required
description
string

Description of the BackupSchedule.

schedule
required
string

Execution schedule in crontab notation.

ttl
required
string

TTL of the BackupSchedule as time string.

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "schedule": "5 4 * * *",
  • "ttl": "7d"
}

Response samples

Content type
application/json
{
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "I'm a ProjectBackupSchedule",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "isSystemBackup": true,
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "schedule": "5 4 * * *",
  • "ttl": "7d",
  • "updatedAt": "2019-08-24T14:15:22Z"
}

List BackupSchedules belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to list BackupSchedules for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a Backup of a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the project to create a Backup for.

Request Body schema: application/json
required
description
string

Description of the Backup.

expirationTime
required
string <date-time>

Time when to expire the Backup.

Responses

Request samples

Content type
application/json
{
  • "description": "I'm a ProjectBackup",
  • "expirationTime": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "createdAt": "2019-08-24T14:15:22Z",
  • "deletable": true,
  • "description": "I'm a ProjectBackup",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "export": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "parentId": "70850378-7d3c-4f45-91b7-942d4dfbbd43",
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "status": "Completed"
}

List Backups belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to get Backups for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete a ProjectBackupSchedule.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectBackupScheduleId
required
string <uuid>

ID of the ProjectBackupSchedule to delete.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get a ProjectBackupSchedule.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectBackupScheduleId
required
string <uuid>

ID of the ProjectBackupSchedule to retrieve.

Responses

Response samples

Content type
application/json
{
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "I'm a ProjectBackupSchedule",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "isSystemBackup": true,
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "schedule": "5 4 * * *",
  • "ttl": "7d",
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Update a ProjectBackupSchedule.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectBackupScheduleId
required
string <uuid>

ID of the ProjectBackupSchedule to be updated.

Request Body schema: application/json
description
string

Description of the ProjectBackupSchedule. Note that the description of isSystemBackup true items cannot be changed.

schedule
string

Execution schedule in crontab notation. Note that the schedule of isSystemBackup true items must be daily once.

ttl
string

TTL of the ProjectBackupSchedule as time string.

Responses

Request samples

Content type
application/json
{
  • "description": "I'm a ProjectBackupSchedule",
  • "schedule": "5 4 * * *",
  • "ttl": "7d"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Delete a ProjectBackup.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectBackupId
required
string <uuid>

ID of the ProjectBackup to be deleted.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get a ProjectBackup.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectBackupId
required
string <uuid>

ID of the ProjectBackup to retrieve.

Responses

Response samples

Content type
application/json
{
  • "createdAt": "2019-08-24T14:15:22Z",
  • "deletable": true,
  • "description": "I'm a ProjectBackup",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "export": {
    },
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "parentId": "70850378-7d3c-4f45-91b7-942d4dfbbd43",
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "status": "Completed"
}

Change the description of a ProjectBackup.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectBackupId
required
string <uuid>

ID of the ProjectBackup to change the description of.

Request Body schema: application/json
required
description
string

Description of the ProjectBackup.

Responses

Request samples

Content type
application/json
{
  • "description": "I'm a ProjectBackup"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

SSH/SFTP User

The SSH/SFTP User API allows you to manage your SSH/SFTP users within a project.

Create an SFTPUser for a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to create an SFTPUser for.

Request Body schema: application/json
required
accessLevel
string
Enum: "read" "full"
required
object or object (de.mittwald.v1.sshuser.Authentication)

Method of authentication for an SFTPUser or SSHUser. Can be password or public-keys.

description
required
string
directories
required
Array of strings non-empty
expiresAt
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "accessLevel": "read",
  • "authentication": {
    },
  • "description": "string",
  • "directories": [
    ],
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "accessLevel": "full",
  • "active": true,
  • "authUpdatedAt": "2019-08-24T14:15:22Z",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "string",
  • "directories": [
    ],
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "hasPassword": true,
  • "id": "string",
  • "projectId": "string",
  • "publicKeys": [
    ],
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "userName": "string"
}

Get all SFTPUsers for a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to request SFTPUsers for.

query Parameters
limit
integer
skip
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete an SFTPUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sftpUserId
required
string

ID of the SFTPUser to be deleted.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get an SFTPUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sftpUserId
required
string

ID of the SFTPUser to get.

Responses

Response samples

Content type
application/json
{
  • "accessLevel": "full",
  • "active": true,
  • "authUpdatedAt": "2019-08-24T14:15:22Z",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "string",
  • "directories": [
    ],
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "hasPassword": true,
  • "id": "string",
  • "projectId": "string",
  • "publicKeys": [
    ],
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "userName": "string"
}

Update an SFTPUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sftpUserId
required
string

ID of the SFTPUser to be updated.

Request Body schema: application/json
accessLevel
string
Enum: "read" "full"
active
boolean
description
string
directories
Array of strings non-empty
expiresAt
string <date-time>
password
string
Array of objects (de.mittwald.v1.sshuser.PublicKey)

Responses

Request samples

Content type
application/json
{
  • "accessLevel": "read",
  • "active": true,
  • "description": "string",
  • "directories": [
    ],
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "password": "string",
  • "publicKeys": [
    ]
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Create an SSHUser for a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to create an SSHUser for.

Request Body schema: application/json
required
required
object or object (de.mittwald.v1.sshuser.Authentication)

Method of authentication for an SFTPUser or SSHUser. Can be password or public-keys.

description
required
string
expiresAt
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "authentication": {
    },
  • "description": "string",
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "active": true,
  • "authUpdatedAt": "2019-08-24T14:15:22Z",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "string",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "hasPassword": true,
  • "id": "string",
  • "projectId": "string",
  • "publicKeys": [
    ],
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "userName": "string"
}

Get all SSHUsers for a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to retrieve SSHUsers for.

query Parameters
limit
integer
skip
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete an SSHUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sshUserId
required
string

ID of the SSHUser to be deleted.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get an SSHUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sshUserId
required
string

ID of the SSHUser to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "authUpdatedAt": "2019-08-24T14:15:22Z",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "string",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "hasPassword": true,
  • "id": "string",
  • "projectId": "string",
  • "publicKeys": [
    ],
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "userName": "string"
}

Update an SSHUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sshUserId
required
string

ID of the SSHUser to be updated.

Request Body schema: application/json
active
boolean
description
string
expiresAt
string <date-time>
password
string
Array of objects (de.mittwald.v1.sshuser.PublicKey)

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "description": "string",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "password": "string",
  • "publicKeys": [
    ]
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Cronjob

The cronjob API allows you to manage cronjobs within a project.

Abort a CronjobExecution.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
cronjobId
required
string <uuid>

ID of the CronjobExecution to be aborted.

executionId
required
string
Example: cron-bd26li-28027320
Request Body schema: application/json
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Create a Cronjob.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project you want to create a Cronjob for.

Request Body schema: application/json

cronjob

active
required
boolean
appId
required
string <uuid>
description
required
string
required
de.mittwald.v1.cronjob.CronjobUrl (object) or de.mittwald.v1.cronjob.CronjobCommand (object)
email
string <email>
interval
required
string
timeout
required
number [ 1 .. 86400 ]

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "appId": "28c365d5-df94-4a54-8217-3ce51d068868",
  • "description": "i am a cronjob",
  • "destination": {},
  • "email": "user@example.com",
  • "interval": "*/5 * * * *",
  • "timeout": 1
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

List Cronjobs belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project for which to list Cronjobs for.

query Parameters
limit
integer >= 0
skip
integer >= 0
page
integer >= 0

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Trigger a Cronjob.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
cronjobId
required
string <uuid>

ID of the Cronjob to trigger.

Request Body schema: application/json
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "id": "string"
}

List CronjobExecutions belonging to a Cronjob.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
cronjobId
required
string <uuid>

ID of the Cronjob for which to list CronjobExecutions for.

query Parameters
limit
integer >= 0
skip
integer >= 0
page
integer >= 0
since
string <date-time>
until
string <date-time>
status
string
Example: status=Complete

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete a Cronjob.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
cronjobId
required
string <uuid>

ID of the Cronjob to delete.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a Cronjob.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
cronjobId
required
string <uuid>

ID of the Cronjob to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "appId": "28c365d5-df94-4a54-8217-3ce51d068868",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "i am a cronjob",
  • "destination": {},
  • "email": "user@example.com",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "interval": "*/5 * * * *",
  • "latestExecution": {
    },
  • "nextExecutionTime": "2019-08-24T14:15:22Z",
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "shortId": "cron-bd26li",
  • "timeout": 1,
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Update a Cronjob.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
cronjobId
required
string <uuid>

ID of the Cronjob to be updated.

Request Body schema: application/json
active
boolean
description
string
de.mittwald.v1.cronjob.CronjobUrl (object) or de.mittwald.v1.cronjob.CronjobCommand (object)
email
string <email>
interval
string
timeout
number [ 1 .. 86400 ]

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "description": "i am a cronjob",
  • "destination": {},
  • "email": "user@example.com",
  • "interval": "*/5 * * * *",
  • "timeout": 1
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a CronjobExecution.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
executionId
required
string
Example: cron-bd26li-28027320

ID of the CronjobExecution to be retrieved.

cronjobId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "abortedBy": {
    },
  • "durationInMilliseconds": 12374,
  • "end": "2019-08-24T14:15:22Z",
  • "executionEnd": "2019-08-24T14:15:22Z",
  • "executionStart": "2019-08-24T14:15:22Z",
  • "id": "cron-bd26li-28027320",
  • "logPath": "/var/log/cronjobs/cron-bd26li-28027320.log",
  • "start": "2019-08-24T14:15:22Z",
  • "status": "Complete",
  • "successful": true,
  • "triggeredBy": {
    }
}

Update a Cronjob's app id.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
cronjobId
required
string <uuid>

ID of the Cronjob to update.

Request Body schema: application/json

ID of the app to set.

appId
required
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "appId": "28c365d5-df94-4a54-8217-3ce51d068868"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

App

The App API allows you to manage your apps within a project, and all the system softwares that are installed as dependencies.

Trigger a runtime action belonging to an AppInstallation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appInstallationId
required
string
action
required
string (de.mittwald.v1.app.Action)
Enum: "start" "stop" "restart"

An Action is a string that describes a runtime concerning action which can be executed on an AppInstallation or an App can be capable of.

Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get an App.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "actionCapabilities": [
    ],
  • "id": "string",
  • "name": "string",
  • "tags": [
    ]
}

Get an AppInstallation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appInstallationId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "appId": "28c365d5-df94-4a54-8217-3ce51d068868",
  • "appVersion": {
    },
  • "customDocumentRoot": "string",
  • "description": "string",
  • "disabled": false,
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "installationPath": "string",
  • "linkedDatabases": [
    ],
  • "processes": [
    ],
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "screenshotId": "0e72f9bc-74b1-4f8d-8cd1-3ecd9226451e",
  • "screenshotRef": "string",
  • "shortId": "a-XXXXXX",
  • "systemSoftware": [
    ],
  • "updatePolicy": "none",
  • "userInputs": [
    ]
}

Update properties belonging to an AppInstallation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appInstallationId
required
string <uuid>
Request Body schema: application/json
required

Properties to update for an AppInstallation.

appVersionId
string <uuid>
customDocumentRoot
string
description
string
object
updatePolicy
string (de.mittwald.v1.app.AppUpdatePolicy)
Enum: "none" "patchLevel" "all"

AppUpdatePolicy describes which updates should be applied automatically by our systems.

Array of objects (de.mittwald.v1.app.SavedUserInput)

Responses

Request samples

Content type
application/json
{
  • "appVersionId": "043bcc03-0ebb-4d3f-a077-563dc63dbd08",
  • "customDocumentRoot": "string",
  • "description": "string",
  • "systemSoftware": {
    },
  • "updatePolicy": "none",
  • "userInputs": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Trigger an uninstallation process for an AppInstallation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appInstallationId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get an AppVersion.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appId
required
string <uuid>
appVersionId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "appId": "string",
  • "breakingNote": {},
  • "databases": [
    ],
  • "docRoot": "string",
  • "docRootUserEditable": true,
  • "externalVersion": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "internalVersion": "string",
  • "recommended": true,
  • "requestHandler": {
    },
  • "systemSoftwareDependencies": [
    ],
  • "userInputs": [
    ]
}

Get the installed `SystemSoftware' for a specific `AppInstallation`.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appInstallationId
required
string <uuid>
query Parameters
tagFilter
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get the missing requirements of an appInstallation for a specific target AppVersion.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appInstallationId
required
string <uuid>
query Parameters
targetAppVersionID
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "missingSystemSoftwareDependencies": [
    ],
  • "missingUserInputs": [
    ]
}

Get a SystemSoftware.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
systemSoftwareId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "meta": {
    },
  • "name": "string",
  • "tags": [
    ]
}

Get a SystemSoftwareVersion.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
systemSoftwareId
required
string <uuid>
systemSoftwareVersionId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "expiryDate": "2019-08-24T14:15:22Z",
  • "externalVersion": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "internalVersion": "string",
  • "recommended": true,
  • "systemSoftwareDependencies": [
    ],
  • "userInputs": [
    ]
}

List AppInstallations belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>
query Parameters
limit
integer >= 0
page
integer >= 0
skip
integer >= 0

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Request an AppInstallation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>
Request Body schema: application/json
required
appVersionId
required
string <uuid>
description
required
string
updatePolicy
required
string (de.mittwald.v1.app.AppUpdatePolicy)
Enum: "none" "patchLevel" "all"

AppUpdatePolicy describes which updates should be applied automatically by our systems.

required
Array of objects (de.mittwald.v1.app.SavedUserInput)

Responses

Request samples

Content type
application/json
{
  • "appVersionId": "043bcc03-0ebb-4d3f-a077-563dc63dbd08",
  • "description": "string",
  • "updatePolicy": "none",
  • "userInputs": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

List Apps.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
limit
integer >= 0
page
integer >= 0
skip
integer >= 0

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List AppVersions belonging to an App.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appId
required
string <uuid>
query Parameters
recommended
boolean

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List SystemSoftwares.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
limit
integer >= 0
page
integer >= 0
skip
integer >= 0

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List SystemSoftwareVersions belonging to a SystemSoftware.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
systemSoftwareId
required
string <uuid>
query Parameters
versionRange
string
recommended
boolean

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List update candidates belonging to an AppVersion.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appId
required
string <uuid>
baseAppVersionId
required
string <uuid>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Request a copy of an AppInstallation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appInstallationId
required
string <uuid>
Request Body schema: application/json
required

Properties to copy an app installation.

description
required
string
targetProjectId
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "targetProjectId": "12c621fc-9c1e-4a5b-8872-128a71b0fe83"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

Get runtime status belonging to an AppInstallation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appInstallationId
required
string

Responses

Response samples

Content type
application/json
{
  • "lastExitCode": 0,
  • "logFileLocation": "string",
  • "state": "running",
  • "uptimeSeconds": 0
}

Create linkage between an AppInstallation and DatabaseUsers.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
appInstallationId
required
string <uuid>
databaseId
required
string <uuid>
Request Body schema: application/json
required

Properties to update for the specified system software.

required
object
property name*
additional property
string

Responses

Request samples

Content type
application/json
{
  • "databaseUserIds": {
    }
}

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Project File System

The filesystem API allows you to directly access the filesystem of your project.

List directories belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to list the directories for.

query Parameters
directory
string

The directory to start listing subdirectories from.

name
string

Search for specific filenames, only. The name may be a glob expression.

max_depth
integer

The nesting depth for recursively listing directory contents.

type
Array of strings

One of file or directory (may be specified multiple times), to restrict results to directory items of this specific type.

executable
boolean

Set to true to constrain search results to executable files.

hidden
boolean

Set to true to include hidden files. (with . prefix in the search results).

Responses

Response samples

Content type
application/json
{
  • "absolutePath": "string",
  • "isDirectory": true,
  • "isExecutable": true,
  • "isFile": true,
  • "isSymlink": true,
  • "items": [
    ],
  • "name": "string",
  • "size": 0,
  • "target": "string"
}

Get a Project directory filesystem usage.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project.

query Parameters
directory
string
Example: directory=/home/example.log

Starting directory for the disk usage calculation.

Responses

Response samples

Content type
application/json
{
  • "path": "string",
  • "totalBytes": 0,
  • "usedBytes": 0
}

Get a Project file's content.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project.

query Parameters
file
string
Example: file=/home/example.log

Name of the file.

inline
boolean

Set to true to serve the file with Content-Disposition: inline. Otherwise, it will be served with Content-Disposition: attachment. filename=...

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get a Project's file/filesystem authorization token.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to retrieve an authorization token for.

Responses

Response samples

Content type
application/json
{
  • "jwt": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkFkYSBMb3ZlbGFjZSIsImlhdCI6MTUxNjIzOTAyMn0.sMjBP_p34T5mbJTVdEWQ8i2hQPVxsmlt8L6-rKpCczo"
}

Get a Project file's information.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project.

query Parameters
file
string
Example: file=/home/example.log

Name of the file to retrieve.

Responses

Response samples

Content type
application/json
{
  • "absolutePath": "string",
  • "isDirectory": true,
  • "isExecutable": true,
  • "isFile": true,
  • "isSymlink": true,
  • "items": [
    ],
  • "name": "string",
  • "size": 0,
  • "target": "string"
}

Contract

The contract API allows you to manage your contracts and orders

Cancel the Termination for the referred ContractItem.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
contractId
required
string <uuid>
Example: f6bb2d44-e6be-46dc-96f7-9602a7177a75

The uuid of the Contract where the terminated ContractItem belongs to.

contractItemId
required
string <uuid>
Example: 4d495bcd-4d4c-4bf9-b1c8-72b99a2ea7f2

The uuid of the ContractItem for which the Termination is to be cancelled. Only works for ContractItem for which a Termination is stored.

Responses

Response samples

Content type
application/json
{
  • "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
  • "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
  • "isCancelled": true
}

Schedule the Termination of a ContractItem.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
contractId
required
string <uuid>
Example: f6bb2d44-e6be-46dc-96f7-9602a7177a75
contractItemId
required
string <uuid>
Example: 19b2d44-e6be-46dc-96f7-9602a7177a75
Request Body schema: application/json
required
reason
string

A reason for the Termination can be given as plain text.

terminationTargetDate
string <date-time>

The termination date has to be a valid date according to activation and contract period of the ContractItem. If none given, the next possible termination date will be used.

Responses

Request samples

Content type
application/json
{
  • "reason": "Server wird nicht mehr benötigt",
  • "terminationTargetDate": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
  • "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
  • "reason": "Server wird nicht mehr benötigt",
  • "terminationTargetDate": "2019-08-24T14:15:22Z"
}

Cancel the TariffChange for the referred ContractItem.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
contractId
required
string <uuid>
Example: 154219e9-bf4a-4f41-9c72-0449a98db62f
contractItemId
required
string <uuid>
Example: f6bb2d44-e6be-46dc-96f7-9602a7177a75

The uuid of the active ContractItem (not the one that would replace the old one after the TariffChange) for which the TariffChange is to be cancelled. Only works for ContractItems for which a TariffChange is stored.

Responses

Response samples

Content type
application/json
{
  • "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
  • "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
  • "isCancelled": true
}

Cancel the Termination for the referred Contract.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
contractId
required
string <uuid>
Example: f6bb2d44-e6be-46dc-96f7-9602a7177a75

The uuid of the Contract for which the Termination is to be cancelled. Only works for Contracts for which a Termination is stored.

Responses

Response samples

Content type
application/json
{
  • "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
  • "isCancelled": true
}

Schedule the Termination of a Contract.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
contractId
required
string <uuid>
Example: f6bb2d44-e6be-46dc-96f7-9602a7177a75

The uuid of the Contract to be terminated.

Request Body schema: application/json
required
reason
string

A reason for the termination can be given as plain text.

terminationTargetDate
string <date-time>

The termination date has to be a valid date according to activation and contract period of the base ContractItem. If none given, the next possible termination date will be used.

Responses

Request samples

Content type
application/json
{
  • "reason": "Projekt wird nicht mehr benötigt",
  • "terminationTargetDate": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
  • "itemsScheduledForTermination": [
    ],
  • "reason": "Projekt wird nicht mehr benötigt",
  • "terminationTargetDate": "2019-08-24"
}

Return the BaseItem of the Contract with the given ID.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
contractId
required
string <uuid>
Example: 97cecfa0-2c3c-4272-a510-c775fcaade01

The uuid of the Contract from which the BaseItem is to be issued.

Responses

Response samples

Content type
application/json
{
  • "activationDate": "2019-08-24T14:15:22Z",
  • "aggregateReference": {
    },
  • "articles": [
    ],
  • "contractPeriod": 1,
  • "description": "Space-Server: \"Mein Space-Server\"",
  • "freeTrialDays": 10,
  • "groupByProjectId": "0a495986-e1e5-4f2f-a94d-23ba3213e97b",
  • "invoiceStop": "2019-08-24T14:15:22Z",
  • "invoicingPeriod": 1,
  • "isActivated": true,
  • "isBaseItem": true,
  • "isInFreeTrial": true,
  • "isInclusive": true,
  • "itemId": "f11b669d-7201-4c21-88af-d85092f0c005",
  • "nextPossibleDowngradeDate": "2019-08-24T14:15:22Z",
  • "nextPossibleTerminationDate": "2019-08-24T14:15:22Z",
  • "nextPossibleUpgradeDate": "2019-08-24T14:15:22Z",
  • "orderDate": "2019-08-24T14:15:22Z",
  • "orderId": "b3e1eced-f2bd-4d8c-9765-fbc9d1d222d5",
  • "replacedByItem": "bf66eb39-2f73-475e-8998-82767def33a7",
  • "tariffChange": {
    },
  • "termination": {
    },
  • "totalPrice": {
    }
}

Return the Contract for the given Domain.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
Example: 0a6de990-b33f-4cf8-adba-025a26515657

Responses

Response samples

Content type
application/json
{
  • "additionalItems": [
    ],
  • "baseItem": {
    },
  • "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
  • "contractNumber": "V1234567",
  • "customerId": "3a201faa-5160-47e0-a758-325ba794b543",
  • "termination": {
    }
}

Return the Contract for the given Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>
Example: 0a6de990-b33f-4cf8-adba-025a26515657

Responses

Response samples

Content type
application/json
{
  • "additionalItems": [
    ],
  • "baseItem": {
    },
  • "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
  • "contractNumber": "V1234567",
  • "customerId": "3a201faa-5160-47e0-a758-325ba794b543",
  • "termination": {
    }
}

Return the Contract for the given Server.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
serverId
required
string <uuid>
Example: 0a6de990-b33f-4cf8-adba-025a26515657

Responses

Response samples

Content type
application/json
{
  • "additionalItems": [
    ],
  • "baseItem": {
    },
  • "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
  • "contractNumber": "V1234567",
  • "customerId": "3a201faa-5160-47e0-a758-325ba794b543",
  • "termination": {
    }
}

Get the ContractItem with the given ID.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
contractId
required
string <uuid>
Example: 97cecfa0-2c3c-4272-a510-c775fcaade01

The uuid of the Contract where the desired ContractItem belongs to.

contractItemId
required
string <uuid>
Example: 19b3e88e-c656-4440-8b89-efbf881b9c6f

The uuid of the ContractItem to be returned.

Responses

Response samples

Content type
application/json
{
  • "activationDate": "2019-08-24T14:15:22Z",
  • "aggregateReference": {
    },
  • "articles": [
    ],
  • "contractPeriod": 1,
  • "description": "Space-Server: \"Mein Space-Server\"",
  • "freeTrialDays": 10,
  • "groupByProjectId": "0a495986-e1e5-4f2f-a94d-23ba3213e97b",
  • "invoiceStop": "2019-08-24T14:15:22Z",
  • "invoicingPeriod": 1,
  • "isActivated": true,
  • "isBaseItem": true,
  • "isInFreeTrial": true,
  • "isInclusive": true,
  • "itemId": "f11b669d-7201-4c21-88af-d85092f0c005",
  • "nextPossibleDowngradeDate": "2019-08-24T14:15:22Z",
  • "nextPossibleTerminationDate": "2019-08-24T14:15:22Z",
  • "nextPossibleUpgradeDate": "2019-08-24T14:15:22Z",
  • "orderDate": "2019-08-24T14:15:22Z",
  • "orderId": "b3e1eced-f2bd-4d8c-9765-fbc9d1d222d5",
  • "replacedByItem": "bf66eb39-2f73-475e-8998-82767def33a7",
  • "tariffChange": {
    },
  • "termination": {
    },
  • "totalPrice": {
    }
}

Returns the Contract with the given ID.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
contractId
required
string <uuid>
Example: 97cecfa0-2c3c-4272-a510-c775fcaade01

The uuid of the Contract to be returned.

Responses

Response samples

Content type
application/json
{
  • "additionalItems": [
    ],
  • "baseItem": {
    },
  • "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
  • "contractNumber": "V1234567",
  • "customerId": "3a201faa-5160-47e0-a758-325ba794b543",
  • "termination": {
    }
}

Return the next TerminationDate for the ContractItem with the given ID.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
contractId
required
string <uuid>
Example: 97cecfa0-2c3c-4272-a510-c775fcaade01

The uuid of the Contract where the desired ContractItem belongs to.

contractItemId
required
string <uuid>
Example: 19b3e88e-c656-4440-8b89-efbf881b9c6f

The uuid of the ContractItem whose next TerminationDate is to be displayed.

Responses

Response samples

Content type
application/json
{
  • "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
  • "nextTerminationDate": "2019-08-24T14:15:22Z"
}

Return a list of Contracts for the given Customer.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string <uuid>
Example: 97cecfa0-2c3c-4272-a510-c775fcaade01

The uuid of the Customer from whom all Contracts are to be returned.

query Parameters
limit
integer
Example: limit=1000
skip
integer
page
integer
Example: page=1

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get details of an Invoice. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string
Example: edefeee4-e8e9-4e2d-ab95-9a2eb6104cfb
invoiceId
required
string <uuid>
Example: 154219e9-bf4a-4f41-9c72-0449a98db62f

Responses

Response samples

Content type
application/json
{
  • "amountPaid": 500,
  • "cancellation": {
    },
  • "cancellationOf": "f28d1210-4d10-446e-9a3b-d0f512559947",
  • "currency": "EUR",
  • "customerId": "e0a3b0e0-0e0e-0e0e-0e0e-0e0e0e0e0e0e",
  • "date": "2019-08-24T14:15:22Z",
  • "groups": [
    ],
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "invoiceNumber": "RG1234567",
  • "invoiceType": "REGULAR",
  • "paymentSettings": {
    },
  • "pdfId": "246b0b51-a4b3-4d09-afbe-ef4f373ccfcf",
  • "recipient": {
    },
  • "status": "NEW",
  • "totalGross": 595,
  • "totalNet": 500,
  • "vatId": "DE123456789"
}

Get details of an Invoice.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
invoiceId
required
string <uuid>
Example: 154219e9-bf4a-4f41-9c72-0449a98db62f

Responses

Response samples

Content type
application/json
{
  • "amountPaid": 500,
  • "cancellation": {
    },
  • "cancellationOf": "f28d1210-4d10-446e-9a3b-d0f512559947",
  • "currency": "EUR",
  • "customerId": "e0a3b0e0-0e0e-0e0e-0e0e-0e0e0e0e0e0e",
  • "date": "2019-08-24T14:15:22Z",
  • "groups": [
    ],
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "invoiceNumber": "RG1234567",
  • "invoiceType": "REGULAR",
  • "paymentSettings": {
    },
  • "pdfId": "246b0b51-a4b3-4d09-afbe-ef4f373ccfcf",
  • "recipient": {
    },
  • "status": "NEW",
  • "totalGross": 595,
  • "totalNet": 500,
  • "vatId": "DE123456789"
}

Get InvoiceSettings of a Customer.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string
Example: edefeee4-e8e9-4e2d-ab95-9a2eb6104cfb

Responses

Response samples

Content type
application/json
{
  • "additionalEmailRecipients": [
    ],
  • "debitPaymentStopUntil": "2019-08-24T14:15:22Z",
  • "id": "5f9b9b9b-9b9b-9b9b-9b9b-9b9b9b9b9b9b",
  • "invoicePeriod": 1,
  • "lastBankingInformation": {
    },
  • "paymentSettings": {
    },
  • "printedInvoices": true,
  • "recipient": {
    },
  • "recipientSameAsOwner": true,
  • "status": [
    ],
  • "targetDay": 15
}

Update InvoiceSettings of a Customer.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string
Example: edefeee4-e8e9-4e2d-ab95-9a2eb6104cfb
Request Body schema: application/json
required
additionalEmailRecipients
Array of strings <email> [ items <email > ]
invoicePeriod
required
integer >= 0
required
de.mittwald.v1.invoice.PaymentSettingsDebit (object) or de.mittwald.v1.invoice.PaymentSettingsInvoice (object) (de.mittwald.v1.invoice.PaymentSettings)
printedInvoices
boolean
object (de.mittwald.v1.invoice.Recipient)
recipientSameAsOwner
boolean
targetDay
integer [ 0 .. 28 ]

Responses

Request samples

Content type
application/json
{
  • "additionalEmailRecipients": [
    ],
  • "invoicePeriod": 1,
  • "paymentSettings": {
    },
  • "printedInvoices": true,
  • "recipient": {
    },
  • "recipientSameAsOwner": true,
  • "targetDay": 15
}

Response samples

Content type
application/json
{
  • "additionalEmailRecipients": [
    ],
  • "debitPaymentStopUntil": "2019-08-24T14:15:22Z",
  • "id": "5f9b9b9b-9b9b-9b9b-9b9b-9b9b9b9b9b9b",
  • "invoicePeriod": 1,
  • "lastBankingInformation": {
    },
  • "paymentSettings": {
    },
  • "printedInvoices": true,
  • "recipient": {
    },
  • "recipientSameAsOwner": true,
  • "status": [
    ],
  • "targetDay": 15
}

Request an Access Token for the Invoice file.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string
Example: edefeee4-e8e9-4e2d-ab95-9a2eb6104cfb
invoiceId
required
string <uuid>
Example: 154219e9-bf4a-4f41-9c72-0449a98db62f

Responses

Response samples

Content type
application/json
{
  • "accessToken": "string",
  • "expiresAt": "2019-08-24T14:15:22Z"
}

List Invoices of a Customer.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string
Example: ac3c8bbe-4c44-4f34-b6c7-1e6af48c3a7c
query Parameters
invoiceTypes
Array of strings
Items Enum: "REGULAR" "REISSUE" "CORRECTION" "CANCELLATION"
Example: invoiceTypes=REGULAR&invoiceTypes=CORRECTION
limit
integer
Example: limit=1000
skip
integer
page
integer
Example: page=1

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create an Order.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required

The Order to create.

de.mittwald.v1.order.ProjectHostingOrder (object) or de.mittwald.v1.order.ServerOrder (object) or de.mittwald.v1.order.DomainOrder (object)
orderType
string
Enum: "domain" "projectHosting" "server"

Responses

Request samples

Content type
application/json
{
  • "orderData": {
    },
  • "orderType": "domain"
}

Response samples

Content type
application/json
{
  • "orderId": "string"
}

Create TariffChange Order.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required

The Order to create.

de.mittwald.v1.order.ProjectHostingTariffChange (object) or de.mittwald.v1.order.ServerTariffChange (object)
tariffChangeType
string
Enum: "projectHosting" "server"

Responses

Request samples

Content type
application/json
{
  • "tariffChangeData": {
    },
  • "tariffChangeType": "projectHosting"
}

Response samples

Content type
application/json
{
  • "orderId": "string"
}

Get Order for Customer.

Get details of a single Order, User must have access to the Order/Customer.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
orderId
required
string <uuid>
Example: 123e4567-e89b-12d3-a456-426614174000

Responses

Response samples

Content type
application/json
{
  • "contractChangeContractId": "e2a9194a-38da-44cf-8a75-e319022b512d",
  • "customerId": "4317f5c5-1ea8-4084-a9f1-3a8e7e1c94ff",
  • "dueDate": "2019-08-24T14:15:22Z",
  • "invoicingPeriod": 12,
  • "items": [
    ],
  • "orderDate": "2019-08-24T14:15:22Z",
  • "orderId": "b3e1eced-f2bd-4d8c-9765-fbc9d1d222d5",
  • "orderNumber": "5XXXXXX",
  • "profile": {
    },
  • "status": "NEW",
  • "summary": {
    },
  • "type": "NEW_ORDER"
}

Get list of Orders of a Customer.

The list of Orders of a Customer the User has access to, can be filtered by orderStatus, articleTemplate and count.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string
Example: 154219e9-bf4a-4f41-9c72-0449a98db62f
query Parameters
limit
integer >= 0
Example: limit=1000
skip
integer >= 0
page
integer >= 0
Example: page=1
includesStatus
Array of strings (de.mittwald.v1.order.OrderStatus)
Items Enum: "NEW" "CONFIRMED" "REJECTED" "ABORTED" "EXECUTED"
Example:
excludesStatus
Array of strings (de.mittwald.v1.order.OrderStatus)
Items Enum: "NEW" "CONFIRMED" "REJECTED" "ABORTED" "EXECUTED"
Example:
templateNames
Array of strings
Example: templateNames=PS23-BASIC-0001

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get list of Orders of a Project.

The list of Order of a Project the User has access to, can be filtered by orderStatus, articleTemplate and count.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>
Example: e7c4b2e6-e38f-4c9b-8583-08bd627ff4d8
query Parameters
limit
integer >= 0
Example: limit=1000
skip
integer >= 0
page
integer >= 0
Example: page=1
includesStatus
Array of strings (de.mittwald.v1.order.OrderStatus)
Items Enum: "NEW" "CONFIRMED" "REJECTED" "ABORTED" "EXECUTED"
Example:
excludesStatus
Array of strings (de.mittwald.v1.order.OrderStatus)
Items Enum: "NEW" "CONFIRMED" "REJECTED" "ABORTED" "EXECUTED"
Example:
templateNames
Array of strings
Example: templateNames=PS23-BASIC-0001

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Preview Order.

Request Body schema: application/json
required

Your order information

de.mittwald.v1.order.ProjectHostingOrderPreview (object) or de.mittwald.v1.order.ServerOrderPreview (object) or de.mittwald.v1.order.DomainOrderPreview (object)
orderType
string
Enum: "domain" "projectHosting" "server"

Responses

Request samples

Content type
application/json
{
  • "orderData": {
    },
  • "orderType": "domain"
}

Response samples

Content type
application/json
Example
{
  • "machineTypePrice": 500,
  • "storagePrice": 1000,
  • "totalPrice": 1500
}

Preview TariffChange.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required

Your order information

de.mittwald.v1.order.ProjectHostingTariffChange (object) or de.mittwald.v1.order.ServerTariffChange (object)
tariffChangeType
string
Enum: "projectHosting" "server"

Responses

Request samples

Content type
application/json
{
  • "tariffChangeData": {
    },
  • "tariffChangeType": "projectHosting"
}

Response samples

Content type
application/json
{
  • "machineTypePrice": 100,
  • "storagePrice": 900,
  • "totalPrice": 1000
}

Database

The database API allows you to manage your databases, like MySQL and Redis databases.

Create a MySQLDatabase with a MySQLUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to create a MySQLDatabase for.

Request Body schema: application/json
required
object (de.mittwald.v1.database.CreateMySqlDatabase)
required
object (de.mittwald.v1.database.CreateMySqlUserWithDatabase)

Responses

Request samples

Content type
application/json
{
  • "database": {
    },
  • "user": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

List MySQLDatabases belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to list MySQLDatabases for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a MySQLUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlDatabaseId
required
string <uuid>

ID of the MySQLDatabase to create a MySQLUser for.

Request Body schema: application/json
accessIpMask
string
accessLevel
required
string
Enum: "full" "readonly"
databaseId
required
string <uuid>
description
required
string
externalAccess
boolean
password
required
string

Responses

Request samples

Content type
application/json
{
  • "accessIpMask": "string",
  • "accessLevel": "full",
  • "databaseId": "d0f4f849-8ecf-4909-96bf-7953790e45f9",
  • "description": "string",
  • "externalAccess": true,
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

List MySQLUsers belonging to a Database.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlDatabaseId
required
string <uuid>

ID of the MySQLDatabase to list Users for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a RedisDatabase.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to create a RedisDatabase for.

Request Body schema: application/json
object (de.mittwald.v1.database.RedisDatabaseConfiguration)

The configuration for a RedisDatabase.

description
required
string

A description for the database.

version
required
string

The version the database should use.

Responses

Request samples

Content type
application/json
{
  • "description": "My first RedisDatabase!",
  • "version": "7.0"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

List RedisDatabases belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to list RedisDatabases for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete a MySQLDatabase.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlDatabaseId
required
string <uuid>

ID of the MySQLDatabase to be deleted.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a MySQLDatabase.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlDatabaseId
required
string <uuid>

ID of the MySQLDatabase to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "characterSettings": {
    },
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "string",
  • "finalizers": [
    ],
  • "hostname": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "isReady": true,
  • "isShared": true,
  • "name": "string",
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "status": "pending",
  • "statusSetAt": "2019-08-24T14:15:22Z",
  • "storageUsageInBytes": 0,
  • "storageUsageInBytesSetAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "version": "string"
}

Delete a MySQLUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlUserId
required
string <uuid>

ID of the MySQLUser to delete.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a MySQLUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlUserId
required
string <uuid>

ID of the MySQLUser to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "accessIpMask": "string",
  • "accessLevel": "full",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "databaseId": "d0f4f849-8ecf-4909-96bf-7953790e45f9",
  • "description": "string",
  • "disabled": true,
  • "externalAccess": true,
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "mainUser": true,
  • "name": "string",
  • "passwordUpdatedAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Update a MySQLUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlUserId
required
string <uuid>

ID of the MySQLUser to update.

Request Body schema: application/json
accessIpMask
string
accessLevel
required
string
Enum: "full" "readonly"
description
required
string
externalAccess
boolean

Responses

Request samples

Content type
application/json
{
  • "accessIpMask": "string",
  • "accessLevel": "full",
  • "description": "string",
  • "externalAccess": true
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Delete a RedisDatabase.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
redisDatabaseId
required
string <uuid>

ID of the RedisDatabase to delete.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a RedisDatabase.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
redisDatabaseId
required
string <uuid>

ID of the RedisDatabase to retrieve.

Responses

Response samples

Content type
application/json
{
  • "configuration": {
    },
  • "createdAt": "2023-03-28T13:15:00.000Z",
  • "description": "My first RedisDatabase!",
  • "finalizers": [
    ],
  • "hostname": "redis-xxxxxx.pg-example.db.example.com",
  • "id": "fcfe9aea-84d5-46eb-ac6f-a0ccffa908b1",
  • "name": "redis_xxxxxx",
  • "port": 6379,
  • "projectId": "9f2bddf1-dea6-4441-b4fe-a22ff39caff8",
  • "status": "error",
  • "statusSetAt": "2024-03-05T9:26:32.000Z",
  • "storageUsageInBytes": 10485760,
  • "storageUsageInBytesSetAt": "2024-03-05T9:26:32.000Z",
  • "updatedAt": "2023-03-29T15:50:10.000Z",
  • "version": "7.0"
}

Disable a MySQLUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlUserId
required
string <uuid>

ID of the MySQLUser to disable.

Request Body schema: application/json
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Enable a MySQLUser.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlUserId
required
string <uuid>

ID of the MySQLUser to enable.

Request Body schema: application/json
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a MySQLUser's PhpMyAdmin-URL.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlUserId
required
string <uuid>

ID of the MySQLUser for which to get the URL for.

Responses

Response samples

Content type
application/json
{
  • "url": "string"
}

List available MySQL character sets and collations, optionally filtered by a MySQLVersion.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
version
string

ID of the MySQLVersion for which to list the available character sets in the format mysqlXY.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List MySQLVersions.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
projectId
string

ID of the Project to list available MySQLVersions for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List RedisVersions.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
projectId
string

ID of the Project to list available RedisVersions for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update a MySQLDatabase's default character settings.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlDatabaseId
required
string <uuid>

ID of the MySQLDatabase to update.

Request Body schema: application/json

The default character settings to be used for the MySQLDatabase.

required
object (de.mittwald.v1.database.characterSettings)
characterSet
required
string
collation
required
string

Responses

Request samples

Content type
application/json
{
  • "characterSettings": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update a MySQLDatabase's description.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlDatabaseId
required
string <uuid>

ID of the MySQLDatabase to update.

Request Body schema: application/json
description
required
string

Responses

Request samples

Content type
application/json
{
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update a MySQLUser's password.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mysqlUserId
required
string <uuid>

ID of the MySQLUser for which to update the password for.

Request Body schema: application/json
password
required
string

Responses

Request samples

Content type
application/json
{
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update a RedisDatabase's configuration.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
redisDatabaseId
required
string <uuid>

ID of the RedisDatabase to update.

Request Body schema: application/json
object (de.mittwald.v1.database.RedisDatabaseConfiguration)

The configuration for a RedisDatabase.

additionalFlags
Array of strings unique [ items non-empty ]

Additional flags passed to the database.

maxMemory
string

The database's maximum memory. This may be a number, optionally suffixed by one of the IEC binary suffixes Ki, Mi or Gi.

maxMemoryPolicy
string

The database's key eviction policy. See the Redis documentation on key evictions for more information.

persistent
boolean

Persistent status of the database.

Responses

Request samples

Content type
application/json
{
  • "configuration": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update a RedisDatabase's description.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
redisDatabaseId
required
string <uuid>

ID of the RedisDatabase to update.

Request Body schema: application/json
description
required
string

Responses

Request samples

Content type
application/json
{
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Domain

The domain API allows you to manage your domains, DNS records and ingress resources.

Get File Service Reference for a Screenshot of a domain. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
Request Body schema: application/json
required
domainName
required
string
path
required
string

Responses

Request samples

Content type
application/json
{
  • "domainName": "example.com",
  • "path": "/var/www"
}

Response samples

Content type
application/json
{
  • "references": [
    ]
}

Create a DNSZone.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
name
required
string <idn-dnsname>
parentZoneId
required
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "parentZoneId": "fc3f0e90-1ddc-4f5c-986e-6940ca41e6fa"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

Delete a DNSZone.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
dnsZoneId
required
string <uuid>

The ID of the DNSZone to be deleted.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a DNSZone.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
dnsZoneId
required
string <uuid>

The ID of the zone to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "domain": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "recordSet": {
    }
}

List DNSZones belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to list DNSZones for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

updates a-records for a specific zone Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
zoneId
required
string <uuid>

the id of the zone the record belongs to

Request Body schema: application/json
One of
object (de.mittwald.v1.dns.RecordUnset)

Responses

Request samples

Content type
application/json
Example
{ }

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

set a-records managed by ingress for a specific zone Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
zoneId
required
string <uuid>

the id of the zone you want to set managed

Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "ingressId": "4ab452d1-3ba9-4a4a-8778-1fc9f72e294e"
}

updates cname-record for a specific zone Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
zoneId
required
string <uuid>

the id of the zone the record belongs to

Request Body schema: application/json
One of
object (de.mittwald.v1.dns.RecordUnset)

Responses

Request samples

Content type
application/json
Example
{ }

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

updates mx-records for a specific zone Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
zoneId
required
string <uuid>

the id of the zone the record belongs to

Request Body schema: application/json
One of
object (de.mittwald.v1.dns.RecordUnset)

Responses

Request samples

Content type
application/json
Example
{ }

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

sets mx-records to managed for a specific zone Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
zoneId
required
string <uuid>

the id of the zone the record belongs to

Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

updates srv-records for a specific zone Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
zoneId
required
string <uuid>

the id of the zone the record belongs to

Request Body schema: application/json
One of
object (de.mittwald.v1.dns.RecordUnset)

Responses

Request samples

Content type
application/json
Example
{ }

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

updates txt-records for a specific zone Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
zoneId
required
string <uuid>

the id of the zone the record belongs to

Request Body schema: application/json
One of
object (de.mittwald.v1.dns.RecordUnset)

Responses

Request samples

Content type
application/json
Example
{ }

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Set a record set on a DNSZone to managed.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
dnsZoneId
required
string <uuid>

The ID of the DNSZone to set a record set to managed for.

recordSet
required
string
Enum: "a" "mx"

The record set to set to managed.

Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "ingressId": "4ab452d1-3ba9-4a4a-8778-1fc9f72e294e"
}

Update a record set on a DNSZone.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
dnsZoneId
required
string <uuid>

The ID of the DNSZone to update a record set for.

recordSet
required
string
Enum: "a" "mx" "txt" "srv" "cname"

The record set to be updated.

Request Body schema: application/json
One of
object (de.mittwald.v1.dns.RecordUnset)

Responses

Request samples

Content type
application/json
Example
{ }

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Abort a Domain declaration.

Abort an incomplete Domain registration/transfer.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Change the owner contact of a domain. Deprecated

Change the domain owner of a fully registered domain.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
Request Body schema: application/json

The new handle fields for the new owner.

required
Array of objects (de.mittwald.v1.domain.HandleField) non-empty
Array (non-empty)
name
required
string
value
required
string^[0-9a-zA-ZÀ-ÖØ-öø-ÿ /&()+,.@_-]+$

Responses

Request samples

Content type
application/json
{
  • "ownerC": [
    ]
}

Response samples

Content type
application/json
{
  • "isAsync": true,
  • "transactionId": "string"
}

Change the Project relation of a Domain. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
Request Body schema: application/json
projectId
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Check if a Domain is available to register.

If false, you have to start a transfer with an auth code instead.

Request Body schema: application/json
domain
required
string <naked-domain>

Responses

Request samples

Content type
application/json
{
  • "domain": "string"
}

Response samples

Content type
application/json
{
  • "isPremium": true,
  • "registrable": true
}

Check if a Domain is available to register. Deprecated

If false, you have to start a transfer with an auth code instead.

Request Body schema: application/json
domain
required
string <naked-domain>

Responses

Request samples

Content type
application/json
{
  • "domain": "string"
}

Response samples

Content type
application/json
{
  • "available": true
}

List Domains

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
projectId
string <uuid>
page
integer >= 1
limit
integer >= 1
domainSearchName
string

Search for domain names in these list. Works only in combination with projectId. Input will be handled like '%YourInput%'

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Check if a Domain is available to transfer.

Request Body schema: application/json
authCode
required
string
domain
required
string <naked-domain>

Responses

Request samples

Content type
application/json
{
  • "authCode": "string",
  • "domain": "string"
}

Response samples

Content type
application/json
{
  • "reasons": {
    },
  • "transferable": true
}

Create an auth code for a Domains transfer-out process.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "authCode": "string"
}

Change all nameservers of a Domain. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
Request Body schema: application/json
nameservers
Array of strings <idn-hostname> >= 2 items unique [ items <idn-hostname > ]

Responses

Request samples

Content type
application/json
{
  • "nameservers": [
    ]
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the nameservers of a Domain.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
Request Body schema: application/json
nameservers
Array of strings <idn-hostname> >= 2 items unique [ items <idn-hostname > ]

Responses

Request samples

Content type
application/json
{
  • "nameservers": [
    ]
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update an AuthCode. Deprecated

Change a wrong AuthCode of your transfer domain request (declare domain process). This route will also restart the transfer itself.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
Request Body schema: application/json

The new handle fields for the new owner.

authCode
required
string >= 4 characters

Responses

Request samples

Content type
application/json
{
  • "authCode": "string"
}

Response samples

Content type
application/json
{
  • "isAsync": true,
  • "transactionId": "string"
}

Update a Domain's OwnerC handle. Deprecated

This route will also restart the transfer or register itself.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>

The domain id from which the ownerC is to be changed

Request Body schema: application/json

The new handle fields for the new owner.

required
Array of objects (de.mittwald.v1.domain.HandleField) non-empty
Array (non-empty)
name
required
string
value
required
string^[0-9a-zA-ZÀ-ÖØ-öø-ÿ /&()+,.@_-]+$

Responses

Request samples

Content type
application/json
{
  • "ownerC": [
    ]
}

Response samples

Content type
application/json
{
  • "isAsync": true,
  • "transactionId": "string"
}

Delete a Domain.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
query Parameters
transit
boolean

Only for .de Domains.

Responses

Response samples

Content type
application/json
{
  • "isAsync": true,
  • "transactionId": "string"
}

Get a Domain.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "authCode": {
    },
  • "authCode2": {
    },
  • "connected": true,
  • "deleted": true,
  • "domain": "string",
  • "domainId": "8a0b02c3-fdd8-452e-bc6e-ef07a335ec7e",
  • "handles": {
    },
  • "nameservers": [
    ],
  • "processes": [
    ],
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "transferInAuthCode": "string",
  • "usesDefaultNameserver": true
}

Get a HandleSchema. Deprecated

Get required handle fields of a registrar for your domain process (transfer/registration).

path Parameters
domainName
required
string <naked-domain>

The whole domain name

Responses

Response samples

Content type
application/json
{
  • "jsonSchemaAdminC": { },
  • "jsonSchemaOwnerC": { }
}

Get the latest screenshot's FileReference belonging to a Domain.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
Request Body schema: application/json
required
domainName
required
string
path
required
string

Responses

Request samples

Content type
application/json
{
  • "domainName": "example.com",
  • "path": "/var/www"
}

Response samples

Content type
application/json
{
  • "reference": "string"
}

List Domains belonging to a Project. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>
query Parameters
page
integer >= 1
limit
integer >= 1
domainSearchName
string

Search for domain names in these list. Input will be handled like '%YourInput%'

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List the contact schemas for a TLD.

List the contact schemas describing the fields required to register/transfer a Domain.

path Parameters
tld
required
string
Example: value,de

The top level domain to retrieve the schemas for.

Responses

Response samples

Content type
application/json
{
  • "jsonSchemaAdminC": { },
  • "jsonSchemaOwnerC": { }
}

List TLDs.

List the top level domains currently supported by our API.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Resend a Domain email.

Trigger a resend of a confirmation or registrant verification email. Has no effect on .de Domains.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the auth code of a Domain.

Update an incorrect auth code of an ongoing/failed Domain transfer. This route will also restart the transfer itself.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
Request Body schema: application/json
authCode
required
string >= 4 characters

Responses

Request samples

Content type
application/json
{
  • "authCode": "string"
}

Response samples

Content type
application/json
{
  • "isAsync": true,
  • "transactionId": "string"
}

Update a contact of a Domain.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
contact
required
string
Value: "owner"
Request Body schema: application/json

The new contact data of the Domain.

required
Array of objects (de.mittwald.v1.domain.HandleField) non-empty
Array (non-empty)
name
required
string
value
required
string^[0-9a-zA-ZÀ-ÖØ-öø-ÿ /&()+,.@_-]+$

Responses

Request samples

Content type
application/json
{
  • "contact": [
    ]
}

Response samples

Content type
application/json
{
  • "isAsync": true,
  • "transactionId": "string"
}

Update a Domain's project id.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
domainId
required
string <uuid>
Request Body schema: application/json
projectId
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Create an Ingress.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
hostname
required
string <idn-hostname>
required
Array of objects (de.mittwald.v1.ingress.Path)

A list of paths. The default path / is always present and cannot be removed.

projectId
required
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "hostname": "приклад.укр",
  • "paths": [
    ],
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "ownership": {
    }
}

List Ingresses.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
projectId
string <uuid>

ID of the Project to list Ingresses for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete an Ingress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
ingressId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get an Ingress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
ingressId
required
string <uuid>

ID of the Ingress to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "dnsValidationErrors": [
    ],
  • "hostname": "приклад.укр",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "ips": {
    },
  • "isDefault": true,
  • "isDomain": true,
  • "isEnabled": true,
  • "ownership": {
    },
  • "paths": [
    ],
  • "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
  • "tls": {
    }
}

Verifiy the ownership of an Ingress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
ingressId
required
string <uuid>

UUID of the Ingress to verify the ownership for.

Responses

Response samples

Content type
application/json
{ }

List Ingresses belonging to a project. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to list Ingresses for

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update an Ingresses paths. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
ingressId
required
string <uuid>
Request Body schema: application/json
Array
path
required
string
required
de.mittwald.v1.ingress.TargetDirectory (object) or de.mittwald.v1.ingress.TargetUrl (object) or de.mittwald.v1.ingress.TargetInstallation (object) or de.mittwald.v1.ingress.TargetUseDefaultPage (object) or de.mittwald.v1.ingress.TargetContainer (object)

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Update the paths of an Ingress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
ingressId
required
string <uuid>
Request Body schema: application/json
Array
path
required
string
required
de.mittwald.v1.ingress.TargetDirectory (object) or de.mittwald.v1.ingress.TargetUrl (object) or de.mittwald.v1.ingress.TargetInstallation (object) or de.mittwald.v1.ingress.TargetUseDefaultPage (object) or de.mittwald.v1.ingress.TargetContainer (object)

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Request the ACME certificate issuance of an Ingress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
ingressId
required
string <uuid>

UUID of the Ingress to request the issuance for.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update an Ingresses tls settings. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
ingressId
required
string <uuid>
Request Body schema: application/json
One of
acme
required
boolean

Has to be true, as ssl cannot be deactivated.

requestDeadline
string <date-time>

Responses

Request samples

Content type
application/json
Example
{
  • "acme": true,
  • "requestDeadline": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{ }

Update the tls settings of an Ingress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
ingressId
required
string <uuid>
Request Body schema: application/json
One of
acme
required
boolean

Has to be true, as ssl cannot be deactivated.

requestDeadline
string <date-time>

Responses

Request samples

Content type
application/json
Example
{
  • "acme": true,
  • "requestDeadline": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{ }

Conversation

The conversation API allows you to manage your support conversations.

Create a conversation.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
categoryId
string
mainUserId
string <uuid>
object (de.mittwald.v1.conversation.AggregateReference)
object or object or object or object (de.mittwald.v1.conversation.ShareableAggregateReference)
title
string

Responses

Request samples

Content type
application/json
{
  • "categoryId": "string",
  • "mainUserId": "ac7f1d2d-14f9-4b93-8b87-86b7fa85b153",
  • "relatedTo": {
    },
  • "sharedWith": {
    },
  • "title": "string"
}

Response samples

Content type
application/json
{
  • "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a"
}

Get all conversation the authenticated user has created or has access to.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Send a new message in the conversation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
conversationId
required
string <uuid>
Request Body schema: application/json
required
fileIds
Array of strings <uuid> [ items <uuid > ]
messageContent
string <= 8000 characters

Responses

Request samples

Content type
application/json
{
  • "fileIds": [
    ],
  • "messageContent": "string"
}

Response samples

Content type
application/json
{
  • "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a",
  • "messageId": "8540d774-4863-4d2b-b788-4ecb19412e85"
}

Get all message of the conversation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
conversationId
required
string <uuid>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get a specific conversation category.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
categoryId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "categoryId": "337f5e5d-288b-40d5-be14-901cc3acacc0",
  • "name": "string",
  • "referenceType": [
    ]
}

Get members of a support conversation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
conversationId
required
string <uuid>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get a support conversation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
conversationId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "category": {
    },
  • "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "createdBy": {
    },
  • "lastMessageAt": "2019-08-24T14:15:22Z",
  • "lastMessageBy": {
    },
  • "mainUser": {
    },
  • "relatedTo": {
    },
  • "relations": [
    ],
  • "sharedWith": {
    },
  • "shortId": "string",
  • "status": "open",
  • "title": "string",
  • "visibility": "shared"
}

Update the basic properties of the conversation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
conversationId
required
string <uuid>
Request Body schema: application/json
required
categoryId
string <uuid>
object (de.mittwald.v1.conversation.AggregateReference)
title
string

Responses

Request samples

Content type
application/json
{
  • "categoryId": "337f5e5d-288b-40d5-be14-901cc3acacc0",
  • "relatedTo": {
    },
  • "title": "string"
}

Response samples

Content type
application/json
{
  • "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a"
}

Request an access token for the File belonging to the Conversation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
conversationId
required
string <uuid>
fileId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "accessToken": "string",
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Get all conversation categories.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Request a file upload token for the conversation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
conversationId
required
string <uuid>
Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a",
  • "rules": {
    },
  • "uploadToken": "string"
}

Update the status of a conversation.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
conversationId
required
string <uuid>
Request Body schema: application/json
required

The object containing the new status of the conversation. The statuses open and answered are displayed identically to the users as an open (unresolved) conversation. A conversation with the status closed is a solved issue. Closed conversations can be reopened by setting the status to open or by sending a message in the conversation.

status
required
string
Enum: "open" "answered" "closed"

Responses

Request samples

Content type
application/json
{
  • "status": "open"
}

Response samples

Content type
application/json
{
  • "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a"
}

Update the content of the message

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
conversationId
required
string <uuid>
messageId
required
string <uuid>
Request Body schema: application/json
required
messageContent
string

Responses

Request samples

Content type
application/json
{
  • "messageContent": "string"
}

Response samples

Content type
application/json
{
  • "messageId": "8540d774-4863-4d2b-b788-4ecb19412e85"
}

Customer

The customer API allows you to manage your own organizations and users.

Accept a CustomerInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerInviteId
required
string <uuid>

ID of the CustomerInvite to be accepted.

Request Body schema: application/json
required
invitationToken
string

Token contained in the invite for authentication.

Responses

Request samples

Content type
application/json
{
  • "invitationToken": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Create a new customer category.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required

The category to create

id
required
string
isPublic
required
boolean
name
required
string
useAgencyDomainPrices
required
boolean
useAgencySslPrices
required
boolean

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "isPublic": true,
  • "name": "string",
  • "useAgencyDomainPrices": true,
  • "useAgencySslPrices": true
}

Response samples

Content type
application/json
{
  • "customerId": "string",
  • "isPublic": true,
  • "name": "string",
  • "useAgencyDomainPrices": true,
  • "useAgencySslPrices": true
}

Get all customer categories.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "categories": [
    ]
}

Create a CustomerInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string <uuid>

ID of the Customer to create a CustomerInvite for.

Request Body schema: application/json
required
mailAddress
required
string <email>

Mail-address of the person to be invited.

membershipExpiresAt
string <date-time>

Time the resulting CustomerMembership should expire at.

message
string

Message contained in the CustomerInvite.

role
required
string (de.mittwald.v1.membership.CustomerRoles)
Enum: "notset" "owner" "member" "accountant"

Responses

Request samples

Content type
application/json
{
  • "mailAddress": "user@example.com",
  • "membershipExpiresAt": "2019-08-24T14:15:22Z",
  • "message": "string",
  • "role": "notset"
}

Response samples

Content type
application/json
{
  • "avatarRefId": "string",
  • "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
  • "customerName": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "information": {
    },
  • "mailAddress": "user@example.com",
  • "membershipExpiresAt": "2019-08-24T14:15:22Z",
  • "message": "string",
  • "role": "notset"
}

Create a new customer profile.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required

The customer to create

categoryId
string
name
required
string
object (de.mittwald.v1.customer.Contact)
vatId
string

Responses

Request samples

Content type
application/json
{
  • "categoryId": "string",
  • "name": "string",
  • "owner": {
    },
  • "vatId": "string"
}

Response samples

Content type
application/json
{
  • "customerId": "string",
  • "customerNumber": "string",
  • "name": "string"
}

Get all customer profiles the authenticated user has access to.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
role
string

filter to list only customers where the authenticated user has the specified role. Can be a comma seperated list.

limit
integer >= 0
skip
integer >= 0
page
integer >= 0

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Decline a CustomerInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerInviteId
required
string <uuid>

ID of the CustomerInvite to be declined.

Request Body schema: application/json
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Delete a customer category.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
categoryId
required
string

Responses

Response samples

Content type
application/json
{ }

Get a customer category.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
categoryId
required
string

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "isPublic": true,
  • "name": "string",
  • "useAgencyDomainPrices": true,
  • "useAgencySslPrices": true
}

Update a customer category.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
categoryId
required
string
Request Body schema: application/json
required

The category object to update

id
required
string
isPublic
required
boolean
name
required
string
useAgencyDomainPrices
required
boolean
useAgencySslPrices
required
boolean

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "isPublic": true,
  • "name": "string",
  • "useAgencyDomainPrices": true,
  • "useAgencySslPrices": true
}

Response samples

Content type
application/json
{
  • "customerId": "string",
  • "isPublic": true,
  • "name": "string",
  • "useAgencyDomainPrices": true,
  • "useAgencySslPrices": true
}

Delete a CustomerInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerInviteId
required
string <uuid>

ID if the CustomerInvite to be deleted.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get a CustomerInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerInviteId
required
string

ID of the CustomerInvite to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "avatarRefId": "string",
  • "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
  • "customerName": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "information": {
    },
  • "mailAddress": "user@example.com",
  • "membershipExpiresAt": "2019-08-24T14:15:22Z",
  • "message": "string",
  • "role": "notset"
}

Delete a CustomerMembership.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerMembershipId
required
string <uuid>

ID of the CustomerMembership to be deleted.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get a CustomerMembership.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerMembershipId
required
string

ID of the CustomerMembership to retrieve.

Responses

Response samples

Content type
application/json
{
  • "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
  • "email": "user@example.com",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "inviteId": "14ca54c2-5d85-4c93-81b5-495a2e7e0ca4",
  • "memberSince": "2019-08-24T14:15:22Z",
  • "mfa": true,
  • "role": "notset",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Update a CustomerMembership.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerMembershipId
required
string <uuid>

ID of the CustomerMembership to be updated.

Request Body schema: application/json
required
expiresAt
string <date-time>

Time the CustomerMembership should expire at.

role
required
string (de.mittwald.v1.membership.CustomerRoles)
Enum: "notset" "owner" "member" "accountant"

Responses

Request samples

Content type
application/json
{
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "role": "notset"
}

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Delete a customer profile.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string

The uuid of the customer to be deleted. Only customer without active contracts or unpaid invoices can be deleted.

Responses

Response samples

Content type
application/json
{
  • "customerId": "string"
}

Get a customer profile.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string

The uuid of the customer to be returned

Responses

Response samples

Content type
application/json
{
  • "activeSuspension": {
    },
  • "avatarRefId": "string",
  • "categoryId": "string",
  • "creationDate": "2019-08-24T14:15:22Z",
  • "customerId": "string",
  • "customerNumber": "string",
  • "executingUserRoles": [
    ],
  • "isBanned": true,
  • "isInDefaultOfPayment": true,
  • "memberCount": 0,
  • "name": "string",
  • "owner": {
    },
  • "projectCount": 0,
  • "vatId": "string",
  • "vatIdValidationState": "valid"
}

Update a customer profile.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string
Request Body schema: application/json
required

The customer object to update

categoryId
string
customerId
required
string
name
required
string
object (de.mittwald.v1.customer.Contact)
vatId
string

Responses

Request samples

Content type
application/json
{
  • "categoryId": "string",
  • "customerId": "string",
  • "name": "string",
  • "owner": {
    },
  • "vatId": "string"
}

Response samples

Content type
application/json
{
  • "customerId": "string",
  • "customerNumber": "string",
  • "name": "string"
}

Get a CustomerInvite by token.

Authorizations:
de.mittwald.v1.commons.AccessToken
header Parameters
token
required
string

Token of the CustomerInvite to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "avatarRefId": "string",
  • "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
  • "customerName": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "information": {
    },
  • "mailAddress": "user@example.com",
  • "membershipExpiresAt": "2019-08-24T14:15:22Z",
  • "message": "string",
  • "role": "notset"
}

Check if the customer profile has a valid contract partner configured.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string

The uuid of the customer to be checked

Responses

Response samples

Content type
application/json
{
  • "isLegallyCompetent": true
}

Leave a Customer.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string <uuid>

ID of the Customer to be left.

Request Body schema: application/json
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

List CustomerInvites belonging to the executing user.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
limit
integer
skip
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List CustomerMemberships belonging to the executing user.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
limit
integer
skip
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Invites belonging to a Customer.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string

ID of the Customer to list invites for.

query Parameters
limit
integer
skip
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Memberships belonging to a Customer.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string

Customer to list memberships for.

query Parameters
limit
integer
skip
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Remove the avatar picture of the customer profile.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string

The uuid of the customer whose avatar is to be deleted

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Request a new avatar upload for the customer profile.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerId
required
string

The uuid of the customer for whom an avatar upload is to be requested

Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "refId": "639293c5-5581-48d7-94b9-83aceaff93f8",
  • "rules": {
    }
}

Resend the mail for a CustomerInvite.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
customerInviteId
required
string <uuid>

ID of the CustomerInvite to resend the mail for.

Request Body schema: application/json
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

User

The user API allows you to manage your own user and access information of other users that might be visible to you.

Change your Email-Address. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
required
string <email>

The new Email-Address.

Responses

Request samples

Content type
application/json
{
  • "email": "ada.lovelace@example.com"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Confirm password reset. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
password
required
string

The new password.

token
required
string = 6 characters

Password reset token

userId
required
string <uuid>

UserId of the user to reset the password for.

Responses

Request samples

Content type
application/json
{
  • "password": "string",
  • "token": "string",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Create a new issue. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json

Submit an issue.

message
required
string <= 5000 characters

Detailed report of the issue.

origin
string

Origin of the issue.

subject
string

Descriptive subject of the report.

type
required
string
Enum: "feedback" "bug"

Type of feedback.

vote
number [ 0 .. 10 ]

Feedback rating from bad to good.

Responses

Request samples

Content type
application/json
{
  • "message": "string",
  • "origin": "string",
  • "subject": "string",
  • "type": "feedback",
  • "vote": 10
}

Response samples

Content type
application/json
{ }

Deletes an ApiToken. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
apiTokenId
required
string <uuid>

The uuid of an ApiToken.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update an existing `ApiToken`. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
apiTokenId
required
string <uuid>
Request Body schema: application/json
required
description
required
string
expiresAt
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "description": "Api Token for ...",
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Remove a ssh-key. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sshKeyId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Edit a stored ssh-key. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sshKeyId
required
string <uuid>
Request Body schema: application/json
required
comment
required
string
expiresAt
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "comment": "a.lovelace@example.com",
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Disable Multi Factor Authentication. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
multiFactorCode
required
string [ 6 .. 16 ] characters

Multi Factor Code to confirm MFA.

Responses

Request samples

Content type
application/json
{
  • "multiFactorCode": "string"
}

Response samples

Content type
application/json
{ }

Initialize password reset process. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
required
string <email>

Email address to reset the password for.

Responses

Request samples

Content type
application/json
{
  • "email": "a.lovelace@example.com"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Terminate session and invalidate access token. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Resend the Email-Address verification email. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
string <email>
userId
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "email": "ada.lovelace@example.com",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Remove Avatar Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
userId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Request a new avatar upload Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
userId
required
string <uuid>
Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "refId": "639293c5-5581-48d7-94b9-83aceaff93f8",
  • "rules": {
    }
}

Submit user feedback Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json

The user feedback

message
string <= 5000 characters
origin
required
string <= 1000 characters
subject
required
string [ 1 .. 100 ] characters
vote
required
number [ 0 .. 10 ]

Responses

Request samples

Content type
application/json
{
  • "message": "string",
  • "origin": "string",
  • "subject": "string",
  • "vote": 10
}

Response samples

Content type
application/json
{ }

Returns your submitted feedback Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
subject
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

create a new issue Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json

Submit an issue.

message
required
string <= 1000000 characters
origin
string
subject
string
type
required
string
Enum: "feedback" "bug"

Responses

Request samples

Content type
application/json
{
  • "message": "string",
  • "origin": "string",
  • "subject": "string",
  • "type": "feedback"
}

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Change your personal information Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
userId
required
string <uuid>
Request Body schema: application/json
required
required
object (de.mittwald.v1.commons.Person)

The users personal information, e.g. first name.

firstName
required
string

The users first name

lastName
required
string

The users last name

title
string (de.mittwald.v1.commons.Salutation)
Enum: "mr" "ms" "other"

Responses

Request samples

Content type
application/json
{
  • "person": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get profile information for the specified user if the user is related to the executing user Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "avatarRef": "57efca18-f6e5-488b-8e38-5ff2dc541fc9",
  • "email": "user@example.com",
  • "employeeInformation": {
    },
  • "person": {
    },
  • "phoneNumber": "+491701234567",
  • "registeredAt": "2019-08-24T14:15:22Z",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Get personalized settings for the user executing the request Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "settingsString": "string"
}

update personalized settings Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
settingsString
required
string

Responses

Request samples

Content type
application/json
{
  • "settingsString": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Add phone number and init verification process Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
userId
required
string <uuid>
Request Body schema: application/json
required
phoneNumber
required
string

Responses

Request samples

Content type
application/json
{
  • "phoneNumber": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

remove your PhoneNumber Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
userId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Verify phone number Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
userId
required
string <uuid>
Request Body schema: application/json
required
code
required
string
phoneNumber
required
string

Responses

Request samples

Content type
application/json
{
  • "code": "123456",
  • "phoneNumber": "+491701234567"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get profile information for the executing user Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "avatarRef": "57efca18-f6e5-488b-8e38-5ff2dc541fc9",
  • "email": "user@example.com",
  • "employeeInformation": {
    },
  • "person": {
    },
  • "phoneNumber": "+491701234567",
  • "registeredAt": "2019-08-24T14:15:22Z",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Terminate all sessions, except the current session. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Terminate a specific Session. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
tokenId
required
string

TokenId to identify the concrete session.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Update your account information. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
required
object (de.mittwald.v1.commons.Person)

The users personal information, e.g. first name.

firstName
required
string

The users first name

lastName
required
string

The users last name

title
string (de.mittwald.v1.commons.Salutation)
Enum: "mr" "ms" "other"

Responses

Request samples

Content type
application/json
{
  • "person": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Verify an added Email-Address. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
required
string <email>

The Email-Address to verify.

token
string

The token found in the verification email.

Responses

Request samples

Content type
application/json
{
  • "email": "ada.lovelace@example.com",
  • "token": "123456"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a PasswordPolicy.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
passwordPolicy
required
string
Examples:
  • mittwald - The default PasswordPolicy of mittwald.
  • examplePolicy - An example policy showcasing possible rule definitions.

The name of the PasswordPolicy to be retrieved.

Responses

Response samples

Content type
application/json
"string"

Get a password policy. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
path
required
string

Responses

Response samples

Content type
application/json
"string"

Add phone number and start verification process.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
required
string or string
Examples:
  • self - You
  • 10203040-1234-5678-abcd-badc0de01234 - ID of a user.

self or the id of a user.

Request Body schema: application/json
required
phoneNumber
required
string

Responses

Request samples

Content type
application/json
{
  • "phoneNumber": "+491701234567"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Remove phone number.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
required
string or string
Examples:
  • self - You
  • 10203040-1234-5678-abcd-badc0de01234 - ID of a user.

self or the id of a user.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Validate your second factor.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
string <email>

The email of the user.

multiFactorCode
required
string [ 6 .. 16 ] characters

The second factor - otp code or recovery code.

password
string

The password of the user.

Responses

Request samples

Content type
application/json
{
  • "email": "a.lovelace@example.com",
  • "multiFactorCode": "123456",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "expires": "2019-08-24T14:15:22Z",
  • "token": "string"
}

Authenticate yourself to get an access token.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
required
string

The users Email-Address.

password
required
string

Password of the User.

Responses

Request samples

Content type
application/json
{
  • "email": "a.lovelace@example.com",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "expires": "2019-08-24T14:15:22Z",
  • "token": "string"
}

Authenticate an user with an access token retrieval key.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
accessTokenRetrievalKey
required
string = 37 characters
userId
required
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "accessTokenRetrievalKey": "stringstringstringstringstringstrings",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Response samples

Content type
application/json
{
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "token": "string"
}

Change your Email-Address.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
required
string <email>

The new Email-Address

Responses

Request samples

Content type
application/json
{
  • "email": "ada.lovelace@example.com"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get your verified Email-Address.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "email": "a.lovelace@example.com"
}

Change your password.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
multiFactorCode
string [ 6 .. 16 ] characters

Multi Factor Code to confirm MFA. This is optional, depending on the MFA activation status of the profile.

newPassword
required
string

The new password.

oldPassword
required
string

The old password.

Responses

Request samples

Content type
application/json
{
  • "multiFactorCode": "123456",
  • "newPassword": "string",
  • "oldPassword": "string"
}

Response samples

Content type
application/json
{
  • "expires": "2019-08-24T14:15:22Z",
  • "token": "string"
}

Check token for validity.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "publicToken": "string"
}

Confirm Multi Factor Authentication.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
multiFactorCode
required
string [ 6 .. 16 ] characters

Multi Factor Code to confirm MFA.

Responses

Request samples

Content type
application/json
{
  • "multiFactorCode": "123456"
}

Response samples

Content type
application/json
{
  • "recoveryCodesList": [
    ]
}

Disable Multi Factor Authentication.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
multiFactorCode
required
string [ 6 .. 16 ] characters

Multi Factor Code to confirm MFA.

Responses

Request samples

Content type
application/json
{
  • "multiFactorCode": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get your current multi factor auth status.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "confirmed": true,
  • "initialized": true
}

Reset RecoveryCodes for MFA.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
multiFactorCode
required
string [ 6 .. 16 ] characters

Multi Factor Code to authorize your request.

Responses

Request samples

Content type
application/json
{
  • "multiFactorCode": "123456"
}

Response samples

Content type
application/json
{
  • "recoveryCodesList": [
    ]
}

Confirm password reset.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
password
required
string

The new password.

token
required
string = 6 characters

Password reset token

userId
required
string <uuid>

UserId of the user to reset the password for.

Responses

Request samples

Content type
application/json
{
  • "password": "string",
  • "token": "string",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Create an access token retrieval key to acquire an access token for your user.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
optional
any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "accessTokenRetrievalKey": "mwrk-abcdefghijklmnopqrstuvwxyz012345",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Store a new ApiToken.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
description
required
string
expiresAt
string <date-time>
roles
required
Array of strings non-empty unique
Items Enum: "api_read" "api_write"

Determines the access rights of the ApiToken.

Responses

Request samples

Content type
application/json
{
  • "description": "Api Token - read",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "roles": {
    }
}

Response samples

Content type
application/json
{
  • "token": "string"
}

List all of your ApiTokens.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Submit your user feedback.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json

The feedback to give.

message
string <= 5000 characters

Personal feedback message.

origin
string <= 1000 characters

Origin of the feedback.

subject
required
string <= 100 characters

Descriptive subject.

type
string
Enum: "feedback" "bug"

Type of feedback.

vote
number [ 0 .. 10 ]

Feedback rating from bad to good. Set to 0 or skip this field to not vote at all.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{ }

Store a new ssh-key.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
expiresAt
string <date-time>
publicKey
required
string

Responses

Request samples

Content type
application/json
{
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "publicKey": "ssh-rsa ..."
}

Response samples

Content type
application/json
{ }

Get your stored ssh-keys.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "sshKeys": [
    ]
}

Deletes an ApiToken.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
apiTokenId
required
string <uuid>

The uuid of an ApiToken.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update an existing `ApiToken`.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
apiTokenId
required
string <uuid>
Request Body schema: application/json
required
description
required
string
expiresAt
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "description": "Api Token for ...",
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a specific ApiToken.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
apiTokenId
required
string <uuid>

The id of an ApiToken.

Responses

Response samples

Content type
application/json
{
  • "apiTokenId": "5ff4666d-9d44-4d08-86ad-65e110b1c69f",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "Api Token - read",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "roles": [
    ]
}

Remove a ssh-key.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sshKeyId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Edit a stored ssh-key.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sshKeyId
required
string <uuid>
Request Body schema: application/json
required
comment
required
string
expiresAt
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "comment": "a.lovelace@example.com",
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a specific stored ssh-key.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
sshKeyId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "sshKey": {
    }
}

Delete your account and all your personal data.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
multiFactorCode
string [ 6 .. 16 ] characters

Multi Factor Code to authorize your request.

password
required
string

Responses

Request samples

Content type
application/json
{
  • "multiFactorCode": "123456",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "info": { },
  • "message": "string",
  • "name": "SecondFactorRequired"
}

Get your account information.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "email": "a.lovelace@example.com",
  • "mfaDetails": {
    },
  • "passwordUpdatedAt": "2019-08-24T14:15:22Z",
  • "person": {
    },
  • "userId": "string"
}

Update your account information.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
required
object (de.mittwald.v1.commons.Person)

The users personal information, e.g. first name.

firstName
required
string

The users first name

lastName
required
string

The users last name

title
string (de.mittwald.v1.commons.Salutation)
Enum: "mr" "ms" "other"

Responses

Request samples

Content type
application/json
{
  • "person": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

The timestamp of your latest password change.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "passwordUpdatedAt": "2019-08-24T14:15:22Z"
}

Get personalized settings.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
required
string or string
Examples:
  • self - You
  • 10203040-1234-5678-abcd-badc0de01234 - ID of a user.

self or the id of a user.

Responses

Response samples

Content type
application/json
{
  • "settingsString": "eyJvbmJvYXJkaW5nIjp7ImNvbXBsZXRlZCI6W119LCJyZWNlbnRWaXNpdHMiOnsicmVjZW50VmlzaXRzIjp7fSwicmVjZW50VmlzaXRlZFBhdGhzIjp7fX0sImNoYW5nZWxvZ3MiOnsicmVhZElkcyI6WzIsMSwzLDQsNSw2LDgsNyw5XX19"
}

Update personalized GUI settings.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
required
string or string
Examples:
  • self - You
  • 10203040-1234-5678-abcd-badc0de01234 - ID of a user.

self or the id of a user.

Request Body schema: application/json
required
settingsString
required
string <base64>

Responses

Request samples

Content type
application/json
{
  • "settingsString": "eyJvbmJvYXJkaW5nIjp7ImNvbXBsZXRlZCI6W119LCJyZWNlbnRWaXNpdHMiOnsicmVjZW50VmlzaXRzIjp7fSwicmVjZW50VmlzaXRlZFBhdGhzIjp7fX0sImNoYW5nZWxvZ3MiOnsicmVhZElkcyI6WzIsMSwzLDQsNSw2LDgsNyw5XX19"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get poll settings for the specified user.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "completedAt": "2019-08-24T14:15:22Z",
  • "dontShowUntil": "2019-08-24T14:15:22Z",
  • "ignoredAt": "2019-08-24T14:15:22Z",
  • "shouldShow": true,
  • "status": "completed",
  • "userId": "string"
}

Store new or update poll settings.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
userId
required
string
Request Body schema: application/json
required
status
required
string
Enum: "completed" "muted" "ignored"
userId
required
string

Responses

Request samples

Content type
application/json
{
  • "status": "completed",
  • "userId": "string"
}

Response samples

Content type
application/json
{
  • "completedAt": "2019-08-24T14:15:22Z",
  • "dontShowUntil": "2019-08-24T14:15:22Z",
  • "ignoredAt": "2019-08-24T14:15:22Z",
  • "shouldShow": true,
  • "status": "completed",
  • "userId": "string"
}

Get a specific session.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
tokenId
required
string

TokenId to identify a specific session.

Responses

Response samples

Content type
application/json
{
  • "created": "2019-08-24T14:15:22Z",
  • "device": {
    },
  • "lastAccess": "2019-08-24T14:15:22Z",
  • "location": {
    },
  • "tokenId": "07dfef4c-e677-4ce6-87a3-cd348338445f"
}

Terminate a specific Session.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
tokenId
required
string

The sessionId is the id of the token used to create the session.

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get profile information for a user.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
required
string or string
Examples:
  • self - You
  • 10203040-1234-5678-abcd-badc0de01234 - ID of a user.

self or the id of a user.

Responses

Response samples

Content type
application/json
{
  • "avatarRef": "57efca18-f6e5-488b-8e38-5ff2dc541fc9",
  • "email": "user@example.com",
  • "employeeInformation": {
    },
  • "person": {
    },
  • "phoneNumber": "+491701234567",
  • "registeredAt": "2019-08-24T14:15:22Z",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Change personal information.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
required
string or string
Examples:
  • self - You
  • 10203040-1234-5678-abcd-badc0de01234 - ID of a user.

self or the id of a user.

Request Body schema: application/json
required
required
object (de.mittwald.v1.commons.Person)

The users personal information, e.g. first name.

firstName
required
string

The users first name

lastName
required
string

The users last name

title
string (de.mittwald.v1.commons.Salutation)
Enum: "mr" "ms" "other"

Responses

Request samples

Content type
application/json
{
  • "person": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Initialize Multi Factor Authentication. If successful, it needs to be confirmed, before usage of mfa.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "barcode": "string",
  • "url": "otpauth://totp/mStudio:test@gmail.com?algorithm=SHA1&digits=6&issuer=mStudio&period=30&secret=HTXT7KJFVNAJUPYWQRWMNVQE5AF5YZI2"
}

Initialize password reset process.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
required
string <email>

Email address to reset the password for.

Responses

Request samples

Content type
application/json
{
  • "email": "a.lovelace@example.com"
}

Response samples

Content type
application/json
{ }

Submitted feedback of the given user.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
required
string or string
Examples:
  • self - You
  • 10203040-1234-5678-abcd-badc0de01234 - ID of a user.

self or the id of a user.

query Parameters
subject
string

Filter for subject content.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List all sessions.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Terminate all sessions, except the current session.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Terminate session and invalidate access token.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Obtain authorization from the resource owner.

The OAuth 2.0 client requests authorization from the resource owner according to RFC6749. The authorization request is made indirectly via the authorization server as an intermediary.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
grant_consent
boolean

Can be set in combination with Authorization-Header to grant consent for the requested scopes. If set to true, the scopes will be marked as consented and the authorization server will redirect the user-agent back to the client. If set to false, the authorization server will redirect the user-agent back to the client with an access denied error. If not set and Authorization-Header is set, the user will be asked for consent.

grant_type
string
Value: "authorization_code"

The grant type. Must be set to authorization_code for this endpoint.

response_type
required
string
Value: "code"

The response type. Must be set to code for this endpoint.

client_id
required
string

The client identifier as described in RFC6749.

redirect_uri
string <uri>

The redirection URI to which the authorization server directs the user-agent back after the authorization endpoint. Must be a valid URI.

scope
string

The scope of the access request as described by RFC6749.

state
string

An opaque value used by the client to maintain state between the request and callback. The authorization server includes this value when redirecting the user-agent back to the client. The parameter SHOULD be used for preventing cross-site request forgery as described in RFC6749.

code_challenge
string

The code challenge as described by RFC7636. If the authorization code flow should be used with Proof Key for Code Exchange (PKCE), this parameter must be set and the code verifier has to be given to the token endpoint.

code_challenge_method
string
Value: "S256"

The code challenge method as described in RFC7636. If used, the code_challenge must be set as well and the code verifier has to be given to the token endpoint

cookie Parameters
x-access-token
string

Access Token of the Resource Owner.

Responses

Response samples

Content type
application/json
{
  • "error": "invalid_request",
  • "error_description": "string"
}

Retrieve Access Token from Authorization Code.

The OAuth 2.0 client retrieves an Access Token from an existing authorization code according to RFC6749.

Authorizations:
de.mittwald.v1.commons.AccessToken
header Parameters
Authorization
string
Example: Basic Y2xpZW50X2lkOmNsaWVudF9zZWNyZXQ=

The client credentials (client_id and client_secret), separated with a colon and base64 encoded as described in RFC6749. Submitting the client_id and client_secret as request-body as suggested is forbidden.

Request Body schema: application/x-www-form-urlencoded
required
code
required
string

The authorization code received from the authorization server.

code_verifier
string

The code verifier used to generate the code challenge as described in RFC7636. If the authorization flow was initiated with a code challenge, this parameter is required.

grant_type
required
string
Value: "authorization_code"

The grant type as described in RFC6749.

redirect_uri
required
string <uri>

The redirection URI used in the authorization request. Must be a valid URI.

Responses

Response samples

Content type
application/json
{
  • "access_token": "string",
  • "expires_in": 0,
  • "scope": "string",
  • "token_type": "bearer"
}

Register with email and password.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
required
string <email>

The users email address

password
required
string

The users password.

required
object (de.mittwald.v1.commons.Person)

The users personal information, e.g. first name.

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com",
  • "password": "string",
  • "person": {
    }
}

Response samples

Content type
application/json
{
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Remove Avatar.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
required
string or string
Examples:
  • self - You
  • 10203040-1234-5678-abcd-badc0de01234 - ID of a user.

self or the id of a user.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Request a new avatar image upload.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
required
string or string
Examples:
  • self - You
  • 10203040-1234-5678-abcd-badc0de01234 - ID of a user.

self or the id of a user.

Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "refId": "639293c5-5581-48d7-94b9-83aceaff93f8",
  • "rules": {
    }
}

Resend the Email-Address verification email.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
required
string <email>
userId
required
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "email": "ada.lovelace@example.com",
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Request a support code.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
forceRecreate
boolean

Responses

Response samples

Content type
application/json
{
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "supportCode": "123456"
}

Verify an added Email-Address.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
required
string <email>

The Email-Address to verify.

token
string

The token found in the verification email.

Responses

Request samples

Content type
application/json
{
  • "email": "ada.lovelace@example.com",
  • "token": "123456"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Verify phone number.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
required
string or string
Examples:
  • self - You
  • 10203040-1234-5678-abcd-badc0de01234 - ID of a user.

self or the id of a user.

Request Body schema: application/json
required
code
required
string = 6 characters
phoneNumber
required
string

Responses

Request samples

Content type
application/json
{
  • "code": "123456",
  • "phoneNumber": "+491701234567"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Verify your registration.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
email
required
string <email>

The users email address.

token
required
string [ 6 .. 16 ] characters

The token that was send to your email address

userId
required
string <uuid>

UUID of the registered user.

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com",
  • "token": 123456,
  • "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}

Response samples

Content type
application/json
{ }

Notification

The notification API allows you to manage your notifications.

Subscribe a user to the mStudio newsletter.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
firstName
string
lastName
string

Responses

Request samples

Content type
application/json
{
  • "firstName": "Ada",
  • "lastName": "Lovelace"
}

Response samples

Content type
application/json
{
  • "active": false,
  • "email": "a.lovelace@example.com",
  • "registered": true
}

Getting the subscription status of the subscription.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "email": "a.lovelace@example.com",
  • "registered": true
}

Unsubscribe a user from the mStudio newsletter.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "message": "Something went wrong",
  • "type": "InternalServerError"
}

Get the counts for unread notifications of the user.

The user is determined by the access token used. Lighter weight route instead of getting all unread notifications and count yourself.

Authorizations:
de.mittwald.v1.commons.AccessToken

Responses

Response samples

Content type
application/json
{
  • "error": 0,
  • "info": 0,
  • "success": 0,
  • "total": 0,
  • "warning": 0
}

List all unread notifications.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
status
string
Enum: "unread" "read"

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Mark all notifications as read (deprecated). Deprecated

Deprecated route. Please use /v2/notifications/actions/read-all instead.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "status": "read"
}

Mark all notifications as read.

Mark all notifications for the authenticated user as read.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
optional
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "status": "read"
}

Mark notification as read.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
notificationId
required
string <uuid>
Request Body schema: application/json
required
status
required
string (de.mittwald.v1.messaging.NotificationStatus)
Value: "read"

Responses

Request samples

Content type
application/json
{
  • "status": "read"
}

Response samples

Content type
application/json
{
  • "status": "read"
}

File

The file API allows you to manage your files, for example for conversations attachments and avatar uploads.

Get a Token's upload rules. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
token
required
string <uuid>
Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6

Token of the Token's upload rules to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "extensions": [
    ],
  • "fileTypes": [
    ],
  • "maxSizeInBytes": 1000000,
  • "maxSizeInKB": 1000,
  • "mimeTypes": [
    ],
  • "properties": {
    }
}

Get a Type's upload rules. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
name
required
string
Enum: "avatar" "conversation"
Example: avatar

Name of the Type's upload rules to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "extensions": [
    ],
  • "fileTypes": [
    ],
  • "maxSizeInBytes": 1000000,
  • "maxSizeInKB": 1000,
  • "mimeTypes": [
    ],
  • "properties": {
    }
}

Create a File.

Authorizations:
de.mittwald.v1.commons.AccessToken
header Parameters
Token
required
string <uuid>
Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
Request Body schema: application/octet-stream
file
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "friendlyURL": "3fa85f64-5717-4562-b3fc-2c963f66afa6/me.jpeg",
  • "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  • "mimeType": "image/jpeg",
  • "name": "me.jpeg",
  • "sizeInBytes": 300,
  • "type": "image/jpeg"
}

Get a File's meta.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
fileId
required
string <uuid>
Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6

ID of the File to get the meta for.

Responses

Response samples

Content type
application/json
{
  • "friendlyURL": "3fa85f64-5717-4562-b3fc-2c963f66afa6/me.jpeg",
  • "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  • "mimeType": "image/jpeg",
  • "name": "me.jpeg",
  • "sizeInBytes": 300,
  • "type": "image/jpeg"
}

Get a FileUploadToken's rules.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
fileUploadToken
required
string <uuid>
Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6

FileUploadToken to retrieve rules for.

Responses

Response samples

Content type
application/json
{
  • "extensions": [
    ],
  • "fileTypes": [
    ],
  • "maxSizeInBytes": 1000000,
  • "maxSizeInKB": 1000,
  • "mimeTypes": [
    ],
  • "properties": {
    }
}

Get a FileUploadType's rules.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
fileUploadType
required
string
Enum: "avatar" "conversation"
Example: avatar

FileUploadType to retrieve rules for.

Responses

Response samples

Content type
application/json
{
  • "extensions": [
    ],
  • "fileTypes": [
    ],
  • "maxSizeInBytes": 1000000,
  • "maxSizeInKB": 1000,
  • "mimeTypes": [
    ],
  • "properties": {
    }
}

Get a File.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
fileId
required
string <uuid>
Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6

ID of the File to be retrieved.

header Parameters
Accept
string
Default: application/octet-stream
Enum: "application/octet-stream" "text/plain;base64"
Example: application/octet-stream
Content-Disposition
string
Default: inline
Enum: "inline" "attachment"
Example: inline
Token
string
Example: jwt

Only needed for protected Files.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a File.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
fileId
required
string <uuid>
Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6

ID of the File to be retrieved.

fileName
required
string
Example: me.jpeg

Name of the File to be retrieved.

header Parameters
Accept
string
Default: application/octet-stream
Enum: "application/octet-stream" "text/plain;base64"
Example: application/octet-stream
Content-Disposition
string
Default: inline
Enum: "inline" "attachment"
Example: inline
Token
string
Example: jwt

Only needed for protected Files.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Mail

The mail API allows you to manage your mail accounts.

Create a DeliveryBox.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to create the DeliveryBox in.

Request Body schema: application/json

DeliveryBox

description
required
string
password
required
string

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

List DeliveryBoxes belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to list DeliveryBoxes for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a MailAddress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the project to create a MailAddress for.

Request Body schema: application/json
One of
address
required
string <idn-email>
forwardAddresses
required
Array of strings <idn-email> [ items <idn-email > ]

Responses

Request samples

Content type
application/json
Example
{
  • "address": "пошта@укр.нет",
  • "forwardAddresses": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

List MailAddresses belonging to a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to list MailAddresses for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete a DeliveryBox.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
deliveryBoxId
required
string <uuid>

ID of the DeliveryBox to be deleted.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a DeliveryBox.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
deliveryBoxId
required
string <uuid>

ID of the DeliveryBox to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "authenticationEnabled": true,
  • "description": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "passwordUpdatedAt": "2019-08-24T14:15:22Z",
  • "projectId": "string",
  • "sendingEnabled": true,
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Delete a MailAddress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to be deleted.

Responses

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Get a MailAddress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "address": "пошта@укр.нет",
  • "autoResponder": {
    },
  • "forwardAddresses": [
    ],
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "isArchived": true,
  • "isCatchAll": true,
  • "mailbox": {
    },
  • "projectId": "string",
  • "receivingDisabled": true,
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Update the description of an deliverybox Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
id
required
string <uuid>

ID of the deliverybox

Request Body schema: application/json

Description of the deliverybox

description
required
string

Responses

Request samples

Content type
application/json
{
  • "description": "string"
}

Update the password for a specific deliverybox Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
id
required
string <uuid>

ID of the deliverybox

Request Body schema: application/json
password
required
string

Responses

Request samples

Content type
application/json
{
  • "password": "string"
}

List mail settings of a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to list mail settings for.

Responses

Response samples

Content type
application/json
{
  • "blacklist": [
    ],
  • "projectId": "string",
  • "whitelist": [
    ]
}

Update mail-address Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
id
required
string <uuid>

ID of the mail address

Request Body schema: application/json

set mail-address

address
required
string <idn-email>

Responses

Request samples

Content type
application/json
{
  • "address": "пошта@укр.нет"
}

Update blacklist for a given project ID Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the project you want to update blacklist for

Request Body schema: application/json
blacklist
required
Array of strings <idn-email> [ items <idn-email > ]

Responses

Request samples

Content type
application/json
{
  • "blacklist": [
    ]
}

Update whitelist for a given project ID Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the project you want to update whitelist for

Request Body schema: application/json
whitelist
required
Array of strings <idn-email> [ items <idn-email > ]

Responses

Request samples

Content type
application/json
{
  • "whitelist": [
    ]
}

Update the description of a DeliveryBox.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
deliveryBoxId
required
string <uuid>

ID of the DeliveryBox to update the description for.

Request Body schema: application/json

Description of the DeliveryBox.

description
required
string

Responses

Request samples

Content type
application/json
{
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the password of a DeliveryBox.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
deliveryBoxId
required
string <uuid>

ID of the DeliveryBox to update the password for.

Request Body schema: application/json
password
required
string

Responses

Request samples

Content type
application/json
{
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update a MailAddress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the address for.

Request Body schema: application/json
address
required
string <idn-email>

Responses

Request samples

Content type
application/json
{
  • "address": "пошта@укр.нет"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the autoresponder of a MailAddress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the autoresponder for.

Request Body schema: application/json

Autoresponder for the MailAddress.

required
object or null
active
required
boolean
expiresAt
string <date-time>
message
required
string
startsAt
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "autoResponder": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the autoresponder of a MailAddress. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the autoresponder for.

Request Body schema: application/json

Autoresponder for the MailAddress.

required
object or null
active
required
boolean
expiresAt
string <date-time>
message
required
string
startsAt
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "autoResponder": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the catchall of a MailAddress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the catchall for.

Request Body schema: application/json

Catchall of the MailAddress.

active
required
boolean

Responses

Request samples

Content type
application/json
{
  • "active": true
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the catchall of a MailAddress. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the catchall for.

Request Body schema: application/json

Catchall of the MailAddress.

active
required
boolean

Responses

Request samples

Content type
application/json
{
  • "active": true
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the forward addresses of a MailAddresses.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the forward addresses for.

Request Body schema: application/json
forwardAddresses
required
Array of strings <idn-email> [ items <idn-email > ]

Responses

Request samples

Content type
application/json
{
  • "forwardAddresses": [
    ]
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the forward addresses of a MailAddresses. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the forward addresses for.

Request Body schema: application/json
forwardAddresses
required
Array of strings <idn-email> [ items <idn-email > ]

Responses

Request samples

Content type
application/json
{
  • "forwardAddresses": [
    ]
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the password for a MailAddress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the password for.

Request Body schema: application/json
password
required
string

Responses

Request samples

Content type
application/json
{
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the password for a MailAddress. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the password for.

Request Body schema: application/json
password
required
string

Responses

Request samples

Content type
application/json
{
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the quota of a MailAddress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the quota for.

Request Body schema: application/json
quotaInBytes
required
number >= -1

Responses

Request samples

Content type
application/json
{
  • "quotaInBytes": -1
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the quota of a MailAddress. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the quota for.

Request Body schema: application/json
quotaInBytes
required
number >= -1

Responses

Request samples

Content type
application/json
{
  • "quotaInBytes": -1
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the spam protection of a MailAddress.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the spam protection for.

Request Body schema: application/json
required
object
active
required
boolean
autoDeleteSpam
required
boolean
folder
required
string
Enum: "inbox" "spam"
relocationMinSpamScore
required
integer <= 10

Responses

Request samples

Content type
application/json
{
  • "spamProtection": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update the spam protection of a MailAddress. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
mailAddressId
required
string <uuid>

ID of the MailAddress to update the spam protection for.

Request Body schema: application/json
required
object
active
required
boolean
autoDeleteSpam
required
boolean
folder
required
string
Enum: "inbox" "spam"
relocationMinSpamScore
required
integer <= 10

Responses

Request samples

Content type
application/json
{
  • "spamProtection": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update a mail setting of a Project.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to update a mail setting for.

mailSetting
required
string
Enum: "blacklist" "whitelist"

The mail setting to update.

Request Body schema: application/json
One of
blacklist
required
Array of strings <idn-email> [ items <idn-email > ]

Responses

Request samples

Content type
application/json
{
  • "whitelist": [
    ]
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Update a mail setting of a Project. Deprecated

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string

ID of the Project to update a mail setting for.

setting
required
string
Enum: "blacklist" "whitelist"

The setting to update.

Request Body schema: application/json
One of
blacklist
required
Array of strings <idn-email> [ items <idn-email > ]

Responses

Request samples

Content type
application/json
{
  • "whitelist": [
    ]
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Article

The article API allows you to read article information.

Get an Article.

path Parameters
articleId
required
string
Example: PS23-PLUS-0004
query Parameters
customerId
string
Example: customerId=123e4567-e89b-12d3-a456-426614174000

Use customerId for custom customer prices.

Responses

Response samples

Content type
application/json
{
  • "addons": [
    ],
  • "articleId": "PS23-BASIC-0001",
  • "attributes": [
    ],
  • "balanceAddonKey": "inclusive_domains",
  • "contractDurationInMonth": 0,
  • "description": "proSpace without dedicated resources",
  • "forcedInvoicingPeriodInMonth": 0,
  • "hasIndependentContractPeriod": true,
  • "hideOnInvoice": true,
  • "machineType": {
    },
  • "modifierArticles": [
    ],
  • "name": "proSpace lite",
  • "orderable": "forbidden",
  • "possibleArticleChanges": [
    ],
  • "price": 1000,
  • "tags": [
    ],
  • "template": {
    }
}

List Articles.

query Parameters
customerId
string
Example: customerId=123e4567-e89b-12d3-a456-426614174000

Use customerId for custom customer prices.

limit
integer >= 0
Example: limit=1000
skip
integer >= 0
page
integer >= 0
Example: page=1
tags
Array of strings
Example:
templateNames
Array of strings
Example:
articleIds
Array of strings
Example: articleIds=PS23-PLUS-0004
orderable
Array of strings
Items Enum: "forbidden" "internal" "beta_testing" "full" "deprecated"
name
string
Example: name=proSpace

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Container

The container API allows you to manage your stacks, containers, volumes and registries.

Page Insights

The page insights API allows you to get page insights information.

Get detailed performance data for a given domain and path.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
domain
required
string
Example: domain=mittwald.de

A domain or subdomain.

path
required
string
Example: path=/

A path of the domain.

date
string <date>
Example: date=2017-07-21

Query data for a specific date, defaults to date today.

Responses

Response samples

Content type
application/json
{
  • "createdAt": "2019-08-24T14:15:22Z",
  • "domain": "string",
  • "metrics": [
    ],
  • "moreDataAvailable": [
    ],
  • "path": "string",
  • "performanceScore": 0.1,
  • "screenshot": {
    }
}

Get all data for a given strace.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
straceId
required
string <uuid>

ID of the strace to get the data for.

projectId
required
string <uuid>

ID of the project the strace belongs to.

Responses

Response samples

Content type
application/json
{
  • "executedAt": "2019-08-24T14:15:22Z",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "result": {
    }
}

List websites (specified as domain and path) from a project where performance data is available.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of the Project to list domains for.

query Parameters
domain
string
Example: domain=mittwald.de

Filter for a specific domain.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Schedule a strace measurement for a single http request.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
projectId
required
string <uuid>

ID of a project to own the created strace. It must exist a ingress with the same hostname as in the url to be measured.

Request Body schema: application/json
url
required
string

A call to this URL is measured via strace.

Responses

Request samples

Content type
application/json

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

Relocation

The relocation API allows you to manage your relocations.

Register a tariff change for a legacy tariff.

Request Body schema: application/json
required
pAccount
required
string^[pr][0-9]{2,8}$
targetTariff
required
string non-empty

Responses

Request samples

Content type
application/json
{
  • "pAccount": "string",
  • "targetTariff": "string"
}

Response samples

Content type
application/json
{
  • "messageId": "8540d774-4863-4d2b-b788-4ecb19412e85"
}

Relocate an external Project to mittwald.

Give mittwald access to your Provider and let them move your Project to mittwald.

Request Body schema: application/json
required
allDomains
boolean

Should all project releated domains should be transferred to mittwald?

allowPasswordChange
required
boolean

Has to be true. Do you accept that our mittwald team can change and get password from your current provider?

required
object
Array of objects (de.mittwald.v1.directus.Domain)

List of domains which should be transferred (when allDomains is not checked).

notes
string

Anything our customer service needs to know for the relocation process.

required
object
required
object

Responses

Request samples

Content type
application/json
{
  • "allDomains": true,
  • "allowPasswordChange": true,
  • "contact": {
    },
  • "domains": [
    ],
  • "notes": "string",
  • "provider": {
    },
  • "target": {
    }
}

Response samples

Content type
application/json
{
  • "type": "ValidationError",
  • "message": "Validation failed",
  • "validationErrors": [
    ]
}

Marketplace

The marketplace API allows you to manage extensions and more information regaring the marketplace.

Authenticate your external application using the extensionInstanceSecret.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
extensionInstanceId
required
string <uuid>
Request Body schema: application/json
required
extensionInstanceSecret
required
string

The latest secret an external application received via lifecycle webhooks. Namely ExtensionAddedToContext and ExtensionInstanceSecretRotated.

Responses

Request samples

Content type
application/json
{
  • "extensionInstanceSecret": "string"
}

Response samples

Content type
application/json
{
  • "expiry": "2019-08-24T14:15:22Z",
  • "publicToken": "string"
}

Create an ExtensionInstance.

Authorizations:
de.mittwald.v1.commons.AccessToken
Request Body schema: application/json
required
consentedScopes
required
Array of strings
context
required
string (de.mittwald.v1.marketplace.Context)
Enum: "project" "customer"
contextId
required
string <uuid>
extensionId
required
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "consentedScopes": [
    ],
  • "context": "project",
  • "contextId": "84451116-c600-49e2-9c60-5b6b34fae0d6",
  • "extensionId": "e6532990-9411-4b54-9b41-41ee86c8daab"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

List ExtensionInstances.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
limit
integer
Default: 1000
skip
integer
Default: 0
page
integer
Default: 1
context
required
string (de.mittwald.v1.marketplace.Context)
Enum: "project" "customer"
contextId
required
string <uuid>

The ID of your customer, project or user.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete an ExtensionInstance.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
extensionInstanceId
required
string <uuid>

Responses

Response samples

Content type
application/json
null

Get an ExtensionInstance.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
extensionInstanceId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "aggregateReference": {
    },
  • "consentedScopes": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "disabled": false,
  • "extensionId": "e6532990-9411-4b54-9b41-41ee86c8daab",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}

Disable an ExtensionInstance.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
extensionInstanceId
required
string <uuid>

Responses

Response samples

Content type
application/json
null

Enable an ExtensionInstance.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
extensionInstanceId
required
string <uuid>

Responses

Response samples

Content type
application/json
null

Get a Contributor.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
contributorId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
  • "email": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "logoRefId": "string",
  • "name": "string",
  • "phone": "string",
  • "state": "enabled",
  • "url": "string"
}

Get an Extension.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
extensionId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "context": "project",
  • "contributorId": "005edbf7-87df-4122-a64b-6d91913d8764",
  • "description": "string",
  • "frontendComponents": [
    ],
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "scopes": [
    ],
  • "state": "enabled",
  • "support": {
    },
  • "tags": [
    ]
}

Get the public key to verify the webhook signature.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
serial
required
string
Example: latest

The serial id of a specific public key. Use latest to get the latest public key.

Responses

Response samples

Content type
application/json
{
  • "algorithm": "Ed25519",
  • "key": "string",
  • "serial": "53a73609-0857-4a03-9aa9-3823eb707faa"
}

List Contributors.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
limit
integer
Default: 1000
skip
integer
Default: 0
page
integer
Default: 1

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Extensions.

Authorizations:
de.mittwald.v1.commons.AccessToken
query Parameters
context
string (de.mittwald.v1.marketplace.Context)
Enum: "project" "customer"
limit
integer
Default: 1000
skip
integer
Default: 0
page
integer
Default: 1

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Obtain a service token.

Authorizations:
de.mittwald.v1.commons.AccessToken
path Parameters
accessKeyId
required
string
Request Body schema: application/json
required
secretAccessKey
required
string

Responses

Request samples

Content type
application/json
{
  • "secretAccessKey": "string"
}

Response samples

Content type
application/json
{
  • "accessToken": {
    }
}