This OpenAPI spec documents the mittwald API. It follows the OpenAPI 3.0.0 specification.
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.
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.
A main consumer of the mittwald API is the management interface for our customers, the mStudio.
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.
The project API allows you to manage your projects, and also any kinds of user memberships concerning these projects.
Accept a ProjectInvite.
Authorizations:
path Parameters
projectInviteId required | string <uuid> ID of the ProjectInvite to be accepted. |
Request Body schema: application/jsonrequired
invitationToken | string Token contained in the invite for authentication. |
Responses
Request samples
- Payload
{- "invitationToken": "string"
}
Response samples
- 400
- 403
- 412
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Create a ProjectInvite.
Authorizations:
path Parameters
projectId required | string <uuid> ID of the Project to create a ProjectInvite for. |
Request Body schema: application/jsonrequired
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
- Payload
{- "mailAddress": "user@example.com",
- "membershipExpiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "role": "notset"
}
Response samples
- 201
- 400
- 409
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "information": {
- "invitationToken": "string",
- "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "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:
path Parameters
projectId required | string ID of the Project to list invites for. |
query Parameters
limit | integer |
skip | integer |
Responses
Response samples
- 200
- 404
- default
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "information": {
- "invitationToken": "string",
- "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "mailAddress": "user@example.com",
- "membershipExpiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "projectDescription": "string",
- "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "role": "notset"
}
]
Create a Project belonging to a Server.
Authorizations:
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
- Payload
{- "description": "My first Project!"
}
Response samples
- 201
- 400
- 403
- 412
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Decline a ProjectInvite.
Authorizations:
path Parameters
projectInviteId required | string <uuid> ID of the ProjectInvite to be declined. |
Request Body schema: application/json
Responses
Request samples
- Payload
null
Response samples
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Delete a Project's avatar.
Authorizations:
path Parameters
projectId required | string <uuid> ID of the Project the avatar should be deleted for. |
Responses
Response samples
- 400
- 403
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Request a Project avatar upload.
Authorizations:
path Parameters
projectId required | string <uuid> ID of the Project you want to request an avatar upload for. |
Responses
Response samples
- 200
- 400
- 403
- default
{- "refId": "639293c5-5581-48d7-94b9-83aceaff93f8",
- "rules": {
- "maxSizeInKB": 3000,
- "mimeTypes": [
- "image/jpeg",
- "image/png"
], - "properties": {
- "imageDimensions": {
- "max": {
- "height": 0,
- "width": 0
}, - "min": {
- "height": 0,
- "width": 0
}
}
}
}
}
Get a ProjectInvite.
Authorizations:
path Parameters
projectInviteId required | string ID of the ProjectInvite to be retrieved. |
Responses
Response samples
- 200
- 404
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "information": {
- "invitationToken": "string",
- "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "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:
path Parameters
projectMembershipId required | string <uuid> ID of the ProjectMembership to be deleted. |
Responses
Response samples
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Get a ProjectMembership
Authorizations:
path Parameters
projectMembershipId required | string ID of the ProjectMembership to be retrieved. |
Responses
Response samples
- 200
- 404
- default
{- "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:
path Parameters
projectMembershipId required | string <uuid> ID of the ProjectMembership to be updated. |
Request Body schema: application/jsonrequired
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
- Payload
{- "expiresAt": "2019-08-24T14:15:22Z",
- "role": "notset"
}
Response samples
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Delete a Project.
Authorizations:
path Parameters
projectId required | string The ID of the Project. |
Responses
Response samples
- 400
- 403
- 412
- 500
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a Project.
Authorizations:
path Parameters
projectId required | string <uuid> ID of the Project to be retrieved. |
Responses
Response samples
- 200
- 403
- default
{- "clusterDomain": "project.host",
- "clusterID": "espelkamp",
- "createdAt": "2019-08-24T14:15:22Z",
- "customerId": "f282f1a8-2b15-4b08-9850-6788e3b20136",
- "description": "My first Project!",
- "directories": {
- "Home": "/home/p-4e7tz3"
}, - "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": {
- "storage": "string",
- "visitors": 0
}, - "statisticsBaseDomain": "pe-prod.staging.mcloud.services",
- "status": "pending",
- "statusSetAt": "2019-08-24T14:15:22Z"
}
Delete a Server's avatar.
Authorizations:
path Parameters
serverId required | string <uuid> ID of the Server to delete the avatar for. |
Responses
Response samples
- 400
- 403
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Request a Server avatar upload.
Authorizations:
path Parameters
serverId required | string <uuid> ID of the Server to request an avatar upload for. |
Responses
Response samples
- 200
- 400
- 403
- default
{- "refId": "639293c5-5581-48d7-94b9-83aceaff93f8",
- "rules": {
- "maxSizeInKB": 3000,
- "mimeTypes": [
- "image/jpeg",
- "image/png"
], - "properties": {
- "imageDimensions": {
- "max": {
- "height": 0,
- "width": 0
}, - "min": {
- "height": 0,
- "width": 0
}
}
}
}
}
Get a ProjectInvite by token.
Authorizations:
header Parameters
token required | string Token of the ProjectInvite to be retrieved. |
Responses
Response samples
- 200
- 404
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "information": {
- "invitationToken": "string",
- "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "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:
path Parameters
projectId required | string ID of the Project to get the membership for. |
Responses
Response samples
- 200
- 403
- 404
- default
{- "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:
path Parameters
serverId required | string ID of the Server to be retrieved. |
Responses
Response samples
- 200
- 403
- 404
- default
{- "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": {
- "cpu": "2",
- "memory": "4Gi",
- "name": "shared.large"
}, - "readiness": "creating",
- "shortId": "s-4e7tz3",
- "statisticsBaseDomain": "pe-prod.staging.mcloud.services",
- "status": "pending",
- "storage": "50Gi"
}
Leave a Project.
Authorizations:
path Parameters
projectId required | string <uuid> ID of the Project to be left. |
Request Body schema: application/json
Responses
Request samples
- Payload
null
Response samples
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
List Memberships belonging to a Project.
Authorizations:
path Parameters
projectId required | string ID of the Project to list memberships for. |
query Parameters
limit | integer |
skip | integer |
Responses
Response samples
- 200
- 404
- default
[- {
- "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"
}
]
List ProjectInvites belonging to the executing user.
Authorizations:
query Parameters
limit | integer |
skip | integer |
Responses
Response samples
- 200
- 403
- 404
- default
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "information": {
- "invitationToken": "string",
- "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "mailAddress": "user@example.com",
- "membershipExpiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "projectDescription": "string",
- "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "role": "notset"
}
]
List ProjectMemberships belonging to the executing user.
Authorizations:
query Parameters
limit | integer |
skip | integer |
Responses
Response samples
- 200
- 403
- 404
- default
[- {
- "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"
}
]
List Projects belonging to the executing user.
Authorizations:
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
- 200
- 400
- 403
- default
[- {
- "createdAt": "2019-08-24T14:15:22Z",
- "customerId": "string",
- "customerMeta": {
- "id": "string"
}, - "description": "string",
- "disableReason": "maliciousCode",
- "disabledAt": "2019-08-24T14:15:22Z",
- "enabled": true,
- "id": "string",
- "imageRefId": "string",
- "isReady": true,
- "projectHostingId": "a25de6de-e6a3-424e-8829-dfb88b552281",
- "readiness": "creating",
- "serverId": "string",
- "shortId": "string",
- "status": "pending",
- "statusSetAt": "2019-08-24T14:15:22Z"
}
]
List Servers belonging to the executing user.
Authorizations:
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
- 200
- 403
- default
[- {
- "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": {
- "cpu": "2",
- "memory": "4Gi",
- "name": "shared.large"
}, - "readiness": "creating",
- "shortId": "s-4e7tz3",
- "statisticsBaseDomain": "pe-prod.staging.mcloud.services",
- "status": "pending",
- "storage": "50Gi"
}
]
Resend the mail for a ProjectInvite.
Authorizations:
path Parameters
projectInviteId required | string <uuid> ID of the ProjectInvite to resend the mail for. |
Request Body schema: application/json
Responses
Request samples
- Payload
null
Response samples
- 403
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Update a Project's description.
Authorizations:
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
- Payload
{- "description": "My new description!"
}
Response samples
- 400
- 403
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update a Servers's description.
Authorizations:
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
- Payload
{- "description": "My first Server!"
}
Response samples
- 400
- 403
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Export a ProjectBackup for download.
Authorizations:
path Parameters
projectBackupId required | string <uuid> ID of the ProjectBackup to export. |
Request Body schema: application/jsonrequired
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
- Payload
{- "format": "tar",
- "password": "password"
}
Response samples
- 400
- 403
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Delete a ProjectBackupExport.
Authorizations:
path Parameters
projectBackupId required | string <uuid> ID if the ProjectBackup to delete the export of. |
Responses
Response samples
- 403
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Create a BackupSchedule for a Project.
Authorizations:
path Parameters
projectId required | string <uuid> ID of the Project to create a BackupSchedule for. |
Request Body schema: application/jsonrequired
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
- Payload
{- "description": "string",
- "schedule": "5 4 * * *",
- "ttl": "7d"
}
Response samples
- 201
- 400
- 404
- default
{- "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:
path Parameters
projectId required | string <uuid> ID of the Project to list BackupSchedules for. |
Responses
Response samples
- 200
- default
[- {
- "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"
}
]
Create a Backup of a Project.
Authorizations:
path Parameters
projectId required | string <uuid> ID of the project to create a Backup for. |
Request Body schema: application/jsonrequired
description | string Description of the Backup. |
expirationTime required | string <date-time> Time when to expire the Backup. |
Responses
Request samples
- Payload
{- "description": "I'm a ProjectBackup",
- "expirationTime": "2019-08-24T14:15:22Z"
}
Response samples
- 201
- 400
- 404
- default
{- "createdAt": "2019-08-24T14:15:22Z",
- "deletable": true,
- "description": "I'm a ProjectBackup",
- "expiresAt": "2019-08-24T14:15:22Z",
- "export": {
- "downloadURL": "string",
- "expiresAt": "2019-08-24T14:15:22Z",
- "format": "tar",
- "phase": "Completed",
- "withPassword": true
}, - "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:
path Parameters
projectId required | string <uuid> ID of the Project to get Backups for. |
Responses
Response samples
- 200
- default
[- {
- "createdAt": "2019-08-24T14:15:22Z",
- "deletable": true,
- "description": "I'm a ProjectBackup",
- "expiresAt": "2019-08-24T14:15:22Z",
- "export": {
- "downloadURL": "string",
- "expiresAt": "2019-08-24T14:15:22Z",
- "format": "tar",
- "phase": "Completed",
- "withPassword": true
}, - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "parentId": "70850378-7d3c-4f45-91b7-942d4dfbbd43",
- "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "status": "Completed"
}
]
Delete a ProjectBackupSchedule.
Authorizations:
path Parameters
projectBackupScheduleId required | string <uuid> ID of the ProjectBackupSchedule to delete. |
Responses
Response samples
- 403
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Get a ProjectBackupSchedule.
Authorizations:
path Parameters
projectBackupScheduleId required | string <uuid> ID of the ProjectBackupSchedule to retrieve. |
Responses
Response samples
- 200
- 403
- 404
- default
{- "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:
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
- Payload
{- "description": "I'm a ProjectBackupSchedule",
- "schedule": "5 4 * * *",
- "ttl": "7d"
}
Response samples
- 400
- 404
- 412
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a ProjectBackup.
Authorizations:
path Parameters
projectBackupId required | string <uuid> ID of the ProjectBackup to retrieve. |
Responses
Response samples
- 200
- 403
- 404
- default
{- "createdAt": "2019-08-24T14:15:22Z",
- "deletable": true,
- "description": "I'm a ProjectBackup",
- "expiresAt": "2019-08-24T14:15:22Z",
- "export": {
- "downloadURL": "string",
- "expiresAt": "2019-08-24T14:15:22Z",
- "format": "tar",
- "phase": "Completed",
- "withPassword": true
}, - "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:
path Parameters
projectBackupId required | string <uuid> ID of the ProjectBackup to change the description of. |
Request Body schema: application/jsonrequired
description | string Description of the ProjectBackup. |
Responses
Request samples
- Payload
{- "description": "I'm a ProjectBackup"
}
Response samples
- 400
- 403
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Create an SFTPUser for a Project.
Authorizations:
path Parameters
projectId required | string ID of the Project to create an SFTPUser for. |
Request Body schema: application/jsonrequired
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
- Payload
{- "accessLevel": "read",
- "authentication": {
- "password": "string"
}, - "description": "string",
- "directories": [
- "string"
], - "expiresAt": "2019-08-24T14:15:22Z"
}
Response samples
- 201
- 400
- 403
- default
{- "accessLevel": "full",
- "active": true,
- "authUpdatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "description": "string",
- "directories": [
- "string"
], - "expiresAt": "2019-08-24T14:15:22Z",
- "hasPassword": true,
- "id": "string",
- "projectId": "string",
- "publicKeys": [
- {
- "comment": "string",
- "key": "string"
}
], - "updatedAt": "2019-08-24T14:15:22Z",
- "userName": "string"
}
Get all SFTPUsers for a Project.
Authorizations:
path Parameters
projectId required | string ID of the Project to request SFTPUsers for. |
query Parameters
limit | integer |
skip | integer |
Responses
Response samples
- 200
- 403
- 404
- default
[- {
- "accessLevel": "full",
- "active": true,
- "authUpdatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "description": "string",
- "directories": [
- "string"
], - "expiresAt": "2019-08-24T14:15:22Z",
- "hasPassword": true,
- "id": "string",
- "projectId": "string",
- "publicKeys": [
- {
- "comment": "string",
- "key": "string"
}
], - "updatedAt": "2019-08-24T14:15:22Z",
- "userName": "string"
}
]
Get an SFTPUser.
Authorizations:
path Parameters
sftpUserId required | string ID of the SFTPUser to get. |
Responses
Response samples
- 200
- 403
- 404
- default
{- "accessLevel": "full",
- "active": true,
- "authUpdatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "description": "string",
- "directories": [
- "string"
], - "expiresAt": "2019-08-24T14:15:22Z",
- "hasPassword": true,
- "id": "string",
- "projectId": "string",
- "publicKeys": [
- {
- "comment": "string",
- "key": "string"
}
], - "updatedAt": "2019-08-24T14:15:22Z",
- "userName": "string"
}
Update an SFTPUser.
Authorizations:
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
- Payload
{- "accessLevel": "read",
- "active": true,
- "description": "string",
- "directories": [
- "string"
], - "expiresAt": "2019-08-24T14:15:22Z",
- "password": "string",
- "publicKeys": [
- {
- "comment": "string",
- "key": "string"
}
]
}
Response samples
- 400
- 403
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Create an SSHUser for a Project.
Authorizations:
path Parameters
projectId required | string ID of the Project to create an SSHUser for. |
Request Body schema: application/jsonrequired
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
- Payload
{- "authentication": {
- "password": "string"
}, - "description": "string",
- "expiresAt": "2019-08-24T14:15:22Z"
}
Response samples
- 201
- 400
- 403
- default
{- "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": [
- {
- "comment": "string",
- "key": "string"
}
], - "updatedAt": "2019-08-24T14:15:22Z",
- "userName": "string"
}
Get all SSHUsers for a Project.
Authorizations:
path Parameters
projectId required | string ID of the Project to retrieve SSHUsers for. |
query Parameters
limit | integer |
skip | integer |
Responses
Response samples
- 200
- 403
- 404
- default
[- {
- "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": [
- {
- "comment": "string",
- "key": "string"
}
], - "updatedAt": "2019-08-24T14:15:22Z",
- "userName": "string"
}
]
Get an SSHUser.
Authorizations:
path Parameters
sshUserId required | string ID of the SSHUser to be retrieved. |
Responses
Response samples
- 200
- 403
- 404
- default
{- "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": [
- {
- "comment": "string",
- "key": "string"
}
], - "updatedAt": "2019-08-24T14:15:22Z",
- "userName": "string"
}
Update an SSHUser.
Authorizations:
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
- Payload
{- "active": true,
- "description": "string",
- "expiresAt": "2019-08-24T14:15:22Z",
- "password": "string",
- "publicKeys": [
- {
- "comment": "string",
- "key": "string"
}
]
}
Response samples
- 400
- 403
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Abort a CronjobExecution.
Authorizations:
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
Responses
Request samples
- Payload
null
Response samples
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Create a Cronjob.
Authorizations:
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) |
string <email> | |
interval required | string |
timeout required | number [ 1 .. 86400 ] |
Responses
Request samples
- Payload
{- "active": true,
- "appId": "28c365d5-df94-4a54-8217-3ce51d068868",
- "description": "i am a cronjob",
- "email": "user@example.com",
- "interval": "*/5 * * * *",
- "timeout": 1
}
Response samples
- 201
- 400
- 412
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
List Cronjobs belonging to a Project.
Authorizations:
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
- 200
- default
[- {
- "active": true,
- "appId": "28c365d5-df94-4a54-8217-3ce51d068868",
- "createdAt": "2019-08-24T14:15:22Z",
- "description": "i am a cronjob",
- "email": "user@example.com",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "interval": "*/5 * * * *",
- "latestExecution": {
- "abortedBy": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}, - "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": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
}, - "nextExecutionTime": "2019-08-24T14:15:22Z",
- "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "shortId": "cron-bd26li",
- "timeout": 1,
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
Trigger a Cronjob.
Authorizations:
path Parameters
cronjobId required | string <uuid> ID of the Cronjob to trigger. |
Request Body schema: application/json
Responses
Request samples
- Payload
null
Response samples
- 201
- 404
- 412
- default
{- "id": "string"
}
List CronjobExecutions belonging to a Cronjob.
Authorizations:
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
- 200
- default
[- {
- "abortedBy": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}, - "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": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
}
]
Delete a Cronjob.
Authorizations:
path Parameters
cronjobId required | string <uuid> ID of the Cronjob to delete. |
Responses
Response samples
- 400
- 412
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a Cronjob.
Authorizations:
path Parameters
cronjobId required | string <uuid> ID of the Cronjob to be retrieved. |
Responses
Response samples
- 200
- 404
- default
{- "active": true,
- "appId": "28c365d5-df94-4a54-8217-3ce51d068868",
- "createdAt": "2019-08-24T14:15:22Z",
- "description": "i am a cronjob",
- "email": "user@example.com",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "interval": "*/5 * * * *",
- "latestExecution": {
- "abortedBy": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}, - "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": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
}, - "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:
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) | |
string <email> | |
interval | string |
timeout | number [ 1 .. 86400 ] |
Responses
Request samples
- Payload
{- "active": true,
- "description": "i am a cronjob",
- "email": "user@example.com",
- "interval": "*/5 * * * *",
- "timeout": 1
}
Response samples
- 400
- 404
- 412
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a CronjobExecution.
Authorizations:
path Parameters
executionId required | string Example: cron-bd26li-28027320 ID of the CronjobExecution to be retrieved. |
cronjobId required | string <uuid> |
Responses
Response samples
- 200
- 404
- default
{- "abortedBy": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}, - "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": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
}
Update a Cronjob's app id.
Authorizations:
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
- Payload
{- "appId": "28c365d5-df94-4a54-8217-3ce51d068868"
}
Response samples
- 400
- 412
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
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:
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/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Get an AppInstallation.
Authorizations:
path Parameters
appInstallationId required | string <uuid> |
Responses
Response samples
- 200
- 404
- default
{- "appId": "28c365d5-df94-4a54-8217-3ce51d068868",
- "appVersion": {
- "current": "string",
- "desired": "string"
}, - "customDocumentRoot": "string",
- "description": "string",
- "disabled": false,
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "installationPath": "string",
- "linkedDatabases": [
- {
- "databaseId": "d0f4f849-8ecf-4909-96bf-7953790e45f9",
- "databaseUserIds": {
- "property1": "string",
- "property2": "string"
}, - "kind": "mysql",
- "purpose": "primary"
}
], - "processes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "screenshotId": "0e72f9bc-74b1-4f8d-8cd1-3ecd9226451e",
- "screenshotRef": "string",
- "shortId": "a-XXXXXX",
- "systemSoftware": [
- {
- "systemSoftwareId": "f5b4ab49-b9c6-4251-85b9-e8267adaa09d",
- "systemSoftwareVersion": {
- "current": "string",
- "desired": "string"
}, - "updatePolicy": "none"
}
], - "updatePolicy": "none",
- "userInputs": [
- {
- "name": "string",
- "value": "string"
}
]
}
Update properties belonging to an AppInstallation.
Authorizations:
path Parameters
appInstallationId required | string <uuid> |
Request Body schema: application/jsonrequired
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
- Payload
{- "appVersionId": "043bcc03-0ebb-4d3f-a077-563dc63dbd08",
- "customDocumentRoot": "string",
- "description": "string",
- "systemSoftware": {
- "property1": {
- "systemSoftwareVersion": "string",
- "updatePolicy": "none"
}, - "property2": {
- "systemSoftwareVersion": "string",
- "updatePolicy": "none"
}
}, - "updatePolicy": "none",
- "userInputs": [
- {
- "name": "string",
- "value": "string"
}
]
}
Response samples
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Get an AppVersion.
Authorizations:
path Parameters
appId required | string <uuid> |
appVersionId required | string <uuid> |
Responses
Response samples
- 200
- 404
- default
{- "appId": "string",
- "databases": [
- {
- "description": "string",
- "kind": "mysql",
- "parameters": {
- "property1": "string",
- "property2": "string"
}, - "version": "8b898373-21c7-4028-b85f-cc5068e68df9"
}
], - "docRoot": "string",
- "docRootUserEditable": true,
- "externalVersion": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "internalVersion": "string",
- "recommended": true,
- "requestHandler": {
- "exampleValues": [
- {
- "name": "string",
- "value": "string"
}
], - "name": "string",
- "namespace": "string",
- "parametersTemplate": "string"
}, - "systemSoftwareDependencies": [
- {
- "systemSoftwareId": "f5b4ab49-b9c6-4251-85b9-e8267adaa09d",
- "versionRange": "string"
}
], - "userInputs": [
- {
- "dataSource": "string",
- "dataType": "text",
- "defaultValue": "string",
- "format": "email",
- "lifecycleConstraint": "installation",
- "name": "string",
- "positionMeta": {
- "index": 0,
- "section": "string",
- "step": "string"
}, - "required": true,
- "validationSchema": "string"
}
]
}
Get the installed `SystemSoftware' for a specific `AppInstallation`.
Authorizations:
path Parameters
appInstallationId required | string <uuid> |
query Parameters
tagFilter | string |
Responses
Response samples
- 200
- 404
- default
[- {
- "id": "string",
- "meta": {
- "property1": "string",
- "property2": "string"
}, - "name": "string",
- "tags": [
- "string"
]
}
]
Get the missing requirements of an appInstallation for a specific target AppVersion.
Authorizations:
path Parameters
appInstallationId required | string <uuid> |
query Parameters
targetAppVersionID required | string <uuid> |
Responses
Response samples
- 200
- 404
- default
{- "missingSystemSoftwareDependencies": [
- {
- "systemSoftwareId": "f5b4ab49-b9c6-4251-85b9-e8267adaa09d",
- "versionRange": "string"
}
], - "missingUserInputs": [
- {
- "dataSource": "string",
- "dataType": "text",
- "defaultValue": "string",
- "format": "email",
- "lifecycleConstraint": "installation",
- "name": "string",
- "positionMeta": {
- "index": 0,
- "section": "string",
- "step": "string"
}, - "required": true,
- "validationSchema": "string"
}
]
}
Get a SystemSoftwareVersion.
Authorizations:
path Parameters
systemSoftwareId required | string <uuid> |
systemSoftwareVersionId required | string <uuid> |
Responses
Response samples
- 200
- 404
- default
{- "expiryDate": "2019-08-24T14:15:22Z",
- "externalVersion": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "internalVersion": "string",
- "recommended": true,
- "systemSoftwareDependencies": [
- {
- "systemSoftwareId": "f5b4ab49-b9c6-4251-85b9-e8267adaa09d",
- "versionRange": "string"
}
], - "userInputs": [
- {
- "dataSource": "string",
- "dataType": "text",
- "defaultValue": "string",
- "format": "email",
- "lifecycleConstraint": "installation",
- "name": "string",
- "positionMeta": {
- "index": 0,
- "section": "string",
- "step": "string"
}, - "required": true,
- "validationSchema": "string"
}
]
}
Create linkage between an AppInstallation and a MySQLDatabase.
Authorizations:
path Parameters
appInstallationId required | string <uuid> |
Request Body schema: application/jsonrequired
databaseId required | string <uuid> |
object | |
purpose required | string Enum: "primary" "cache" "custom" |
Responses
Request samples
- Payload
{- "databaseId": "d0f4f849-8ecf-4909-96bf-7953790e45f9",
- "databaseUserIds": {
- "property1": "string",
- "property2": "string"
}, - "purpose": "primary"
}
Response samples
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
List AppInstallations belonging to a Project.
Authorizations:
path Parameters
projectId required | string <uuid> |
query Parameters
limit | integer >= 0 |
page | integer >= 0 |
skip | integer >= 0 |
Responses
Response samples
- 200
- default
[- {
- "appId": "28c365d5-df94-4a54-8217-3ce51d068868",
- "appVersion": {
- "current": "string",
- "desired": "string"
}, - "customDocumentRoot": "string",
- "description": "string",
- "disabled": false,
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "installationPath": "string",
- "linkedDatabases": [
- {
- "databaseId": "d0f4f849-8ecf-4909-96bf-7953790e45f9",
- "databaseUserIds": {
- "property1": "string",
- "property2": "string"
}, - "kind": "mysql",
- "purpose": "primary"
}
], - "processes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "screenshotId": "0e72f9bc-74b1-4f8d-8cd1-3ecd9226451e",
- "screenshotRef": "string",
- "shortId": "a-XXXXXX",
- "systemSoftware": [
- {
- "systemSoftwareId": "f5b4ab49-b9c6-4251-85b9-e8267adaa09d",
- "systemSoftwareVersion": {
- "current": "string",
- "desired": "string"
}, - "updatePolicy": "none"
}
], - "updatePolicy": "none",
- "userInputs": [
- {
- "name": "string",
- "value": "string"
}
]
}
]
Request an AppInstallation.
Authorizations:
path Parameters
projectId required | string <uuid> |
Request Body schema: application/jsonrequired
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
- Payload
{- "appVersionId": "043bcc03-0ebb-4d3f-a077-563dc63dbd08",
- "description": "string",
- "updatePolicy": "none",
- "userInputs": [
- {
- "name": "string",
- "value": "string"
}
]
}
Response samples
- 201
- 400
- 404
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
List AppVersions belonging to an App.
Authorizations:
path Parameters
appId required | string <uuid> |
query Parameters
recommended | boolean |
Responses
Response samples
- 200
- default
[- {
- "appId": "string",
- "databases": [
- {
- "description": "string",
- "kind": "mysql",
- "parameters": {
- "property1": "string",
- "property2": "string"
}, - "version": "8b898373-21c7-4028-b85f-cc5068e68df9"
}
], - "docRoot": "string",
- "docRootUserEditable": true,
- "externalVersion": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "internalVersion": "string",
- "recommended": true,
- "requestHandler": {
- "exampleValues": [
- {
- "name": "string",
- "value": "string"
}
], - "name": "string",
- "namespace": "string",
- "parametersTemplate": "string"
}, - "systemSoftwareDependencies": [
- {
- "systemSoftwareId": "f5b4ab49-b9c6-4251-85b9-e8267adaa09d",
- "versionRange": "string"
}
], - "userInputs": [
- {
- "dataSource": "string",
- "dataType": "text",
- "defaultValue": "string",
- "format": "email",
- "lifecycleConstraint": "installation",
- "name": "string",
- "positionMeta": {
- "index": 0,
- "section": "string",
- "step": "string"
}, - "required": true,
- "validationSchema": "string"
}
]
}
]
List SystemSoftwares.
Authorizations:
query Parameters
limit | integer >= 0 |
page | integer >= 0 |
skip | integer >= 0 |
Responses
Response samples
- 200
- default
[- {
- "id": "string",
- "meta": {
- "property1": "string",
- "property2": "string"
}, - "name": "string",
- "tags": [
- "string"
]
}
]
List SystemSoftwareVersions belonging to a SystemSoftware.
Authorizations:
path Parameters
systemSoftwareId required | string <uuid> |
query Parameters
versionRange | string |
recommended | boolean |
Responses
Response samples
- 200
- default
[- {
- "expiryDate": "2019-08-24T14:15:22Z",
- "externalVersion": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "internalVersion": "string",
- "recommended": true,
- "systemSoftwareDependencies": [
- {
- "systemSoftwareId": "f5b4ab49-b9c6-4251-85b9-e8267adaa09d",
- "versionRange": "string"
}
], - "userInputs": [
- {
- "dataSource": "string",
- "dataType": "text",
- "defaultValue": "string",
- "format": "email",
- "lifecycleConstraint": "installation",
- "name": "string",
- "positionMeta": {
- "index": 0,
- "section": "string",
- "step": "string"
}, - "required": true,
- "validationSchema": "string"
}
]
}
]
List update candidates belonging to an AppVersion.
Authorizations:
path Parameters
appId required | string <uuid> |
baseAppVersionId required | string <uuid> |
Responses
Response samples
- 200
- default
[- {
- "appId": "string",
- "databases": [
- {
- "description": "string",
- "kind": "mysql",
- "parameters": {
- "property1": "string",
- "property2": "string"
}, - "version": "8b898373-21c7-4028-b85f-cc5068e68df9"
}
], - "docRoot": "string",
- "docRootUserEditable": true,
- "externalVersion": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "internalVersion": "string",
- "recommended": true,
- "requestHandler": {
- "exampleValues": [
- {
- "name": "string",
- "value": "string"
}
], - "name": "string",
- "namespace": "string",
- "parametersTemplate": "string"
}, - "systemSoftwareDependencies": [
- {
- "systemSoftwareId": "f5b4ab49-b9c6-4251-85b9-e8267adaa09d",
- "versionRange": "string"
}
], - "userInputs": [
- {
- "dataSource": "string",
- "dataType": "text",
- "defaultValue": "string",
- "format": "email",
- "lifecycleConstraint": "installation",
- "name": "string",
- "positionMeta": {
- "index": 0,
- "section": "string",
- "step": "string"
}, - "required": true,
- "validationSchema": "string"
}
]
}
]
Request a copy of an AppInstallation.
Authorizations:
path Parameters
appInstallationId required | string <uuid> |
Request Body schema: application/jsonrequired
Properties to copy an app installation.
description required | string |
targetProjectId | string <uuid> |
Responses
Request samples
- Payload
{- "description": "string",
- "targetProjectId": "12c621fc-9c1e-4a5b-8872-128a71b0fe83"
}
Response samples
- 201
- 404
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Get runtime status belonging to an AppInstallation.
Authorizations:
path Parameters
appInstallationId required | string |
Responses
Response samples
- 200
- 404
- default
{- "lastExitCode": 0,
- "logFileLocation": "string",
- "state": "running",
- "uptimeSeconds": 0
}
Create linkage between an AppInstallation and DatabaseUsers.
Authorizations:
path Parameters
appInstallationId required | string <uuid> |
databaseId required | string <uuid> |
Request Body schema: application/jsonrequired
Properties to update for the specified system software.
required | object | ||
|
Responses
Request samples
- Payload
{- "databaseUserIds": {
- "property1": "string",
- "property2": "string"
}
}
Response samples
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Remove linkage between an AppInstallation and a Database.
Authorizations:
path Parameters
appInstallationId required | string <uuid> |
databaseId required | string <uuid> |
Responses
Response samples
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Create linkage between an AppInstallation and a MySql-Database. Deprecated
Authorizations:
path Parameters
appInstallationId required | string <uuid> |
Request Body schema: application/jsonrequired
Properties for linking a Database
databaseId required | string <uuid> |
object | |
purpose required | string Enum: "primary" "cache" "custom" |
Responses
Request samples
- Payload
{- "databaseId": "d0f4f849-8ecf-4909-96bf-7953790e45f9",
- "databaseUserIds": {
- "property1": "string",
- "property2": "string"
}, - "purpose": "primary"
}
Response samples
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
List directories belonging to a Project.
Authorizations:
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
- 200
- 403
- 404
- 503
- default
{- "absolutePath": "string",
- "isDirectory": true,
- "isExecutable": true,
- "isFile": true,
- "isSymlink": true,
- "items": [
- { }
], - "name": "string",
- "size": 0,
- "target": "string"
}
Get a Project directory filesystem usage.
Authorizations:
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
- 200
- 403
- 404
- 503
- default
{- "path": "string",
- "totalBytes": 0,
- "usedBytes": 0
}
Get a Project file's content.
Authorizations:
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
- 403
- 404
- 503
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Get a Project's file/filesystem authorization token.
Authorizations:
path Parameters
projectId required | string ID of the Project to retrieve an authorization token for. |
Responses
Response samples
- 200
- 403
- 404
- 503
{- "jwt": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkFkYSBMb3ZlbGFjZSIsImlhdCI6MTUxNjIzOTAyMn0.sMjBP_p34T5mbJTVdEWQ8i2hQPVxsmlt8L6-rKpCczo"
}
Get a Project file's information.
Authorizations:
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
- 200
- 403
- 404
- 503
- default
{- "absolutePath": "string",
- "isDirectory": true,
- "isExecutable": true,
- "isFile": true,
- "isSymlink": true,
- "items": [
- { }
], - "name": "string",
- "size": 0,
- "target": "string"
}
Cancel the Termination for the referred ContractItem.
Authorizations:
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
- 200
- 400
- 404
- default
{- "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
- "isCancelled": true
}
Schedule the Termination of a ContractItem.
Authorizations:
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/jsonrequired
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
- Payload
{- "reason": "Server wird nicht mehr benötigt",
- "terminationTargetDate": "2019-08-24T14:15:22Z"
}
Response samples
- 201
- 400
- 404
- default
{- "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:
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
- 200
- 400
- 404
- default
{- "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
- "isCancelled": true
}
Cancel the Termination for the referred Contract.
Authorizations:
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
- 200
- 400
- 404
- default
{- "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "isCancelled": true
}
Schedule the Termination of a Contract.
Authorizations:
path Parameters
contractId required | string <uuid> Example: f6bb2d44-e6be-46dc-96f7-9602a7177a75 The uuid of the Contract to be terminated. |
Request Body schema: application/jsonrequired
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
- Payload
{- "reason": "Projekt wird nicht mehr benötigt",
- "terminationTargetDate": "2019-08-24T14:15:22Z"
}
Response samples
- 201
- 400
- 404
- default
{- "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "itemsScheduledForTermination": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "reason": "Projekt wird nicht mehr benötigt",
- "terminationTargetDate": "2019-08-24"
}
Return the BaseItem of the Contract with the given ID.
Authorizations:
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
- 200
- 400
- 404
- default
{- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}
Return the Contract for the given Domain.
Authorizations:
path Parameters
domainId required | string <uuid> Example: 0a6de990-b33f-4cf8-adba-025a26515657 |
Responses
Response samples
- 200
- 400
- 404
- default
{- "additionalItems": [
- {
- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "baseItem": {
- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}, - "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "contractNumber": "V1234567",
- "customerId": "3a201faa-5160-47e0-a758-325ba794b543",
- "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}
}
Return the Contract for the given Project.
Authorizations:
path Parameters
projectId required | string <uuid> Example: 0a6de990-b33f-4cf8-adba-025a26515657 |
Responses
Response samples
- 200
- 400
- 404
- default
{- "additionalItems": [
- {
- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "baseItem": {
- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}, - "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "contractNumber": "V1234567",
- "customerId": "3a201faa-5160-47e0-a758-325ba794b543",
- "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}
}
Return the Contract for the given Server.
Authorizations:
path Parameters
serverId required | string <uuid> Example: 0a6de990-b33f-4cf8-adba-025a26515657 |
Responses
Response samples
- 200
- 400
- 404
- default
{- "additionalItems": [
- {
- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "baseItem": {
- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}, - "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "contractNumber": "V1234567",
- "customerId": "3a201faa-5160-47e0-a758-325ba794b543",
- "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}
}
Get the ContractItem with the given ID.
Authorizations:
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
- 200
- 400
- 404
- default
{- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}
Returns the Contract with the given ID.
Authorizations:
path Parameters
contractId required | string <uuid> Example: 97cecfa0-2c3c-4272-a510-c775fcaade01 The uuid of the Contract to be returned. |
Responses
Response samples
- 200
- 400
- 404
- default
{- "additionalItems": [
- {
- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "baseItem": {
- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}, - "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "contractNumber": "V1234567",
- "customerId": "3a201faa-5160-47e0-a758-325ba794b543",
- "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}
}
Return the next TerminationDate for the ContractItem with the given ID.
Authorizations:
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
- 200
- 400
- 404
- default
{- "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
- "nextTerminationDate": "2019-08-24T14:15:22Z"
}
Return a list of Contracts for the given Customer.
Authorizations:
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
- 200
- 400
- 404
- default
[- {
- "additionalItems": [
- {
- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "baseItem": {
- "activationDate": "2019-08-24T14:15:22Z",
- "aggregateReference": {
- "aggregate": "project",
- "domain": "project",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
}, - "articles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "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": {
- "newArticles": [
- {
- "amount": 1,
- "articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "description": "Musterbeschreibung",
- "id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
- "name": "Musterartikel",
- "unitPrice": {
- "currency": "EUR",
- "value": 100
}
}
], - "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}, - "totalPrice": {
- "currency": "EUR",
- "value": 100
}
}, - "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "contractNumber": "V1234567",
- "customerId": "3a201faa-5160-47e0-a758-325ba794b543",
- "termination": {
- "reason": "Not needed anymore",
- "scheduledAtDate": "2019-08-24T14:15:22Z",
- "scheduledByUserId": "string",
- "targetDate": "2019-08-24T14:15:22Z"
}
}
]
Get details of an Invoice. Deprecated
Authorizations:
path Parameters
customerId required | string Example: edefeee4-e8e9-4e2d-ab95-9a2eb6104cfb |
invoiceId required | string <uuid> Example: 154219e9-bf4a-4f41-9c72-0449a98db62f |
Responses
Response samples
- 200
- 400
- 404
- default
{- "amountPaid": 500,
- "cancellation": {
- "cancellationId": "cdbabe1a-095c-4468-b2c1-8255bca8af74",
- "cancelledAt": "2019-08-24T14:15:22Z",
- "correctionNumber": "RG1234567",
- "pdfId": "246b0b51-a4b3-4d09-afbe-ef4f373ccfcf",
- "reason": "Kulanz"
}, - "cancellationOf": "f28d1210-4d10-446e-9a3b-d0f512559947",
- "currency": "EUR",
- "customerId": "e0a3b0e0-0e0e-0e0e-0e0e-0e0e0e0e0e0e",
- "date": "2019-08-24T14:15:22Z",
- "groups": [
- {
- "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "description": "Space-Server: \"Mein Space-Server\"",
- "items": [
- {
- "additionalDescription": "Short-ID: \"s-123456\"",
- "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
- "description": "Space-Server: \"Mein Space-Server\"",
- "itemCancelledOrCorrectedBy": [
- {
- "sourceInvoiceId": "c137e116-73d5-45b7-8e9e-d27fc3f59424",
- "sourceInvoiceItemId": "f95b162d-698f-46da-88ef-d9981b4d250b"
}
], - "itemId": "f11b669d-7201-4c21-88af-d85092f0c005",
- "price": {
- "currency": "EUR",
- "value": 1000
}, - "reference": {
- "sourceInvoiceId": "c137e116-73d5-45b7-8e9e-d27fc3f59424",
- "sourceInvoiceItemId": "f95b162d-698f-46da-88ef-d9981b4d250b"
}, - "serviceDate": "2019-08-24T14:15:22Z",
- "servicePeriod": {
- "end": "2019-08-24T14:15:22Z",
- "start": "2019-08-24T14:15:22Z"
}, - "vatRate": 19
}
]
}
], - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "invoiceNumber": "RG1234567",
- "invoiceType": "REGULAR",
- "paymentSettings": {
- "accountHolder": "Ada Lovelace",
- "bic": "DEUTDEDB123",
- "iban": "DE12345678901234567890",
- "method": "debit"
}, - "pdfId": "246b0b51-a4b3-4d09-afbe-ef4f373ccfcf",
- "recipient": {
- "address": {
- "street": "Königsberger Straße",
- "houseNumber": "4-6",
- "city": "Espelkamp",
- "zip": "32339",
- "countryCode": "DE",
- "addressPrefix": "c/o Ada Lovelace"
}, - "company": "Mittwald CM Service GmbH & Co. KG",
- "emailAddress": "user@example.com",
- "firstName": "Ada",
- "lastName": "Lovelace",
- "phoneNumbers": [
- "+49 123 4567890"
], - "salutation": "mr",
- "title": "Dr.",
- "useFormalTerm": true
}, - "status": "NEW",
- "totalGross": 595,
- "totalNet": 500,
- "vatId": "DE123456789"
}
Get details of an Invoice.
Authorizations:
path Parameters
invoiceId required | string <uuid> Example: 154219e9-bf4a-4f41-9c72-0449a98db62f |
Responses
Response samples
- 200
- 400
- 404
- default
{- "amountPaid": 500,
- "cancellation": {
- "cancellationId": "cdbabe1a-095c-4468-b2c1-8255bca8af74",
- "cancelledAt": "2019-08-24T14:15:22Z",
- "correctionNumber": "RG1234567",
- "pdfId": "246b0b51-a4b3-4d09-afbe-ef4f373ccfcf",
- "reason": "Kulanz"
}, - "cancellationOf": "f28d1210-4d10-446e-9a3b-d0f512559947",
- "currency": "EUR",
- "customerId": "e0a3b0e0-0e0e-0e0e-0e0e-0e0e0e0e0e0e",
- "date": "2019-08-24T14:15:22Z",
- "groups": [
- {
- "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "description": "Space-Server: \"Mein Space-Server\"",
- "items": [
- {
- "additionalDescription": "Short-ID: \"s-123456\"",
- "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
- "description": "Space-Server: \"Mein Space-Server\"",
- "itemCancelledOrCorrectedBy": [
- {
- "sourceInvoiceId": "c137e116-73d5-45b7-8e9e-d27fc3f59424",
- "sourceInvoiceItemId": "f95b162d-698f-46da-88ef-d9981b4d250b"
}
], - "itemId": "f11b669d-7201-4c21-88af-d85092f0c005",
- "price": {
- "currency": "EUR",
- "value": 1000
}, - "reference": {
- "sourceInvoiceId": "c137e116-73d5-45b7-8e9e-d27fc3f59424",
- "sourceInvoiceItemId": "f95b162d-698f-46da-88ef-d9981b4d250b"
}, - "serviceDate": "2019-08-24T14:15:22Z",
- "servicePeriod": {
- "end": "2019-08-24T14:15:22Z",
- "start": "2019-08-24T14:15:22Z"
}, - "vatRate": 19
}
]
}
], - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "invoiceNumber": "RG1234567",
- "invoiceType": "REGULAR",
- "paymentSettings": {
- "accountHolder": "Ada Lovelace",
- "bic": "DEUTDEDB123",
- "iban": "DE12345678901234567890",
- "method": "debit"
}, - "pdfId": "246b0b51-a4b3-4d09-afbe-ef4f373ccfcf",
- "recipient": {
- "address": {
- "street": "Königsberger Straße",
- "houseNumber": "4-6",
- "city": "Espelkamp",
- "zip": "32339",
- "countryCode": "DE",
- "addressPrefix": "c/o Ada Lovelace"
}, - "company": "Mittwald CM Service GmbH & Co. KG",
- "emailAddress": "user@example.com",
- "firstName": "Ada",
- "lastName": "Lovelace",
- "phoneNumbers": [
- "+49 123 4567890"
], - "salutation": "mr",
- "title": "Dr.",
- "useFormalTerm": true
}, - "status": "NEW",
- "totalGross": 595,
- "totalNet": 500,
- "vatId": "DE123456789"
}
Get InvoiceSettings of a Customer.
Authorizations:
path Parameters
customerId required | string Example: edefeee4-e8e9-4e2d-ab95-9a2eb6104cfb |
Responses
Response samples
- 200
- 400
- 404
- default
{- "additionalEmailRecipients": [
- "user@example.com"
], - "debitPaymentStopUntil": "2019-08-24T14:15:22Z",
- "id": "5f9b9b9b-9b9b-9b9b-9b9b-9b9b9b9b9b9b",
- "invoicePeriod": 1,
- "lastBankingInformation": {
- "accountHolder": "Ada Lovelace",
- "bic": "DEUTDEDB123",
- "iban": "DE12345678901234567890"
}, - "paymentSettings": {
- "accountHolder": "Ada Lovelace",
- "bic": "DEUTDEDB123",
- "iban": "DE12345678901234567890",
- "method": "debit"
}, - "printedInvoices": true,
- "recipient": {
- "address": {
- "street": "Königsberger Straße",
- "houseNumber": "4-6",
- "city": "Espelkamp",
- "zip": "32339",
- "countryCode": "DE",
- "addressPrefix": "c/o Ada Lovelace"
}, - "company": "Mittwald CM Service GmbH & Co. KG",
- "emailAddress": "user@example.com",
- "firstName": "Ada",
- "lastName": "Lovelace",
- "phoneNumbers": [
- "+49 123 4567890"
], - "salutation": "mr",
- "title": "Dr.",
- "useFormalTerm": true
}, - "recipientSameAsOwner": true,
- "status": [
- {
- "message": "Unfortunately, we were unable to debit your account. Please update your account details.",
- "severity": "success",
- "type": "returnDebitNote"
}
], - "targetDay": 15
}
Update InvoiceSettings of a Customer.
Authorizations:
path Parameters
customerId required | string Example: edefeee4-e8e9-4e2d-ab95-9a2eb6104cfb |
Request Body schema: application/jsonrequired
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
- Payload
{- "additionalEmailRecipients": [
- "hallo@test.de"
], - "invoicePeriod": 1,
- "paymentSettings": {
- "accountHolder": "Ada Lovelace",
- "bic": "DEUTDEDB123",
- "iban": "DE12345678901234567890",
- "method": "debit"
}, - "printedInvoices": true,
- "recipient": {
- "address": {
- "street": "Königsberger Straße",
- "houseNumber": "4-6",
- "city": "Espelkamp",
- "zip": "32339",
- "countryCode": "DE",
- "addressPrefix": "c/o Ada Lovelace"
}, - "company": "Mittwald CM Service GmbH & Co. KG",
- "emailAddress": "user@example.com",
- "firstName": "Ada",
- "lastName": "Lovelace",
- "phoneNumbers": [
- "+49 123 4567890"
], - "salutation": "mr",
- "title": "Dr.",
- "useFormalTerm": true
}, - "recipientSameAsOwner": true,
- "targetDay": 15
}
Response samples
- 200
- 400
- 404
- default
{- "additionalEmailRecipients": [
- "user@example.com"
], - "debitPaymentStopUntil": "2019-08-24T14:15:22Z",
- "id": "5f9b9b9b-9b9b-9b9b-9b9b-9b9b9b9b9b9b",
- "invoicePeriod": 1,
- "lastBankingInformation": {
- "accountHolder": "Ada Lovelace",
- "bic": "DEUTDEDB123",
- "iban": "DE12345678901234567890"
}, - "paymentSettings": {
- "accountHolder": "Ada Lovelace",
- "bic": "DEUTDEDB123",
- "iban": "DE12345678901234567890",
- "method": "debit"
}, - "printedInvoices": true,
- "recipient": {
- "address": {
- "street": "Königsberger Straße",
- "houseNumber": "4-6",
- "city": "Espelkamp",
- "zip": "32339",
- "countryCode": "DE",
- "addressPrefix": "c/o Ada Lovelace"
}, - "company": "Mittwald CM Service GmbH & Co. KG",
- "emailAddress": "user@example.com",
- "firstName": "Ada",
- "lastName": "Lovelace",
- "phoneNumbers": [
- "+49 123 4567890"
], - "salutation": "mr",
- "title": "Dr.",
- "useFormalTerm": true
}, - "recipientSameAsOwner": true,
- "status": [
- {
- "message": "Unfortunately, we were unable to debit your account. Please update your account details.",
- "severity": "success",
- "type": "returnDebitNote"
}
], - "targetDay": 15
}
Request an Access Token for the Invoice file.
Authorizations:
path Parameters
customerId required | string Example: edefeee4-e8e9-4e2d-ab95-9a2eb6104cfb |
invoiceId required | string <uuid> Example: 154219e9-bf4a-4f41-9c72-0449a98db62f |
Responses
Response samples
- 200
- 400
- 404
- default
{- "accessToken": "string",
- "expiresAt": "2019-08-24T14:15:22Z"
}
List Invoices of a Customer.
Authorizations:
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
- 200
- 400
- 404
- default
[- {
- "amountPaid": 500,
- "cancellation": {
- "cancellationId": "cdbabe1a-095c-4468-b2c1-8255bca8af74",
- "cancelledAt": "2019-08-24T14:15:22Z",
- "correctionNumber": "RG1234567",
- "pdfId": "246b0b51-a4b3-4d09-afbe-ef4f373ccfcf",
- "reason": "Kulanz"
}, - "cancellationOf": "f28d1210-4d10-446e-9a3b-d0f512559947",
- "currency": "EUR",
- "customerId": "e0a3b0e0-0e0e-0e0e-0e0e-0e0e0e0e0e0e",
- "date": "2019-08-24T14:15:22Z",
- "groups": [
- {
- "contractId": "dbf32426-cf38-4818-9c6e-3230d889fa51",
- "description": "Space-Server: \"Mein Space-Server\"",
- "items": [
- {
- "additionalDescription": "Short-ID: \"s-123456\"",
- "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
- "description": "Space-Server: \"Mein Space-Server\"",
- "itemCancelledOrCorrectedBy": [
- {
- "sourceInvoiceId": "c137e116-73d5-45b7-8e9e-d27fc3f59424",
- "sourceInvoiceItemId": "f95b162d-698f-46da-88ef-d9981b4d250b"
}
], - "itemId": "f11b669d-7201-4c21-88af-d85092f0c005",
- "price": {
- "currency": "EUR",
- "value": 1000
}, - "reference": {
- "sourceInvoiceId": "c137e116-73d5-45b7-8e9e-d27fc3f59424",
- "sourceInvoiceItemId": "f95b162d-698f-46da-88ef-d9981b4d250b"
}, - "serviceDate": "2019-08-24T14:15:22Z",
- "servicePeriod": {
- "end": "2019-08-24T14:15:22Z",
- "start": "2019-08-24T14:15:22Z"
}, - "vatRate": 19
}
]
}
], - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "invoiceNumber": "RG1234567",
- "invoiceType": "REGULAR",
- "paymentSettings": {
- "accountHolder": "Ada Lovelace",
- "bic": "DEUTDEDB123",
- "iban": "DE12345678901234567890",
- "method": "debit"
}, - "pdfId": "246b0b51-a4b3-4d09-afbe-ef4f373ccfcf",
- "recipient": {
- "address": {
- "street": "Königsberger Straße",
- "houseNumber": "4-6",
- "city": "Espelkamp",
- "zip": "32339",
- "countryCode": "DE",
- "addressPrefix": "c/o Ada Lovelace"
}, - "company": "Mittwald CM Service GmbH & Co. KG",
- "emailAddress": "user@example.com",
- "firstName": "Ada",
- "lastName": "Lovelace",
- "phoneNumbers": [
- "+49 123 4567890"
], - "salutation": "mr",
- "title": "Dr.",
- "useFormalTerm": true
}, - "status": "NEW",
- "totalGross": 595,
- "totalNet": 500,
- "vatId": "DE123456789"
}
]
Create an Order.
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "orderData": {
- "customerId": "string",
- "description": "My first project",
- "diskspaceInGiB": 10,
- "promotionCode": "123456",
- "spec": {
- "machineType": "prospace.2cpu.4gb"
}, - "useFreeTrial": true
}, - "orderType": "domain"
}
Response samples
- 201
- 400
- 403
- default
{- "orderId": "string"
}
Create TariffChange Order.
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "tariffChangeData": {
- "contractId": "string",
- "diskspaceInGiB": 10,
- "spec": {
- "machineType": "prospace.2cpu.4gb"
}
}, - "tariffChangeType": "projectHosting"
}
Response samples
- 201
- 400
- default
{- "orderId": "string"
}
Get Order for Customer.
Get details of a single Order, User must have access to the Order/Customer.
Authorizations:
path Parameters
orderId required | string <uuid> Example: 123e4567-e89b-12d3-a456-426614174000 |
Responses
Response samples
- 200
- default
{- "contractChangeContractId": "e2a9194a-38da-44cf-8a75-e319022b512d",
- "customerId": "4317f5c5-1ea8-4084-a9f1-3a8e7e1c94ff",
- "dueDate": "2019-08-24T14:15:22Z",
- "invoicingPeriod": 12,
- "items": [
- {
- "addons": [
- {
- "hidden": true,
- "key": "string",
- "value": "string"
}
], - "articleId": "PS23-PLUS-0004",
- "articleName": "proSpace",
- "articleTemplateName": "Pro-Space-Hosting",
- "attributeConfiguration": [
- {
- "key": "storage",
- "value": 10
}
], - "isInclusive": true,
- "orderItemId": "33207bce-c741-4896-a76b-8afcf6e4179a",
- "predefinedDomainAggregateId": "aa38d836-fe72-4c43-aad3-9472b51edf61",
- "price": 1000,
- "reference": {
- "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
- "offerItemId": "773d562b-e846-44b7-9fc9-36ed3f9082f6",
- "orderItemId": "33207bce-c741-4896-a76b-8afcf6e4179a"
}
}
], - "orderDate": "2019-08-24T14:15:22Z",
- "orderId": "b3e1eced-f2bd-4d8c-9765-fbc9d1d222d5",
- "orderNumber": "5XXXXXX",
- "profile": {
- "email": "user@example.com",
- "first_name": "Ada",
- "last_name": "Lovelace",
- "title": "other",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "status": "NEW",
- "summary": {
- "nonRecurring": 1000,
- "recurring": 9000,
- "summary": 10000
}, - "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:
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
- 200
- default
[- {
- "contractChangeContractId": "e2a9194a-38da-44cf-8a75-e319022b512d",
- "customerId": "4317f5c5-1ea8-4084-a9f1-3a8e7e1c94ff",
- "dueDate": "2019-08-24T14:15:22Z",
- "invoicingPeriod": 12,
- "items": [
- {
- "addons": [
- {
- "hidden": true,
- "key": "string",
- "value": "string"
}
], - "articleId": "PS23-PLUS-0004",
- "articleName": "proSpace",
- "articleTemplateName": "Pro-Space-Hosting",
- "attributeConfiguration": [
- {
- "key": "storage",
- "value": 10
}
], - "isInclusive": true,
- "orderItemId": "33207bce-c741-4896-a76b-8afcf6e4179a",
- "predefinedDomainAggregateId": "aa38d836-fe72-4c43-aad3-9472b51edf61",
- "price": 1000,
- "reference": {
- "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
- "offerItemId": "773d562b-e846-44b7-9fc9-36ed3f9082f6",
- "orderItemId": "33207bce-c741-4896-a76b-8afcf6e4179a"
}
}
], - "orderDate": "2019-08-24T14:15:22Z",
- "orderId": "b3e1eced-f2bd-4d8c-9765-fbc9d1d222d5",
- "orderNumber": "5XXXXXX",
- "profile": {
- "email": "user@example.com",
- "first_name": "Ada",
- "last_name": "Lovelace",
- "title": "other",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "status": "NEW",
- "summary": {
- "nonRecurring": 1000,
- "recurring": 9000,
- "summary": 10000
}, - "type": "NEW_ORDER"
}
]
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:
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
- 200
- default
[- {
- "contractChangeContractId": "e2a9194a-38da-44cf-8a75-e319022b512d",
- "customerId": "4317f5c5-1ea8-4084-a9f1-3a8e7e1c94ff",
- "dueDate": "2019-08-24T14:15:22Z",
- "invoicingPeriod": 12,
- "items": [
- {
- "addons": [
- {
- "hidden": true,
- "key": "string",
- "value": "string"
}
], - "articleId": "PS23-PLUS-0004",
- "articleName": "proSpace",
- "articleTemplateName": "Pro-Space-Hosting",
- "attributeConfiguration": [
- {
- "key": "storage",
- "value": 10
}
], - "isInclusive": true,
- "orderItemId": "33207bce-c741-4896-a76b-8afcf6e4179a",
- "predefinedDomainAggregateId": "aa38d836-fe72-4c43-aad3-9472b51edf61",
- "price": 1000,
- "reference": {
- "contractItemId": "ec96fd9c-3b72-4c52-8b90-f202c369d74e",
- "offerItemId": "773d562b-e846-44b7-9fc9-36ed3f9082f6",
- "orderItemId": "33207bce-c741-4896-a76b-8afcf6e4179a"
}
}
], - "orderDate": "2019-08-24T14:15:22Z",
- "orderId": "b3e1eced-f2bd-4d8c-9765-fbc9d1d222d5",
- "orderNumber": "5XXXXXX",
- "profile": {
- "email": "user@example.com",
- "first_name": "Ada",
- "last_name": "Lovelace",
- "title": "other",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "status": "NEW",
- "summary": {
- "nonRecurring": 1000,
- "recurring": 9000,
- "summary": 10000
}, - "type": "NEW_ORDER"
}
]
Preview Order.
Request Body schema: application/jsonrequired
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
- Payload
{- "orderData": {
- "customerId": "string",
- "description": "My first project",
- "diskspaceInGiB": 10,
- "spec": {
- "machineType": "prospace.2cpu.4gb"
}
}, - "orderType": "domain"
}
Response samples
- 200
- 400
- 422
- default
{- "machineTypePrice": 500,
- "storagePrice": 1000,
- "totalPrice": 1500
}
Preview TariffChange.
Authorizations:
Request Body schema: application/jsonrequired
Your order information
de.mittwald.v1.order.ProjectHostingTariffChange (object) or de.mittwald.v1.order.ServerTariffChange (object) | |
tariffChangeType | string Enum: "projectHosting" "server" |
Responses
Request samples
- Payload
{- "tariffChangeData": {
- "contractId": "string",
- "diskspaceInGiB": 10,
- "spec": {
- "machineType": "prospace.2cpu.4gb"
}
}, - "tariffChangeType": "projectHosting"
}
Response samples
- 200
- 400
- 422
- default
{- "machineTypePrice": 100,
- "storagePrice": 900,
- "totalPrice": 1000
}
Create a MySQLDatabase with a MySQLUser.
Authorizations:
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
- Payload
{- "database": {
- "characterSettings": {
- "characterSet": "string",
- "collation": "string"
}, - "description": "string",
- "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "version": "string"
}, - "user": {
- "accessIpMask": "string",
- "accessLevel": "full",
- "externalAccess": true,
- "password": "string"
}
}
Response samples
- 201
- 400
- 404
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
List MySQLDatabases belonging to a Project.
Authorizations:
path Parameters
projectId required | string <uuid> ID of the Project to list MySQLDatabases for. |
Responses
Response samples
- 200
- 400
- 404
- default
[- {
- "characterSettings": {
- "characterSet": "string",
- "collation": "string"
}, - "createdAt": "2019-08-24T14:15:22Z",
- "description": "string",
- "finalizers": [
- "string"
], - "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"
}
]
Create a MySQLUser.
Authorizations:
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
- Payload
{- "accessIpMask": "string",
- "accessLevel": "full",
- "databaseId": "d0f4f849-8ecf-4909-96bf-7953790e45f9",
- "description": "string",
- "externalAccess": true,
- "password": "string"
}
Response samples
- 201
- 400
- 404
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
List MySQLUsers belonging to a Database.
Authorizations:
path Parameters
mysqlDatabaseId required | string <uuid> ID of the MySQLDatabase to list Users for. |
Responses
Response samples
- 200
- 400
- 404
- default
[- {
- "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"
}
]
Create a RedisDatabase.
Authorizations:
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
- Payload
{- "description": "My first RedisDatabase!",
- "version": "7.0"
}
Response samples
- 201
- 400
- 404
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
List RedisDatabases belonging to a Project.
Authorizations:
path Parameters
projectId required | string <uuid> ID of the Project to list RedisDatabases for. |
Responses
Response samples
- 200
- 400
- 404
- default
[- {
- "configuration": {
- "additionalFlags": [
- "--tcp-keepalive",
- "300"
], - "maxMemory": "16Mi",
- "maxMemoryPolicy": "allkeys-lru",
- "persistent": "true"
}, - "createdAt": "2023-03-28T13:15:00.000Z",
- "description": "My first RedisDatabase!",
- "finalizers": [
- "app:appinstallation:28471edf-d266-4d79-8ca8-169e330746db"
], - "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"
}
]
Delete a MySQLDatabase.
Authorizations:
path Parameters
mysqlDatabaseId required | string <uuid> ID of the MySQLDatabase to be deleted. |
Responses
Response samples
- 400
- 412
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a MySQLDatabase.
Authorizations:
path Parameters
mysqlDatabaseId required | string <uuid> ID of the MySQLDatabase to be retrieved. |
Responses
Response samples
- 200
- 400
- 404
- 500
- default
{- "characterSettings": {
- "characterSet": "string",
- "collation": "string"
}, - "createdAt": "2019-08-24T14:15:22Z",
- "description": "string",
- "finalizers": [
- "string"
], - "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:
path Parameters
mysqlUserId required | string <uuid> ID of the MySQLUser to delete. |
Responses
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a MySQLUser.
Authorizations:
path Parameters
mysqlUserId required | string <uuid> ID of the MySQLUser to be retrieved. |
Responses
Response samples
- 200
- 400
- 404
- default
{- "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:
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
- Payload
{- "accessIpMask": "string",
- "accessLevel": "full",
- "description": "string",
- "externalAccess": true
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Delete a RedisDatabase.
Authorizations:
path Parameters
redisDatabaseId required | string <uuid> ID of the RedisDatabase to delete. |
Responses
Response samples
- 400
- 412
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a RedisDatabase.
Authorizations:
path Parameters
redisDatabaseId required | string <uuid> ID of the RedisDatabase to retrieve. |
Responses
Response samples
- 200
- 400
- 404
- 500
- default
{- "configuration": {
- "additionalFlags": [
- "--tcp-keepalive",
- "300"
], - "maxMemory": "16Mi",
- "maxMemoryPolicy": "allkeys-lru",
- "persistent": "true"
}, - "createdAt": "2023-03-28T13:15:00.000Z",
- "description": "My first RedisDatabase!",
- "finalizers": [
- "app:appinstallation:28471edf-d266-4d79-8ca8-169e330746db"
], - "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:
path Parameters
mysqlUserId required | string <uuid> ID of the MySQLUser to disable. |
Request Body schema: application/json
Responses
Request samples
- Payload
null
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Enable a MySQLUser.
Authorizations:
path Parameters
mysqlUserId required | string <uuid> ID of the MySQLUser to enable. |
Request Body schema: application/json
Responses
Request samples
- Payload
null
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
List available MySQL character sets and collations, optionally filtered by a MySQLVersion.
Authorizations:
query Parameters
version | string ID of the MySQLVersion for which to list the available character sets in the format |
Responses
Response samples
- 200
- 400
- 404
- default
[- {
- "collations": [
- "utf8_general_ci",
- "utf8_bin",
- "utf8_unicode_ci"
], - "name": "utf8",
- "versionId": "mysql57"
}
]
Update a MySQLDatabase's default character settings.
Authorizations:
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) | ||||
|
Responses
Request samples
- Payload
{- "characterSettings": {
- "characterSet": "string",
- "collation": "string"
}
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update a MySQLDatabase's description.
Authorizations:
path Parameters
mysqlDatabaseId required | string <uuid> ID of the MySQLDatabase to update. |
Request Body schema: application/json
description required | string |
Responses
Request samples
- Payload
{- "description": "string"
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update a MySQLUser's password.
Authorizations:
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
- Payload
{- "password": "string"
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update a RedisDatabase's configuration.
Authorizations:
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. | |||||||||
|
Responses
Request samples
- Payload
{- "configuration": {
- "additionalFlags": [
- "string"
], - "maxMemory": "64Mi",
- "maxMemoryPolicy": "allkeys-lru",
- "persistent": true
}
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update a RedisDatabase's description.
Authorizations:
path Parameters
redisDatabaseId required | string <uuid> ID of the RedisDatabase to update. |
Request Body schema: application/json
description required | string |
Responses
Request samples
- Payload
{- "description": "string"
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get File Service Reference for a Screenshot of a domain. Deprecated
Authorizations:
path Parameters
domainId required | string <uuid> |
Request Body schema: application/jsonrequired
domainName required | string |
path required | string |
Responses
Request samples
- Payload
{- "domainName": "example.com",
- "path": "/var/www"
}
Response samples
- 200
- 404
- default
{- "references": [
- "string"
]
}
Create a DNSZone.
Authorizations:
Request Body schema: application/json
name required | string <idn-dnsname> |
parentZoneId required | string <uuid> |
Responses
Request samples
- Payload
{- "name": "string",
- "parentZoneId": "fc3f0e90-1ddc-4f5c-986e-6940ca41e6fa"
}
Response samples
- 201
- 400
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Delete a DNSZone.
Authorizations:
path Parameters
dnsZoneId required | string <uuid> The ID of the DNSZone to be deleted. |
Responses
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a DNSZone.
Authorizations:
path Parameters
dnsZoneId required | string <uuid> The ID of the zone to be retrieved. |
Responses
Response samples
- 200
- 400
- default
{- "domain": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "recordSet": {
- "cname": { },
- "combinedARecords": { },
- "mx": { },
- "srv": { },
- "txt": { }
}
}
List DNSZones belonging to a Project.
Authorizations:
path Parameters
projectId required | string <uuid> ID of the Project to list DNSZones for. |
Responses
Response samples
- 200
- 400
- default
[- {
- "domain": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "recordSet": {
- "cname": { },
- "combinedARecords": { },
- "mx": { },
- "srv": { },
- "txt": { }
}
}
]
updates a-records for a specific zone Deprecated
Authorizations:
path Parameters
zoneId required | string <uuid> the id of the zone the record belongs to |
Request Body schema: application/json
Responses
Request samples
- Payload
{ }
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
set a-records managed by ingress for a specific zone Deprecated
Authorizations:
path Parameters
zoneId required | string <uuid> the id of the zone you want to set managed |
Request Body schema: application/json
Responses
Request samples
- Payload
{ }
Response samples
- 204
- 400
- default
{- "ingressId": "4ab452d1-3ba9-4a4a-8778-1fc9f72e294e"
}
updates cname-record for a specific zone Deprecated
Authorizations:
path Parameters
zoneId required | string <uuid> the id of the zone the record belongs to |
Request Body schema: application/json
Responses
Request samples
- Payload
{ }
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
updates mx-records for a specific zone Deprecated
Authorizations:
path Parameters
zoneId required | string <uuid> the id of the zone the record belongs to |
Request Body schema: application/json
Responses
Request samples
- Payload
{ }
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
sets mx-records to managed for a specific zone Deprecated
Authorizations:
path Parameters
zoneId required | string <uuid> the id of the zone the record belongs to |
Request Body schema: application/json
Responses
Request samples
- Payload
{ }
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
updates srv-records for a specific zone Deprecated
Authorizations:
path Parameters
zoneId required | string <uuid> the id of the zone the record belongs to |
Request Body schema: application/json
Responses
Request samples
- Payload
{ }
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
updates txt-records for a specific zone Deprecated
Authorizations:
path Parameters
zoneId required | string <uuid> the id of the zone the record belongs to |
Request Body schema: application/json
Responses
Request samples
- Payload
{ }
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Set a record set on a DNSZone to managed.
Authorizations:
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
Responses
Request samples
- Payload
{ }
Response samples
- 204
- 400
- default
{- "ingressId": "4ab452d1-3ba9-4a4a-8778-1fc9f72e294e"
}
Update a record set on a DNSZone.
Authorizations:
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
Responses
Request samples
- Payload
{ }
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Abort a Domain declaration.
Abort an incomplete Domain registration/transfer.
Authorizations:
path Parameters
domainId required | string <uuid> |
Responses
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Change the owner contact of a domain. Deprecated
Change the domain owner of a fully registered domain.
Authorizations:
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)
|
Responses
Request samples
- Payload
{- "ownerC": [
- {
- "name": "string",
- "value": "string"
}
]
}
Response samples
- 200
- 400
- 404
- default
{- "isAsync": true,
- "transactionId": "string"
}
Change the Project relation of a Domain. Deprecated
Authorizations:
path Parameters
domainId required | string <uuid> |
Request Body schema: application/json
projectId | string <uuid> |
Responses
Request samples
- Payload
{- "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8"
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
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
- Payload
{- "domain": "string"
}
Response samples
- 200
- 400
- default
{- "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
- Payload
{- "domain": "string"
}
Response samples
- 200
- 400
- default
{- "available": true
}
List Domains
Authorizations:
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
- 200
- 400
- default
[- {
- "authCode": {
- "expires": "2019-08-24T14:15:22Z",
- "value": "string"
}, - "authCode2": {
- "expires": "2019-08-24T14:15:22Z"
}, - "connected": true,
- "deleted": true,
- "domain": "string",
- "domainId": "8a0b02c3-fdd8-452e-bc6e-ef07a335ec7e",
- "handles": {
- "adminC": {
- "current": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}, - "desired": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}
}, - "ownerC": {
- "current": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}, - "desired": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}
}
}, - "nameservers": [
- "приклад.укр"
], - "processes": [
- {
- "error": "string",
- "lastUpdate": "2019-08-24T14:15:22Z",
- "processType": "UNSPECIFIED",
- "state": "UNSPECIFIED",
- "status": "string",
- "statusCode": "string",
- "transactionId": "string"
}
], - "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "transferInAuthCode": "string",
- "usesDefaultNameserver": true
}
]
Check if a Domain is available to transfer.
Request Body schema: application/json
authCode required | string |
domain required | string <naked-domain> |
Responses
Request samples
- Payload
{- "authCode": "string",
- "domain": "string"
}
Response samples
- 200
- 400
- 403
- default
{- "reasons": {
- "domainAgeTooSmall": true,
- "domainDoesNotExist": true,
- "transferLock": true,
- "wrongAuthCode": true
}, - "transferable": true
}
Change all nameservers of a Domain. Deprecated
Authorizations:
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
- Payload
{- "nameservers": [
- "приклад.укр",
- "приклад.укр"
]
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the nameservers of a Domain.
Authorizations:
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
- Payload
{- "nameservers": [
- "приклад.укр",
- "приклад.укр"
]
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
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:
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
- Payload
{- "authCode": "string"
}
Response samples
- 200
- 400
- 404
- default
{- "isAsync": true,
- "transactionId": "string"
}
Update a Domain's OwnerC handle. Deprecated
This route will also restart the transfer or register itself.
Authorizations:
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)
|
Responses
Request samples
- Payload
{- "ownerC": [
- {
- "name": "string",
- "value": "string"
}
]
}
Response samples
- 200
- 400
- 404
- default
{- "isAsync": true,
- "transactionId": "string"
}
Get a Domain.
Authorizations:
path Parameters
domainId required | string <uuid> |
Responses
Response samples
- 200
- 400
- 404
- default
{- "authCode": {
- "expires": "2019-08-24T14:15:22Z",
- "value": "string"
}, - "authCode2": {
- "expires": "2019-08-24T14:15:22Z"
}, - "connected": true,
- "deleted": true,
- "domain": "string",
- "domainId": "8a0b02c3-fdd8-452e-bc6e-ef07a335ec7e",
- "handles": {
- "adminC": {
- "current": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}, - "desired": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}
}, - "ownerC": {
- "current": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}, - "desired": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}
}
}, - "nameservers": [
- "приклад.укр"
], - "processes": [
- {
- "error": "string",
- "lastUpdate": "2019-08-24T14:15:22Z",
- "processType": "UNSPECIFIED",
- "state": "UNSPECIFIED",
- "status": "string",
- "statusCode": "string",
- "transactionId": "string"
}
], - "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
- 200
- default
{- "jsonSchemaAdminC": { },
- "jsonSchemaOwnerC": { }
}
Get the latest screenshot's FileReference belonging to a Domain.
Authorizations:
path Parameters
domainId required | string <uuid> |
Request Body schema: application/jsonrequired
domainName required | string |
path required | string |
Responses
Request samples
- Payload
{- "domainName": "example.com",
- "path": "/var/www"
}
Response samples
- 200
- 404
- default
{- "reference": "string"
}
List Domains belonging to a Project. Deprecated
Authorizations:
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
- 200
- 400
- default
[- {
- "authCode": {
- "expires": "2019-08-24T14:15:22Z",
- "value": "string"
}, - "authCode2": {
- "expires": "2019-08-24T14:15:22Z"
}, - "connected": true,
- "deleted": true,
- "domain": "string",
- "domainId": "8a0b02c3-fdd8-452e-bc6e-ef07a335ec7e",
- "handles": {
- "adminC": {
- "current": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}, - "desired": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}
}, - "ownerC": {
- "current": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}, - "desired": {
- "handleFields": [
- {
- "name": "string",
- "value": "string"
}
], - "handleRef": "string"
}
}
}, - "nameservers": [
- "приклад.укр"
], - "processes": [
- {
- "error": "string",
- "lastUpdate": "2019-08-24T14:15:22Z",
- "processType": "UNSPECIFIED",
- "state": "UNSPECIFIED",
- "status": "string",
- "statusCode": "string",
- "transactionId": "string"
}
], - "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "transferInAuthCode": "string",
- "usesDefaultNameserver": true
}
]
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
- 200
- default
{- "jsonSchemaAdminC": { },
- "jsonSchemaOwnerC": { }
}
Resend a Domain email.
Trigger a resend of a confirmation or registrant verification email. Has no effect on .de Domains.
Authorizations:
path Parameters
domainId required | string <uuid> |
Responses
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
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:
path Parameters
domainId required | string <uuid> |
Request Body schema: application/json
authCode required | string >= 4 characters |
Responses
Request samples
- Payload
{- "authCode": "string"
}
Response samples
- 200
- 400
- 404
- default
{- "isAsync": true,
- "transactionId": "string"
}
Update a contact of a Domain.
Authorizations:
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)
|
Responses
Request samples
- Payload
{- "contact": [
- {
- "name": "string",
- "value": "string"
}
]
}
Response samples
- 200
- 400
- 404
- default
{- "isAsync": true,
- "transactionId": "string"
}
Update a Domain's project id.
Authorizations:
path Parameters
domainId required | string <uuid> |
Request Body schema: application/json
projectId | string <uuid> |
Responses
Request samples
- Payload
{- "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8"
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Create an Ingress.
Authorizations:
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 |
projectId required | string <uuid> |
Responses
Request samples
- Payload
{- "hostname": "приклад.укр",
- "paths": [
- {
- "path": "string",
- "target": {
- "directory": "string"
}
}
], - "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8"
}
Response samples
- 201
- 404
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "ownership": {
- "txtRecord": "string",
- "verified": true
}
}
List Ingresses.
Authorizations:
query Parameters
projectId | string <uuid> ID of the Project to list Ingresses for. |
Responses
Response samples
- 200
- 404
- default
[- {
- "dnsValidationErrors": [
- "ERROR_UNSPECIFIED"
], - "hostname": "приклад.укр",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "ips": {
- "v4": [
- "192.168.0.1"
]
}, - "isDefault": true,
- "isDomain": true,
- "isEnabled": true,
- "ownership": {
- "txtRecord": "string",
- "verified": true
}, - "paths": [
- {
- "path": "string",
- "target": {
- "directory": "string"
}
}
], - "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "tls": {
- "acme": true,
- "requestDeadline": "2019-08-24T14:15:22Z"
}
}
]
Get an Ingress.
Authorizations:
path Parameters
ingressId required | string <uuid> ID of the Ingress to be retrieved. |
Responses
Response samples
- 200
- 404
- default
{- "dnsValidationErrors": [
- "ERROR_UNSPECIFIED"
], - "hostname": "приклад.укр",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "ips": {
- "v4": [
- "192.168.0.1"
]
}, - "isDefault": true,
- "isDomain": true,
- "isEnabled": true,
- "ownership": {
- "txtRecord": "string",
- "verified": true
}, - "paths": [
- {
- "path": "string",
- "target": {
- "directory": "string"
}
}
], - "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "tls": {
- "acme": true,
- "requestDeadline": "2019-08-24T14:15:22Z"
}
}
List Ingresses belonging to a project. Deprecated
Authorizations:
path Parameters
projectId required | string <uuid> ID of the Project to list Ingresses for |
Responses
Response samples
- 200
- 404
- default
[- {
- "dnsValidationErrors": [
- "ERROR_UNSPECIFIED"
], - "hostname": "приклад.укр",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "ips": {
- "v4": [
- "192.168.0.1"
]
}, - "isDefault": true,
- "isDomain": true,
- "isEnabled": true,
- "ownership": {
- "txtRecord": "string",
- "verified": true
}, - "paths": [
- {
- "path": "string",
- "target": {
- "directory": "string"
}
}
], - "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",
- "tls": {
- "acme": true,
- "requestDeadline": "2019-08-24T14:15:22Z"
}
}
]
Update an Ingresses paths. Deprecated
Authorizations:
path Parameters
ingressId required | string <uuid> |
Request Body schema: application/json
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
- Payload
[- {
- "path": "string",
- "target": {
- "directory": "string"
}
}
]
Response samples
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Update the paths of an Ingress.
Authorizations:
path Parameters
ingressId required | string <uuid> |
Request Body schema: application/json
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
- Payload
[- {
- "path": "string",
- "target": {
- "directory": "string"
}
}
]
Response samples
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Request the ACME certificate issuance of an Ingress.
Authorizations:
path Parameters
ingressId required | string <uuid> UUID of the Ingress to request the issuance for. |
Responses
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update an Ingresses tls settings. Deprecated
Authorizations:
path Parameters
ingressId required | string <uuid> |
Request Body schema: application/json
acme required | boolean Has to be |
requestDeadline | string <date-time> |
Responses
Request samples
- Payload
{- "acme": true,
- "requestDeadline": "2019-08-24T14:15:22Z"
}
Response samples
- 200
- 404
- default
{ }
Update the tls settings of an Ingress.
Authorizations:
path Parameters
ingressId required | string <uuid> |
Request Body schema: application/json
acme required | boolean Has to be |
requestDeadline | string <date-time> |
Responses
Request samples
- Payload
{- "acme": true,
- "requestDeadline": "2019-08-24T14:15:22Z"
}
Response samples
- 200
- 404
- default
{ }
Create a conversation.
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "categoryId": "string",
- "mainUserId": "ac7f1d2d-14f9-4b93-8b87-86b7fa85b153",
- "relatedTo": {
- "aggregate": "string",
- "domain": "string",
- "id": "string"
}, - "sharedWith": {
- "aggregate": "user",
- "domain": "user",
- "id": "string"
}, - "title": "string"
}
Response samples
- 201
- 400
- default
{- "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a"
}
Get all conversation the authenticated user has created or has access to.
Authorizations:
Responses
Response samples
- 200
- default
[- {
- "category": {
- "categoryId": "337f5e5d-288b-40d5-be14-901cc3acacc0",
- "name": "string",
- "referenceType": [
- "unspecified"
]
}, - "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a",
- "createdAt": "2019-08-24T14:15:22Z",
- "createdBy": {
- "active": true,
- "avatarRefId": "string",
- "clearName": "string",
- "department": "development",
- "userId": "string"
}, - "lastMessageAt": "2019-08-24T14:15:22Z",
- "lastMessageBy": {
- "active": true,
- "avatarRefId": "string",
- "clearName": "string",
- "department": "development",
- "userId": "string"
}, - "mainUser": {
- "active": true,
- "avatarRefId": "string",
- "clearName": "string",
- "department": "development",
- "userId": "string"
}, - "relatedTo": {
- "aggregate": "string",
- "domain": "string",
- "id": "string"
}, - "relations": [
- {
- "aggregate": "string",
- "domain": "string",
- "id": "string"
}
], - "sharedWith": {
- "aggregate": "string",
- "domain": "string",
- "id": "string"
}, - "shortId": "string",
- "status": "open",
- "title": "string",
- "visibility": "shared"
}
]
Send a new message in the conversation.
Authorizations:
path Parameters
conversationId required | string <uuid> |
Request Body schema: application/jsonrequired
fileIds | Array of strings <uuid> [ items <uuid > ] |
messageContent | string <= 8000 characters |
Responses
Request samples
- Payload
{- "fileIds": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "messageContent": "string"
}
Response samples
- 201
- 400
- 403
- 404
- default
{- "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a",
- "messageId": "8540d774-4863-4d2b-b788-4ecb19412e85"
}
Get all message of the conversation.
Authorizations:
path Parameters
conversationId required | string <uuid> |
Responses
Response samples
- 200
- 403
- 404
- default
[- {
- "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a",
- "createdAt": "2019-08-24T14:15:22Z",
- "createdBy": {
- "active": true,
- "avatarRefId": "string",
- "clearName": "string",
- "department": "development",
- "userId": "string"
}, - "files": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "status": "requested"
}
], - "internal": true,
- "messageContent": "string",
- "messageId": "8540d774-4863-4d2b-b788-4ecb19412e85",
- "type": "MESSAGE"
}
]
Get a specific conversation category.
Authorizations:
path Parameters
categoryId required | string <uuid> |
Responses
Response samples
- 200
- 400
- 404
- default
{- "categoryId": "337f5e5d-288b-40d5-be14-901cc3acacc0",
- "name": "string",
- "referenceType": [
- "unspecified"
]
}
Get members of a support conversation.
Authorizations:
path Parameters
conversationId required | string <uuid> |
Responses
Response samples
- 200
- 400
- 403
- 404
- default
[- {
- "active": true,
- "avatarRefId": "string",
- "clearName": "string",
- "department": "development",
- "userId": "string"
}
]
Get a support conversation.
Authorizations:
path Parameters
conversationId required | string <uuid> |
Responses
Response samples
- 200
- 400
- 403
- 404
- default
{- "category": {
- "categoryId": "337f5e5d-288b-40d5-be14-901cc3acacc0",
- "name": "string",
- "referenceType": [
- "unspecified"
]
}, - "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a",
- "createdAt": "2019-08-24T14:15:22Z",
- "createdBy": {
- "active": true,
- "avatarRefId": "string",
- "clearName": "string",
- "department": "development",
- "userId": "string"
}, - "lastMessageAt": "2019-08-24T14:15:22Z",
- "lastMessageBy": {
- "active": true,
- "avatarRefId": "string",
- "clearName": "string",
- "department": "development",
- "userId": "string"
}, - "mainUser": {
- "active": true,
- "avatarRefId": "string",
- "clearName": "string",
- "department": "development",
- "userId": "string"
}, - "relatedTo": {
- "aggregate": "string",
- "domain": "string",
- "id": "string"
}, - "relations": [
- {
- "aggregate": "string",
- "domain": "string",
- "id": "string"
}
], - "sharedWith": {
- "aggregate": "string",
- "domain": "string",
- "id": "string"
}, - "shortId": "string",
- "status": "open",
- "title": "string",
- "visibility": "shared"
}
Update the basic properties of the conversation.
Authorizations:
path Parameters
conversationId required | string <uuid> |
Request Body schema: application/jsonrequired
categoryId | string <uuid> |
object (de.mittwald.v1.conversation.AggregateReference) | |
title | string |
Responses
Request samples
- Payload
{- "categoryId": "337f5e5d-288b-40d5-be14-901cc3acacc0",
- "relatedTo": {
- "aggregate": "string",
- "domain": "string",
- "id": "string"
}, - "title": "string"
}
Response samples
- 200
- 400
- 403
- 404
- default
{- "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a"
}
Request an access token for the File belonging to the Conversation.
Authorizations:
path Parameters
conversationId required | string <uuid> |
fileId required | string <uuid> |
Responses
Response samples
- 200
- 400
- 404
- default
{- "accessToken": "string",
- "expiresAt": "2019-08-24T14:15:22Z"
}
Request a file upload token for the conversation.
Authorizations:
path Parameters
conversationId required | string <uuid> |
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 201
- 400
- default
{- "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a",
- "rules": {
- "maxSizeInKB": 0,
- "mimeTypes": [
- "string"
], - "properties": {
- "imageDimensions": {
- "max": {
- "height": 0,
- "width": 0
}, - "min": {
- "height": 0,
- "width": 0
}
}
}
}, - "uploadToken": "string"
}
Update the status of a conversation.
Authorizations:
path Parameters
conversationId required | string <uuid> |
Request Body schema: application/jsonrequired
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
- Payload
{- "status": "open"
}
Response samples
- 200
- 400
- 403
- 404
- default
{- "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a"
}
Update the content of the message
Authorizations:
path Parameters
conversationId required | string <uuid> |
messageId required | string <uuid> |
Request Body schema: application/jsonrequired
messageContent | string |
Responses
Request samples
- Payload
{- "messageContent": "string"
}
Response samples
- 200
- 400
- 403
- 404
- default
{- "messageId": "8540d774-4863-4d2b-b788-4ecb19412e85"
}
Accept a CustomerInvite.
Authorizations:
path Parameters
customerInviteId required | string <uuid> ID of the CustomerInvite to be accepted. |
Request Body schema: application/jsonrequired
invitationToken | string Token contained in the invite for authentication. |
Responses
Request samples
- Payload
{- "invitationToken": "string"
}
Response samples
- 400
- 403
- 412
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Create a new customer category.
Authorizations:
Request Body schema: application/jsonrequired
The category to create
id required | string |
isPublic required | boolean |
name required | string |
useAgencyDomainPrices required | boolean |
useAgencySslPrices required | boolean |
Responses
Request samples
- Payload
{- "id": "string",
- "isPublic": true,
- "name": "string",
- "useAgencyDomainPrices": true,
- "useAgencySslPrices": true
}
Response samples
- 201
- 400
- default
{- "customerId": "string",
- "isPublic": true,
- "name": "string",
- "useAgencyDomainPrices": true,
- "useAgencySslPrices": true
}
Create a CustomerInvite.
Authorizations:
path Parameters
customerId required | string <uuid> ID of the Customer to create a CustomerInvite for. |
Request Body schema: application/jsonrequired
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
- Payload
{- "mailAddress": "user@example.com",
- "membershipExpiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "role": "notset"
}
Response samples
- 201
- 400
- 403
- 409
- default
{- "avatarRefId": "string",
- "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
- "customerName": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "information": {
- "invitationToken": "string",
- "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "mailAddress": "user@example.com",
- "membershipExpiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "role": "notset"
}
Create a new customer profile.
Authorizations:
Request Body schema: application/jsonrequired
The customer to create
categoryId | string |
name required | string |
object (de.mittwald.v1.customer.Contact) | |
vatId | string |
Responses
Request samples
- Payload
{- "categoryId": "string",
- "name": "string",
- "owner": {
- "address": {
- "street": "Königsberger Straße",
- "houseNumber": "4-6",
- "city": "Espelkamp",
- "zip": "32339",
- "countryCode": "DE",
- "addressPrefix": "c/o Ada Lovelace"
}, - "company": "string",
- "emailAddress": "user@example.com",
- "firstName": "string",
- "lastName": "string",
- "phoneNumbers": [
- "string"
], - "salutation": "mr",
- "title": "string",
- "useFormalTerm": true
}, - "vatId": "string"
}
Response samples
- 201
- 400
- default
{- "customerId": "string",
- "customerNumber": "string",
- "name": "string"
}
Get all customer profiles the authenticated user has access to.
Authorizations:
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
- 200
- default
[- {
- "activeSuspension": {
- "createdAt": "2019-08-24T14:15:22Z"
}, - "avatarRefId": "string",
- "categoryId": "string",
- "creationDate": "2019-08-24T14:15:22Z",
- "customerId": "string",
- "customerNumber": "string",
- "executingUserRoles": [
- "owner"
], - "isBanned": true,
- "isInDefaultOfPayment": true,
- "memberCount": 0,
- "name": "string",
- "owner": {
- "address": {
- "street": "Königsberger Straße",
- "houseNumber": "4-6",
- "city": "Espelkamp",
- "zip": "32339",
- "countryCode": "DE",
- "addressPrefix": "c/o Ada Lovelace"
}, - "company": "string",
- "emailAddress": "user@example.com",
- "firstName": "string",
- "lastName": "string",
- "phoneNumbers": [
- "string"
], - "salutation": "mr",
- "title": "string",
- "useFormalTerm": true
}, - "projectCount": 0,
- "vatId": "string",
- "vatIdValidationState": "valid"
}
]
Decline a CustomerInvite.
Authorizations:
path Parameters
customerInviteId required | string <uuid> ID of the CustomerInvite to be declined. |
Request Body schema: application/json
Responses
Request samples
- Payload
null
Response samples
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Update a customer category.
Authorizations:
path Parameters
categoryId required | string |
Request Body schema: application/jsonrequired
The category object to update
id required | string |
isPublic required | boolean |
name required | string |
useAgencyDomainPrices required | boolean |
useAgencySslPrices required | boolean |
Responses
Request samples
- Payload
{- "id": "string",
- "isPublic": true,
- "name": "string",
- "useAgencyDomainPrices": true,
- "useAgencySslPrices": true
}
Response samples
- 200
- 400
- 404
- default
{- "customerId": "string",
- "isPublic": true,
- "name": "string",
- "useAgencyDomainPrices": true,
- "useAgencySslPrices": true
}
Get a CustomerInvite.
Authorizations:
path Parameters
customerInviteId required | string ID of the CustomerInvite to be retrieved. |
Responses
Response samples
- 200
- 404
- default
{- "avatarRefId": "string",
- "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
- "customerName": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "information": {
- "invitationToken": "string",
- "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "mailAddress": "user@example.com",
- "membershipExpiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "role": "notset"
}
Delete a CustomerMembership.
Authorizations:
path Parameters
customerMembershipId required | string <uuid> ID of the CustomerMembership to be deleted. |
Responses
Response samples
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Get a CustomerMembership.
Authorizations:
path Parameters
customerMembershipId required | string ID of the CustomerMembership to retrieve. |
Responses
Response samples
- 200
- 404
- default
{- "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:
path Parameters
customerMembershipId required | string <uuid> ID of the CustomerMembership to be updated. |
Request Body schema: application/jsonrequired
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
- Payload
{- "expiresAt": "2019-08-24T14:15:22Z",
- "role": "notset"
}
Response samples
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Delete a customer profile.
Authorizations:
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
- 200
- 404
- default
{- "customerId": "string"
}
Get a customer profile.
Authorizations:
path Parameters
customerId required | string The uuid of the customer to be returned |
Responses
Response samples
- 200
- 404
- default
{- "activeSuspension": {
- "createdAt": "2019-08-24T14:15:22Z"
}, - "avatarRefId": "string",
- "categoryId": "string",
- "creationDate": "2019-08-24T14:15:22Z",
- "customerId": "string",
- "customerNumber": "string",
- "executingUserRoles": [
- "owner"
], - "isBanned": true,
- "isInDefaultOfPayment": true,
- "memberCount": 0,
- "name": "string",
- "owner": {
- "address": {
- "street": "Königsberger Straße",
- "houseNumber": "4-6",
- "city": "Espelkamp",
- "zip": "32339",
- "countryCode": "DE",
- "addressPrefix": "c/o Ada Lovelace"
}, - "company": "string",
- "emailAddress": "user@example.com",
- "firstName": "string",
- "lastName": "string",
- "phoneNumbers": [
- "string"
], - "salutation": "mr",
- "title": "string",
- "useFormalTerm": true
}, - "projectCount": 0,
- "vatId": "string",
- "vatIdValidationState": "valid"
}
Update a customer profile.
Authorizations:
path Parameters
customerId required | string |
Request Body schema: application/jsonrequired
The customer object to update
categoryId | string |
customerId required | string |
name required | string |
object (de.mittwald.v1.customer.Contact) | |
vatId | string |
Responses
Request samples
- Payload
{- "categoryId": "string",
- "customerId": "string",
- "name": "string",
- "owner": {
- "address": {
- "street": "Königsberger Straße",
- "houseNumber": "4-6",
- "city": "Espelkamp",
- "zip": "32339",
- "countryCode": "DE",
- "addressPrefix": "c/o Ada Lovelace"
}, - "company": "string",
- "emailAddress": "user@example.com",
- "firstName": "string",
- "lastName": "string",
- "phoneNumbers": [
- "string"
], - "salutation": "mr",
- "title": "string",
- "useFormalTerm": true
}, - "vatId": "string"
}
Response samples
- 200
- 400
- 404
- default
{- "customerId": "string",
- "customerNumber": "string",
- "name": "string"
}
Get a CustomerInvite by token.
Authorizations:
header Parameters
token required | string Token of the CustomerInvite to be retrieved. |
Responses
Response samples
- 200
- 404
- default
{- "avatarRefId": "string",
- "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
- "customerName": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "information": {
- "invitationToken": "string",
- "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "mailAddress": "user@example.com",
- "membershipExpiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "role": "notset"
}
Leave a Customer.
Authorizations:
path Parameters
customerId required | string <uuid> ID of the Customer to be left. |
Request Body schema: application/json
Responses
Request samples
- Payload
null
Response samples
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
List CustomerInvites belonging to the executing user.
Authorizations:
query Parameters
limit | integer |
skip | integer |
Responses
Response samples
- 200
- 403
- 404
- default
[- {
- "avatarRefId": "string",
- "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
- "customerName": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "information": {
- "invitationToken": "string",
- "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "mailAddress": "user@example.com",
- "membershipExpiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "role": "notset"
}
]
List CustomerMemberships belonging to the executing user.
Authorizations:
query Parameters
limit | integer |
skip | integer |
Responses
Response samples
- 200
- 403
- 404
- default
[- {
- "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"
}
]
List Invites belonging to a Customer.
Authorizations:
path Parameters
customerId required | string ID of the Customer to list invites for. |
query Parameters
limit | integer |
skip | integer |
Responses
Response samples
- 200
- 404
- default
[- {
- "avatarRefId": "string",
- "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
- "customerName": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "information": {
- "invitationToken": "string",
- "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}, - "mailAddress": "user@example.com",
- "membershipExpiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "role": "notset"
}
]
List Memberships belonging to a Customer.
Authorizations:
path Parameters
customerId required | string Customer to list memberships for. |
query Parameters
limit | integer |
skip | integer |
Responses
Response samples
- 200
- 404
- default
[- {
- "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"
}
]
Remove the avatar picture of the customer profile.
Authorizations:
path Parameters
customerId required | string The uuid of the customer whose avatar is to be deleted |
Responses
Response samples
- 400
- 401
- 500
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Request a new avatar upload for the customer profile.
Authorizations:
path Parameters
customerId required | string The uuid of the customer for whom an avatar upload is to be requested |
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 200
- 400
- 401
- 500
{- "refId": "639293c5-5581-48d7-94b9-83aceaff93f8",
- "rules": {
- "maxSizeInKB": 0,
- "mimeTypes": [
- "string"
], - "properties": {
- "imageDimensions": {
- "max": {
- "height": 0,
- "width": 0
}, - "min": {
- "height": 0,
- "width": 0
}
}
}
}
}
Resend the mail for a CustomerInvite.
Authorizations:
path Parameters
customerInviteId required | string <uuid> ID of the CustomerInvite to resend the mail for. |
Request Body schema: application/json
Responses
Request samples
- Payload
null
Response samples
- 403
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
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:
Request Body schema: application/jsonrequired
email required | string <email> The new Email-Address. |
Responses
Request samples
- Payload
{- "email": "ada.lovelace@example.com"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Confirm password reset. Deprecated
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "password": "string",
- "token": "string",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Create a new issue. Deprecated
Authorizations:
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
- Payload
{- "message": "string",
- "origin": "string",
- "subject": "string",
- "type": "feedback",
- "vote": 10
}
Response samples
- 201
- 401
- 404
- default
{ }
Deletes an ApiToken. Deprecated
Authorizations:
path Parameters
apiTokenId required | string <uuid> The uuid of an ApiToken. |
Responses
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update an existing `ApiToken`. Deprecated
Authorizations:
path Parameters
apiTokenId required | string <uuid> |
Request Body schema: application/jsonrequired
description required | string |
expiresAt | string <date-time> |
Responses
Request samples
- Payload
{- "description": "Api Token for ...",
- "expiresAt": "2019-08-24T14:15:22Z"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Edit a stored ssh-key. Deprecated
Authorizations:
path Parameters
sshKeyId required | string <uuid> |
Request Body schema: application/jsonrequired
comment required | string |
expiresAt | string <date-time> |
Responses
Request samples
- Payload
{- "comment": "a.lovelace@example.com",
- "expiresAt": "2019-08-24T14:15:22Z"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Disable Multi Factor Authentication. Deprecated
Authorizations:
Request Body schema: application/jsonrequired
multiFactorCode required | string [ 6 .. 16 ] characters Multi Factor Code to confirm MFA. |
Responses
Request samples
- Payload
{- "multiFactorCode": "string"
}
Response samples
- 200
- 400
- default
{ }
Initialize password reset process. Deprecated
Authorizations:
Request Body schema: application/jsonrequired
email required | string <email> Email address to reset the password for. |
Responses
Request samples
- Payload
{- "email": "a.lovelace@example.com"
}
Response samples
- 400
- 403
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Terminate session and invalidate access token. Deprecated
Authorizations:
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Resend the Email-Address verification email. Deprecated
Authorizations:
Request Body schema: application/jsonrequired
string <email> | |
userId | string <uuid> |
Responses
Request samples
- Payload
{- "email": "ada.lovelace@example.com",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
Response samples
- 400
- 403
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Remove Avatar Deprecated
Authorizations:
path Parameters
userId required | string <uuid> |
Responses
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Request a new avatar upload Deprecated
Authorizations:
path Parameters
userId required | string <uuid> |
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 200
- 400
- default
{- "refId": "639293c5-5581-48d7-94b9-83aceaff93f8",
- "rules": {
- "maxSizeInKB": 0,
- "mimeTypes": [
- "string"
], - "properties": {
- "imageDimensions": {
- "max": {
- "height": 0,
- "width": 0
}, - "min": {
- "height": 0,
- "width": 0
}
}
}
}
}
Submit user feedback Deprecated
Authorizations:
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
- Payload
{- "message": "string",
- "origin": "string",
- "subject": "string",
- "vote": 10
}
Response samples
- 201
- 401
- 404
- default
{ }
Returns your submitted feedback Deprecated
Authorizations:
query Parameters
subject | string |
Responses
Response samples
- 200
- default
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "message": "string",
- "origin": "string",
- "subject": "string",
- "vote": 10
}
]
create a new issue Deprecated
Authorizations:
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
- Payload
{- "message": "string",
- "origin": "string",
- "subject": "string",
- "type": "feedback"
}
Response samples
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Change your personal information Deprecated
Authorizations:
path Parameters
userId required | string <uuid> |
Request Body schema: application/jsonrequired
required | object (de.mittwald.v1.commons.Person) The users personal information, e.g. first name. | ||||||
|
Responses
Request samples
- Payload
{- "person": {
- "firstName": "Ada",
- "lastName": "Lovelace",
- "title": "mr"
}
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get profile information for the specified user if the user is related to the executing user Deprecated
Authorizations:
path Parameters
userId required | string |
Responses
Response samples
- 200
- 403
- 404
- 412
- default
{- "avatarRef": "57efca18-f6e5-488b-8e38-5ff2dc541fc9",
- "email": "user@example.com",
- "employeeInformation": {
- "department": "Kundenservice"
}, - "person": {
- "firstName": "Ada",
- "lastName": "Lovelace",
- "title": "mr"
}, - "phoneNumber": "+491701234567",
- "registeredAt": "2019-08-24T14:15:22Z",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
update personalized settings Deprecated
Authorizations:
Request Body schema: application/jsonrequired
settingsString required | string |
Responses
Request samples
- Payload
{- "settingsString": "string"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Add phone number and init verification process Deprecated
Authorizations:
path Parameters
userId required | string <uuid> |
Request Body schema: application/jsonrequired
phoneNumber required | string |
Responses
Request samples
- Payload
{- "phoneNumber": "string"
}
Response samples
- 400
- 409
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
remove your PhoneNumber Deprecated
Authorizations:
path Parameters
userId required | string <uuid> |
Responses
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Verify phone number Deprecated
Authorizations:
path Parameters
userId required | string <uuid> |
Request Body schema: application/jsonrequired
code required | string |
phoneNumber required | string |
Responses
Request samples
- Payload
{- "code": "123456",
- "phoneNumber": "+491701234567"
}
Response samples
- 400
- 404
- 409
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get profile information for the executing user Deprecated
Authorizations:
Responses
Response samples
- 200
- default
{- "avatarRef": "57efca18-f6e5-488b-8e38-5ff2dc541fc9",
- "email": "user@example.com",
- "employeeInformation": {
- "department": "Kundenservice"
}, - "person": {
- "firstName": "Ada",
- "lastName": "Lovelace",
- "title": "mr"
}, - "phoneNumber": "+491701234567",
- "registeredAt": "2019-08-24T14:15:22Z",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
Update your account information. Deprecated
Authorizations:
Request Body schema: application/jsonrequired
required | object (de.mittwald.v1.commons.Person) The users personal information, e.g. first name. | ||||||
|
Responses
Request samples
- Payload
{- "person": {
- "firstName": "Ada",
- "lastName": "Lovelace",
- "title": "mr"
}
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Verify an added Email-Address. Deprecated
Authorizations:
Request Body schema: application/jsonrequired
email required | string <email> The Email-Address to verify. |
token | string The token found in the verification email. |
Responses
Request samples
- Payload
{- "email": "ada.lovelace@example.com",
- "token": "123456"
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a PasswordPolicy.
Authorizations:
path Parameters
passwordPolicy required | string Examples:
The name of the PasswordPolicy to be retrieved. |
Responses
Response samples
- 200
- default
"string"
Add phone number and start verification process.
Authorizations:
path Parameters
required | string or string Examples:
|
Request Body schema: application/jsonrequired
phoneNumber required | string |
Responses
Request samples
- Payload
{- "phoneNumber": "+491701234567"
}
Response samples
- 400
- 403
- 409
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Remove phone number.
Authorizations:
path Parameters
required | string or string Examples:
|
Responses
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Validate your second factor.
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "email": "a.lovelace@example.com",
- "multiFactorCode": "123456",
- "password": "string"
}
Response samples
- 200
- 400
- 408
- default
{- "expires": "2019-08-24T14:15:22Z",
- "token": "string"
}
Authenticate yourself to get an access token.
Authorizations:
Request Body schema: application/jsonrequired
email required | string The users Email-Address. |
password required | string Password of the User. |
Responses
Request samples
- Payload
{- "email": "a.lovelace@example.com",
- "password": "string"
}
Response samples
- 200
- 202
- 400
- 401
- default
{- "expires": "2019-08-24T14:15:22Z",
- "token": "string"
}
Authenticate an user with an access token retrieval key.
Authorizations:
Request Body schema: application/jsonrequired
accessTokenRetrievalKey required | string = 37 characters |
userId required | string <uuid> |
Responses
Request samples
- Payload
{- "accessTokenRetrievalKey": "stringstringstringstringstringstrings",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
Response samples
- 200
- 400
- default
{- "expiresAt": "2019-08-24T14:15:22Z",
- "token": "string"
}
Change your Email-Address.
Authorizations:
Request Body schema: application/jsonrequired
email required | string <email> The new Email-Address |
Responses
Request samples
- Payload
{- "email": "ada.lovelace@example.com"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Change your password.
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "multiFactorCode": "123456",
- "newPassword": "string",
- "oldPassword": "string"
}
Response samples
- 200
- 202
- 400
- default
{- "expires": "2019-08-24T14:15:22Z",
- "token": "string"
}
Check token for validity.
Authorizations:
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 200
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "publicToken": "string"
}
Confirm Multi Factor Authentication.
Authorizations:
Request Body schema: application/jsonrequired
multiFactorCode required | string [ 6 .. 16 ] characters Multi Factor Code to confirm MFA. |
Responses
Request samples
- Payload
{- "multiFactorCode": "123456"
}
Response samples
- 200
- 400
- default
{- "recoveryCodesList": [
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234
]
}
Disable Multi Factor Authentication.
Authorizations:
Request Body schema: application/jsonrequired
multiFactorCode required | string [ 6 .. 16 ] characters Multi Factor Code to confirm MFA. |
Responses
Request samples
- Payload
{- "multiFactorCode": "string"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Reset RecoveryCodes for MFA.
Authorizations:
Request Body schema: application/jsonrequired
multiFactorCode required | string [ 6 .. 16 ] characters Multi Factor Code to authorize your request. |
Responses
Request samples
- Payload
{- "multiFactorCode": "123456"
}
Response samples
- 200
- 400
- default
{- "recoveryCodesList": [
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234,
- 1234123412341234
]
}
Confirm password reset.
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "password": "string",
- "token": "string",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Create an access token retrieval key to acquire an access token for your user.
Authorizations:
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
null
Response samples
- 201
- default
{- "accessTokenRetrievalKey": "mwrk-abcdefghijklmnopqrstuvwxyz012345",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
Store a new ApiToken.
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "description": "Api Token - read",
- "expiresAt": "2019-08-24T14:15:22Z",
- "roles": {
- "value": [
- "api_read"
]
}
}
Response samples
- 201
- 400
- default
{- "token": "string"
}
Response samples
- 200
- default
[- {
- "apiTokenId": "5ff4666d-9d44-4d08-86ad-65e110b1c69f",
- "createdAt": "2019-08-24T14:15:22Z",
- "description": "Api Token - read",
- "expiresAt": "2019-08-24T14:15:22Z",
- "roles": [
- "api_read"
]
}
]
Submit your user feedback.
Authorizations:
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
- Payload
{- "message": "string",
- "subject": "string",
- "type": "feedback",
- "vote": 10
}
Response samples
- 201
- 401
- 404
- default
{ }
Store a new ssh-key.
Authorizations:
Request Body schema: application/jsonrequired
expiresAt | string <date-time> |
publicKey required | string |
Responses
Request samples
- Payload
{- "expiresAt": "2019-08-24T14:15:22Z",
- "publicKey": "ssh-rsa ..."
}
Response samples
- 201
- 400
- default
{ }
Response samples
- 200
- default
{- "sshKeys": [
- {
- "algorithm": "ssh-rsa",
- "comment": "a.lovelace@example.com",
- "createdAt": "2019-08-24T14:15:22Z",
- "expiresAt": "2019-08-24T14:15:22Z",
- "fingerprint": "a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1",
- "key": "string",
- "sshKeyId": "74f889aa-c5a3-4f57-a7d5-8446590add9a"
}
]
}
Deletes an ApiToken.
Authorizations:
path Parameters
apiTokenId required | string <uuid> The uuid of an ApiToken. |
Responses
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update an existing `ApiToken`.
Authorizations:
path Parameters
apiTokenId required | string <uuid> |
Request Body schema: application/jsonrequired
description required | string |
expiresAt | string <date-time> |
Responses
Request samples
- Payload
{- "description": "Api Token for ...",
- "expiresAt": "2019-08-24T14:15:22Z"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a specific ApiToken.
Authorizations:
path Parameters
apiTokenId required | string <uuid> The id of an ApiToken. |
Responses
Response samples
- 200
- 404
- default
{- "apiTokenId": "5ff4666d-9d44-4d08-86ad-65e110b1c69f",
- "createdAt": "2019-08-24T14:15:22Z",
- "description": "Api Token - read",
- "expiresAt": "2019-08-24T14:15:22Z",
- "roles": [
- "api_read"
]
}
Edit a stored ssh-key.
Authorizations:
path Parameters
sshKeyId required | string <uuid> |
Request Body schema: application/jsonrequired
comment required | string |
expiresAt | string <date-time> |
Responses
Request samples
- Payload
{- "comment": "a.lovelace@example.com",
- "expiresAt": "2019-08-24T14:15:22Z"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a specific stored ssh-key.
Authorizations:
path Parameters
sshKeyId required | string <uuid> |
Responses
Response samples
- 200
- 404
- default
{- "sshKey": {
- "algorithm": "ssh-rsa",
- "comment": "a.lovelace@example.com",
- "createdAt": "2019-08-24T14:15:22Z",
- "expiresAt": "2019-08-24T14:15:22Z",
- "fingerprint": "a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1",
- "key": "string",
- "sshKeyId": "74f889aa-c5a3-4f57-a7d5-8446590add9a"
}
}
Delete your account and all your personal data.
Authorizations:
Request Body schema: application/jsonrequired
multiFactorCode | string [ 6 .. 16 ] characters Multi Factor Code to authorize your request. |
password required | string |
Responses
Request samples
- Payload
{- "multiFactorCode": "123456",
- "password": "string"
}
Response samples
- 202
- 400
- 409
- default
{- "info": { },
- "message": "string",
- "name": "SecondFactorRequired"
}
Get your account information.
Authorizations:
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 200
- default
{- "email": "a.lovelace@example.com",
- "mfaDetails": {
- "mfaConfirmed": true,
- "mfaInitialized": true
}, - "passwordUpdatedAt": "2019-08-24T14:15:22Z",
- "person": {
- "firstName": "Ada",
- "lastName": "Lovelace",
- "title": "mr"
}, - "userId": "string"
}
Update your account information.
Authorizations:
Request Body schema: application/jsonrequired
required | object (de.mittwald.v1.commons.Person) The users personal information, e.g. first name. | ||||||
|
Responses
Request samples
- Payload
{- "person": {
- "firstName": "Ada",
- "lastName": "Lovelace",
- "title": "mr"
}
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
The timestamp of your latest password change.
Authorizations:
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 200
- default
{- "passwordUpdatedAt": "2019-08-24T14:15:22Z"
}
Get personalized settings.
Authorizations:
path Parameters
required | string or string Examples:
|
Responses
Response samples
- 200
- default
{- "settingsString": "eyJvbmJvYXJkaW5nIjp7ImNvbXBsZXRlZCI6W119LCJyZWNlbnRWaXNpdHMiOnsicmVjZW50VmlzaXRzIjp7fSwicmVjZW50VmlzaXRlZFBhdGhzIjp7fX0sImNoYW5nZWxvZ3MiOnsicmVhZElkcyI6WzIsMSwzLDQsNSw2LDgsNyw5XX19"
}
Update personalized GUI settings.
Authorizations:
path Parameters
required | string or string Examples:
|
Request Body schema: application/jsonrequired
settingsString required | string <base64> |
Responses
Request samples
- Payload
{- "settingsString": "eyJvbmJvYXJkaW5nIjp7ImNvbXBsZXRlZCI6W119LCJyZWNlbnRWaXNpdHMiOnsicmVjZW50VmlzaXRzIjp7fSwicmVjZW50VmlzaXRlZFBhdGhzIjp7fX0sImNoYW5nZWxvZ3MiOnsicmVhZElkcyI6WzIsMSwzLDQsNSw2LDgsNyw5XX19"
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get poll settings for the specified user.
Authorizations:
path Parameters
userId required | string |
Responses
Response samples
- 200
- 400
- 404
- default
{- "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:
path Parameters
userId required | string |
Request Body schema: application/jsonrequired
status required | string Enum: "completed" "muted" "ignored" |
userId required | string |
Responses
Request samples
- Payload
{- "status": "completed",
- "userId": "string"
}
Response samples
- 200
- 400
- 403
- default
{- "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:
path Parameters
tokenId required | string TokenId to identify a specific session. |
Responses
Response samples
- 200
- 404
- default
{- "created": "2019-08-24T14:15:22Z",
- "device": {
- "browser": "Safari",
- "model": "Apple Macintosh",
- "os": "Mac OS",
- "type": "Macbook"
}, - "lastAccess": "2019-08-24T14:15:22Z",
- "location": {
- "city": "Espelkamp",
- "country": "DE",
- "ipAddress": "192.168.0.1"
}, - "tokenId": "07dfef4c-e677-4ce6-87a3-cd348338445f"
}
Terminate a specific Session.
Authorizations:
path Parameters
tokenId required | string The sessionId is the id of the token used to create the session. |
Responses
Response samples
- 404
- default
{- "message": "Something went wrong",
- "type": "InternalServerError"
}
Get profile information for a user.
Authorizations:
path Parameters
required | string or string Examples:
|
Responses
Response samples
- 200
- 403
- 404
- 412
- default
{- "avatarRef": "57efca18-f6e5-488b-8e38-5ff2dc541fc9",
- "email": "user@example.com",
- "employeeInformation": {
- "department": "Kundenservice"
}, - "person": {
- "firstName": "Ada",
- "lastName": "Lovelace",
- "title": "mr"
}, - "phoneNumber": "+491701234567",
- "registeredAt": "2019-08-24T14:15:22Z",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
Change personal information.
Authorizations:
path Parameters
required | string or string Examples:
|
Request Body schema: application/jsonrequired
required | object (de.mittwald.v1.commons.Person) The users personal information, e.g. first name. | ||||||
|
Responses
Request samples
- Payload
{- "person": {
- "firstName": "Ada",
- "lastName": "Lovelace",
- "title": "mr"
}
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Initialize Multi Factor Authentication. If successful, it needs to be confirmed, before usage of mfa.
Authorizations:
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 200
- 400
- default
{- "barcode": "string",
- "url": "otpauth://totp/mStudio:test@gmail.com?algorithm=SHA1&digits=6&issuer=mStudio&period=30&secret=HTXT7KJFVNAJUPYWQRWMNVQE5AF5YZI2"
}
Initialize password reset process.
Authorizations:
Request Body schema: application/jsonrequired
email required | string <email> Email address to reset the password for. |
Responses
Request samples
- Payload
{- "email": "a.lovelace@example.com"
}
Response samples
- 201
- 400
- 403
- default
{ }
Submitted feedback of the given user.
Authorizations:
path Parameters
required | string or string Examples:
|
query Parameters
subject | string Filter for subject content. |
Responses
Response samples
- 200
- default
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "message": "string",
- "origin": "string",
- "subject": "string",
- "vote": 10
}
]
Response samples
- 200
- default
[- {
- "created": "2019-08-24T14:15:22Z",
- "device": {
- "browser": "Safari",
- "model": "Apple Macintosh",
- "os": "Mac OS",
- "type": "Macbook"
}, - "lastAccess": "2019-08-24T14:15:22Z",
- "location": {
- "city": "Espelkamp",
- "country": "DE",
- "ipAddress": "192.168.0.1"
}, - "tokenId": "07dfef4c-e677-4ce6-87a3-cd348338445f"
}
]
Terminate session and invalidate access token.
Authorizations:
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Retrieve Access Token from Authorization Code.
The OAuth 2.0 client retrieves an Access Token from an existing authorization code according to RFC6749.
Authorizations:
header Parameters
Authorization | string Example: Basic Y2xpZW50X2lkOmNsaWVudF9zZWNyZXQ= The client credentials ( |
Request Body schema: application/x-www-form-urlencodedrequired
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 | |
redirect_uri required | string <uri> The redirection URI used in the authorization request. Must be a valid URI. |
Responses
Response samples
- 200
- 400
- default
{- "access_token": "string",
- "expires_in": 0,
- "scope": "string",
- "token_type": "bearer"
}
Register with email and password.
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "email": "user@example.com",
- "password": "string",
- "person": {
- "firstName": "Ada",
- "lastName": "Lovelace",
- "title": "mr"
}
}
Response samples
- 201
- 400
- 403
- default
{- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
Remove Avatar.
Authorizations:
path Parameters
required | string or string Examples:
|
Responses
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Request a new avatar image upload.
Authorizations:
path Parameters
required | string or string Examples:
|
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 200
- 400
- default
{- "refId": "639293c5-5581-48d7-94b9-83aceaff93f8",
- "rules": {
- "maxSizeInKB": 3000,
- "mimeTypes": [
- "image/png"
], - "properties": {
- "imageDimensions": {
- "max": {
- "height": 0,
- "width": 0
}, - "min": {
- "height": 0,
- "width": 0
}
}
}
}
}
Resend the Email-Address verification email.
Authorizations:
Request Body schema: application/jsonrequired
email required | string <email> |
userId required | string <uuid> |
Responses
Request samples
- Payload
{- "email": "ada.lovelace@example.com",
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
Response samples
- 400
- 403
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Verify an added Email-Address.
Authorizations:
Request Body schema: application/jsonrequired
email required | string <email> The Email-Address to verify. |
token | string The token found in the verification email. |
Responses
Request samples
- Payload
{- "email": "ada.lovelace@example.com",
- "token": "123456"
}
Response samples
- 400
- 404
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Verify phone number.
Authorizations:
path Parameters
required | string or string Examples:
|
Request Body schema: application/jsonrequired
code required | string = 6 characters |
phoneNumber required | string |
Responses
Request samples
- Payload
{- "code": "123456",
- "phoneNumber": "+491701234567"
}
Response samples
- 400
- 404
- 409
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Verify your registration.
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "email": "user@example.com",
- "token": 123456,
- "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"
}
Response samples
- 200
- 400
- 404
- default
{ }
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:
Responses
Response samples
- 200
- default
{- "error": 0,
- "info": 0,
- "success": 0,
- "total": 0,
- "warning": 0
}
List all unread notifications.
Authorizations:
query Parameters
status | string Enum: "unread" "read" |
Responses
Response samples
- 200
- default
[- {
- "createdAt": "2019-08-24T14:15:22Z",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "read": true,
- "reference": {
- "aggregate": "string",
- "domain": "string",
- "id": "string",
- "parents": [
- {
- "aggregate": "string",
- "domain": "string",
- "id": "string"
}
]
}, - "severity": "success",
- "type": "string"
}
]
Mark all notifications as read (deprecated). Deprecated
Deprecated route. Please use /v2/notifications/actions/read-all instead.
Authorizations:
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 200
- 403
- default
{- "status": "read"
}
Mark all notifications as read.
Mark all notifications for the authenticated user as read.
Authorizations:
Request Body schema: application/jsonoptional
Responses
Request samples
- Payload
{ }
Response samples
- 200
- 403
- default
{- "status": "read"
}
Mark notification as read.
Authorizations:
path Parameters
notificationId required | string <uuid> |
Request Body schema: application/jsonrequired
status required | string (de.mittwald.v1.messaging.NotificationStatus) Value: "read" |
Responses
Request samples
- Payload
{- "status": "read"
}
Response samples
- 200
- 404
- default
{- "status": "read"
}
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:
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
- 200
- 404
- 500
- default
{- "extensions": [
- [
- ".png",
- ".jpeg",
- ".jpg"
]
], - "fileTypes": [
- {
- "extensions": [
- [
- ".jpe",
- ".jpeg",
- ".jpg"
]
], - "mimeType": "image/jpeg"
}
], - "maxSizeInBytes": 1000000,
- "maxSizeInKB": 1000,
- "mimeTypes": [
- [
- "image/png",
- "image/jpeg"
]
], - "properties": {
- "imageDimensions": {
- "max": {
- "height": 0,
- "width": 0
}, - "min": {
- "height": 0,
- "width": 0
}
}
}
}
Get a Type's upload rules. Deprecated
Authorizations:
path Parameters
name required | string Enum: "avatar" "conversation" Example: avatar Name of the Type's upload rules to be retrieved. |
Responses
Response samples
- 200
- 404
- 500
- default
{- "extensions": [
- [
- ".png",
- ".jpeg",
- ".jpg"
]
], - "fileTypes": [
- {
- "extensions": [
- [
- ".jpe",
- ".jpeg",
- ".jpg"
]
], - "mimeType": "image/jpeg"
}
], - "maxSizeInBytes": 1000000,
- "maxSizeInKB": 1000,
- "mimeTypes": [
- [
- "image/png",
- "image/jpeg"
]
], - "properties": {
- "imageDimensions": {
- "max": {
- "height": 0,
- "width": 0
}, - "min": {
- "height": 0,
- "width": 0
}
}
}
}
Create a File.
Authorizations:
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
- 201
- 400
- 401
- 406
- 422
- 500
- default
{- "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:
path Parameters
fileId required | string <uuid> Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 ID of the File to get the meta for. |
Responses
Response samples
- 200
- 400
- 401
- 403
- 404
- 422
- 500
- default
{- "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:
path Parameters
fileUploadToken required | string <uuid> Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 FileUploadToken to retrieve rules for. |
Responses
Response samples
- 200
- 400
- 404
- 500
- default
{- "extensions": [
- [
- ".png",
- ".jpeg",
- ".jpg"
]
], - "fileTypes": [
- {
- "extensions": [
- [
- ".jpe",
- ".jpeg",
- ".jpg"
]
], - "mimeType": "image/jpeg"
}
], - "maxSizeInBytes": 1000000,
- "maxSizeInKB": 1000,
- "mimeTypes": [
- [
- "image/png",
- "image/jpeg"
]
], - "properties": {
- "imageDimensions": {
- "max": {
- "height": 0,
- "width": 0
}, - "min": {
- "height": 0,
- "width": 0
}
}
}
}
Get a FileUploadType's rules.
Authorizations:
path Parameters
fileUploadType required | string Enum: "avatar" "conversation" Example: avatar FileUploadType to retrieve rules for. |
Responses
Response samples
- 200
- 400
- 404
- 500
- default
{- "extensions": [
- [
- ".png",
- ".jpeg",
- ".jpg"
]
], - "fileTypes": [
- {
- "extensions": [
- [
- ".jpe",
- ".jpeg",
- ".jpg"
]
], - "mimeType": "image/jpeg"
}
], - "maxSizeInBytes": 1000000,
- "maxSizeInKB": 1000,
- "mimeTypes": [
- [
- "image/png",
- "image/jpeg"
]
], - "properties": {
- "imageDimensions": {
- "max": {
- "height": 0,
- "width": 0
}, - "min": {
- "height": 0,
- "width": 0
}
}
}
}
Get a File.
Authorizations:
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
- 400
- 401
- 403
- 404
- 422
- 500
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a File.
Authorizations:
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
- 400
- 401
- 403
- 404
- 422
- 500
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Create a DeliveryBox.
Authorizations:
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
- Payload
{- "description": "string",
- "password": "string"
}
Response samples
- 201
- 400
- 403
- 404
- 500
- 503
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
List DeliveryBoxes belonging to a Project.
Authorizations:
path Parameters
projectId required | string ID of the Project to list DeliveryBoxes for. |
Responses
Response samples
- 200
- 400
- 403
- 404
- 500
- 503
- default
[- {
- "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"
}
]
Create a MailAddress.
Authorizations:
path Parameters
projectId required | string ID of the project to create a MailAddress for. |
Request Body schema: application/json
address required | string <idn-email> |
forwardAddresses required | Array of strings <idn-email> [ items <idn-email > ] |
Responses
Request samples
- Payload
{- "address": "пошта@укр.нет",
- "forwardAddresses": [
- "пошта@укр.нет"
]
}
Response samples
- 201
- 400
- 403
- 404
- 500
- 503
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
List MailAddresses belonging to a Project.
Authorizations:
path Parameters
projectId required | string ID of the Project to list MailAddresses for. |
Responses
Response samples
- 200
- 400
- 403
- 404
- 500
- 503
- default
[- {
- "address": "пошта@укр.нет",
- "autoResponder": {
- "active": true,
- "expiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "startsAt": "2019-08-24T14:15:22Z"
}, - "forwardAddresses": [
- "пошта@укр.нет"
], - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "isArchived": true,
- "isCatchAll": true,
- "mailbox": {
- "name": "string",
- "passwordUpdatedAt": "2019-08-24T14:15:22Z",
- "sendingEnabled": true,
- "spamProtection": {
- "active": true,
- "autoDeleteSpam": true,
- "folder": "spam",
- "relocationMinSpamScore": 10
}, - "storageInBytes": {
- "current": {
- "updatedAt": "2019-08-24T14:15:22Z",
- "value": 0
}, - "limit": 0
}
}, - "projectId": "string",
- "receivingDisabled": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
Delete a DeliveryBox.
Authorizations:
path Parameters
deliveryBoxId required | string <uuid> ID of the DeliveryBox to be deleted. |
Responses
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a DeliveryBox.
Authorizations:
path Parameters
deliveryBoxId required | string <uuid> ID of the DeliveryBox to be retrieved. |
Responses
Response samples
- 200
- 400
- 403
- 404
- 500
- 503
- default
{- "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:
path Parameters
mailAddressId required | string <uuid> ID of the MailAddress to be deleted. |
Responses
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Get a MailAddress.
Authorizations:
path Parameters
mailAddressId required | string <uuid> ID of the MailAddress to be retrieved. |
Responses
Response samples
- 200
- 400
- 403
- 404
- 500
- 503
- default
{- "address": "пошта@укр.нет",
- "autoResponder": {
- "active": true,
- "expiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "startsAt": "2019-08-24T14:15:22Z"
}, - "forwardAddresses": [
- "пошта@укр.нет"
], - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "isArchived": true,
- "isCatchAll": true,
- "mailbox": {
- "name": "string",
- "passwordUpdatedAt": "2019-08-24T14:15:22Z",
- "sendingEnabled": true,
- "spamProtection": {
- "active": true,
- "autoDeleteSpam": true,
- "folder": "spam",
- "relocationMinSpamScore": 10
}, - "storageInBytes": {
- "current": {
- "updatedAt": "2019-08-24T14:15:22Z",
- "value": 0
}, - "limit": 0
}
}, - "projectId": "string",
- "receivingDisabled": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
Update the description of an deliverybox Deprecated
Authorizations:
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
- Payload
{- "description": "string"
}
Update the password for a specific deliverybox Deprecated
Authorizations:
path Parameters
id required | string <uuid> ID of the deliverybox |
Request Body schema: application/json
password required | string |
Responses
Request samples
- Payload
{- "password": "string"
}
List mail settings of a Project.
Authorizations:
path Parameters
projectId required | string ID of the Project to list mail settings for. |
Responses
Response samples
- 200
- 400
- 403
- 404
- 500
- 503
- default
{- "blacklist": [
- "пошта@укр.нет"
], - "projectId": "string",
- "whitelist": [
- "пошта@укр.нет"
]
}
Update mail-address Deprecated
Authorizations:
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
- Payload
{- "address": "пошта@укр.нет"
}
Update blacklist for a given project ID Deprecated
Authorizations:
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
- Payload
{- "blacklist": [
- "пошта@укр.нет"
]
}
Update whitelist for a given project ID Deprecated
Authorizations:
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
- Payload
{- "whitelist": [
- "пошта@укр.нет"
]
}
Update the description of a DeliveryBox.
Authorizations:
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
- Payload
{- "description": "string"
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the password of a DeliveryBox.
Authorizations:
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
- Payload
{- "password": "string"
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update a MailAddress.
Authorizations:
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
- Payload
{- "address": "пошта@укр.нет"
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the autoresponder of a MailAddress.
Authorizations:
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 | ||||||||
|
Responses
Request samples
- Payload
{- "autoResponder": {
- "active": true,
- "expiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "startsAt": "2019-08-24T14:15:22Z"
}
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the autoresponder of a MailAddress. Deprecated
Authorizations:
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 | ||||||||
|
Responses
Request samples
- Payload
{- "autoResponder": {
- "active": true,
- "expiresAt": "2019-08-24T14:15:22Z",
- "message": "string",
- "startsAt": "2019-08-24T14:15:22Z"
}
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the catchall of a MailAddress.
Authorizations:
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
- Payload
{- "active": true
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the catchall of a MailAddress. Deprecated
Authorizations:
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
- Payload
{- "active": true
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the forward addresses of a MailAddresses.
Authorizations:
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
- Payload
{- "forwardAddresses": [
- "пошта@укр.нет"
]
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the forward addresses of a MailAddresses. Deprecated
Authorizations:
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
- Payload
{- "forwardAddresses": [
- "пошта@укр.нет"
]
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the password for a MailAddress.
Authorizations:
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
- Payload
{- "password": "string"
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the password for a MailAddress. Deprecated
Authorizations:
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
- Payload
{- "password": "string"
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the quota of a MailAddress.
Authorizations:
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
- Payload
{- "quotaInBytes": -1
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the quota of a MailAddress. Deprecated
Authorizations:
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
- Payload
{- "quotaInBytes": -1
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the spam protection of a MailAddress.
Authorizations:
path Parameters
mailAddressId required | string <uuid> ID of the MailAddress to update the spam protection for. |
Request Body schema: application/json
required | object | ||||||||
|
Responses
Request samples
- Payload
{- "spamProtection": {
- "active": true,
- "autoDeleteSpam": true,
- "folder": "inbox",
- "relocationMinSpamScore": 10
}
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update the spam protection of a MailAddress. Deprecated
Authorizations:
path Parameters
mailAddressId required | string <uuid> ID of the MailAddress to update the spam protection for. |
Request Body schema: application/json
required | object | ||||||||
|
Responses
Request samples
- Payload
{- "spamProtection": {
- "active": true,
- "autoDeleteSpam": true,
- "folder": "inbox",
- "relocationMinSpamScore": 10
}
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update a mail setting of a Project.
Authorizations:
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
blacklist required | Array of strings <idn-email> [ items <idn-email > ] |
Responses
Request samples
- Payload
{- "whitelist": [
- "пошта@укр.нет"
]
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
Update a mail setting of a Project. Deprecated
Authorizations:
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
blacklist required | Array of strings <idn-email> [ items <idn-email > ] |
Responses
Request samples
- Payload
{- "whitelist": [
- "пошта@укр.нет"
]
}
Response samples
- 400
- 403
- 404
- 500
- 503
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
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
- 200
- 404
- default
{- "addons": [
- {
- "hidden": true,
- "key": "string",
- "type": "string",
- "value": "string",
- "valueMergeType": "add"
}
], - "articleId": "PS23-BASIC-0001",
- "attributes": [
- {
- "customerEditable": true,
- "key": "cpu",
- "mergeType": "add",
- "readonly": true,
- "required": true,
- "unit": "GHz",
- "value": "4"
}
], - "balanceAddonKey": "inclusive_domains",
- "contractDurationInMonth": 0,
- "description": "proSpace without dedicated resources",
- "forcedInvoicingPeriodInMonth": 0,
- "hasIndependentContractPeriod": true,
- "hideOnInvoice": true,
- "machineType": {
- "cpu": 1,
- "memory": 10,
- "name": "psplus-shared"
}, - "modifierArticles": [
- {
- "articleId": "string",
- "info": {
- "articleName": "proSpace lite",
- "articleTemplateName": "proSpace",
- "fromArticleTemplate": true
}, - "maxArticleCount": 1
}
], - "name": "proSpace lite",
- "orderable": "forbidden",
- "possibleArticleChanges": [
- {
- "articleId": "string",
- "info": {
- "articleName": "proSpace lite",
- "articleTemplateName": "proSpace",
- "fromArticleTemplate": true
}
}
], - "price": 1000,
- "tags": [
- {
- "description": "CPU optimized",
- "hexColor": "#ff0000",
- "id": "58e39bbe-fcd1-4fde-887c-f49ff85b9df5",
- "name": "cpu-optimized"
}
], - "template": {
- "additionalArticles": [
- {
- "articleId": "PS23-BASIC-0001",
- "info": {
- "articleName": "proSpace lite",
- "articleTemplateName": "proSpace",
- "fromArticleTemplate": true
}, - "maxArticleCount": 10
}
], - "addons": [
- {
- "hidden": true,
- "key": "string",
- "type": "string",
- "value": "string",
- "valueMergeType": "add"
}
], - "attributes": [
- {
- "customerEditable": true,
- "key": "cpu",
- "mergeType": "add",
- "readonly": true,
- "required": true,
- "unit": "GHz",
- "value": "4"
}
], - "description": "Space-Storage",
- "id": "054e27e4-d3ed-4ffc-a472-fbb74a6a2ec1",
- "isManagedByDomain": true,
- "isRecurring": true,
- "modifierArticles": [
- {
- "articleId": "string",
- "info": {
- "articleName": "proSpace lite",
- "articleTemplateName": "proSpace",
- "fromArticleTemplate": true
}, - "maxArticleCount": 1
}
], - "name": "Speicher für Space-Server aller Art",
- "type": "miscellaneous"
}
}
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
- 200
- default
[- {
- "addons": [
- {
- "hidden": true,
- "key": "string",
- "type": "string",
- "value": "string",
- "valueMergeType": "add"
}
], - "articleId": "PS23-BASIC-0001",
- "attributes": [
- {
- "customerEditable": true,
- "key": "cpu",
- "mergeType": "add",
- "readonly": true,
- "required": true,
- "unit": "GHz",
- "value": "4"
}
], - "balanceAddonKey": "inclusive_domains",
- "contractDurationInMonth": 0,
- "description": "proSpace without dedicated resources",
- "forcedInvoicingPeriodInMonth": 0,
- "hasIndependentContractPeriod": true,
- "hideOnInvoice": true,
- "machineType": {
- "cpu": 1,
- "memory": 10,
- "name": "psplus-shared"
}, - "modifierArticles": [
- {
- "articleId": "string",
- "info": {
- "articleName": "proSpace lite",
- "articleTemplateName": "proSpace",
- "fromArticleTemplate": true
}, - "maxArticleCount": 1
}
], - "name": "proSpace lite",
- "orderable": "forbidden",
- "possibleArticleChanges": [
- {
- "articleId": "string",
- "info": {
- "articleName": "proSpace lite",
- "articleTemplateName": "proSpace",
- "fromArticleTemplate": true
}
}
], - "price": 1000,
- "tags": [
- {
- "description": "CPU optimized",
- "hexColor": "#ff0000",
- "id": "58e39bbe-fcd1-4fde-887c-f49ff85b9df5",
- "name": "cpu-optimized"
}
], - "template": {
- "additionalArticles": [
- {
- "articleId": "PS23-BASIC-0001",
- "info": {
- "articleName": "proSpace lite",
- "articleTemplateName": "proSpace",
- "fromArticleTemplate": true
}, - "maxArticleCount": 10
}
], - "addons": [
- {
- "hidden": true,
- "key": "string",
- "type": "string",
- "value": "string",
- "valueMergeType": "add"
}
], - "attributes": [
- {
- "customerEditable": true,
- "key": "cpu",
- "mergeType": "add",
- "readonly": true,
- "required": true,
- "unit": "GHz",
- "value": "4"
}
], - "description": "Space-Storage",
- "id": "054e27e4-d3ed-4ffc-a472-fbb74a6a2ec1",
- "isManagedByDomain": true,
- "isRecurring": true,
- "modifierArticles": [
- {
- "articleId": "string",
- "info": {
- "articleName": "proSpace lite",
- "articleTemplateName": "proSpace",
- "fromArticleTemplate": true
}, - "maxArticleCount": 1
}
], - "name": "Speicher für Space-Server aller Art",
- "type": "miscellaneous"
}
}
]
Get detailed performance data for a given domain and path.
Authorizations:
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
- 200
- 400
- 403
- default
{- "createdAt": "2019-08-24T14:15:22Z",
- "domain": "string",
- "metrics": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "name": "string",
- "score": 0.1,
- "value": 0.1
}
], - "moreDataAvailable": [
- "2019-08-24"
], - "path": "string",
- "performanceScore": 0.1,
- "screenshot": {
- "createdAt": "2019-08-24T14:15:22Z",
- "fileRef": "string"
}
}
Get all data for a given strace.
Authorizations:
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
- 200
- 400
- 403
- default
{- "executedAt": "2019-08-24T14:15:22Z",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "result": {
- "errorMessage": "wrong PHP version"
}
}
List websites (specified as domain and path) from a project where performance data is available.
Authorizations:
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
- 200
- 400
- 403
- default
[- {
- "domain": "string",
- "paths": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "path": "string",
- "performanceScore": 0,
- "screenshotFileRef": "string"
}
]
}
]
Schedule a strace measurement for a single http request.
Authorizations:
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
- Payload
{
}
Response samples
- 202
- 400
- 403
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Register a tariff change for a legacy tariff.
Request Body schema: application/jsonrequired
pAccount required | string^[pr][0-9]{2,8}$ |
targetTariff required | string non-empty |
Responses
Request samples
- Payload
{- "pAccount": "string",
- "targetTariff": "string"
}
Response samples
- 201
- 403
- default
{- "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/jsonrequired
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
- Payload
{- "allDomains": true,
- "allowPasswordChange": true,
- "contact": {
- "email": "user@example.com",
- "firstName": "string",
- "lastName": "string",
- "phoneNumber": "string"
}, - "domains": [
- {
- "authCode": "string",
- "domainOwnerData": "string",
- "name": "string"
}
], - "notes": "string",
- "provider": {
- "loginUrl": "string",
- "name": "string",
- "password": "string",
- "sourceAccount": "string",
- "userName": "string"
}, - "target": {
- "organisation": "string",
- "product": "string",
- "projectName": "string",
- "system": "kc"
}
}
Response samples
- 400
- default
{- "type": "ValidationError",
- "message": "Validation failed",
- "validationErrors": [
- {
- "message": "should be string",
- "path": ".address.street",
- "type": "format",
- "context": {
- "format": "email"
}
}
]
}
The marketplace API allows you to manage extensions and more information regaring the marketplace.
Authenticate your external application using the extensionInstanceSecret.
Authorizations:
path Parameters
extensionInstanceId required | string <uuid> |
Request Body schema: application/jsonrequired
extensionInstanceSecret required | string The latest secret an external application received via lifecycle webhooks. Namely ExtensionAddedToContext and ExtensionInstanceSecretRotated. |
Responses
Request samples
- Payload
{- "extensionInstanceSecret": "string"
}
Response samples
- 201
- 400
- default
{- "expiry": "2019-08-24T14:15:22Z",
- "publicToken": "string"
}
Consent to extension scopes.
Authorizations:
path Parameters
extensionInstanceId required | string <uuid> |
Request Body schema: application/jsonrequired
consentedScopes required | Array of strings |
Responses
Request samples
- Payload
{- "consentedScopes": [
- "string"
]
}
Response samples
- 204
- 400
- default
null
Create an ExtensionInstance.
Authorizations:
Request Body schema: application/jsonrequired
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
- Payload
{- "consentedScopes": [
- "string"
], - "context": "project",
- "contextId": "84451116-c600-49e2-9c60-5b6b34fae0d6",
- "extensionId": "e6532990-9411-4b54-9b41-41ee86c8daab"
}
Response samples
- 201
- 400
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
List ExtensionInstances.
Authorizations:
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
- 200
- default
[- {
- "aggregateReference": {
- "aggregate": "string",
- "domain": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}, - "consentedScopes": [
- "string"
], - "createdAt": "2019-08-24T14:15:22Z",
- "disabled": false,
- "extensionId": "e6532990-9411-4b54-9b41-41ee86c8daab",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
]
Get an ExtensionInstance.
Authorizations:
path Parameters
extensionInstanceId required | string <uuid> |
Responses
Response samples
- 200
- 404
- default
{- "aggregateReference": {
- "aggregate": "string",
- "domain": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}, - "consentedScopes": [
- "string"
], - "createdAt": "2019-08-24T14:15:22Z",
- "disabled": false,
- "extensionId": "e6532990-9411-4b54-9b41-41ee86c8daab",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Get a Contributor.
Authorizations:
path Parameters
contributorId required | string <uuid> |
Responses
Response samples
- 200
- 404
- default
{- "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:
path Parameters
extensionId required | string <uuid> |
Responses
Response samples
- 200
- default
{- "context": "project",
- "contributorId": "005edbf7-87df-4122-a64b-6d91913d8764",
- "description": "string",
- "frontendComponents": [
- {
- "name": "string",
- "url": "string"
}
], - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "scopes": [
- "string"
], - "state": "enabled",
- "support": {
- "email": "a.lovelace@example.com",
- "phone": "string"
}, - "tags": [
- "string"
]
}
Get the public key to verify the webhook signature.
Authorizations:
path Parameters
serial required | string Example: latest The serial id of a specific public key. Use |
Responses
Response samples
- 200
- 404
- default
{- "algorithm": "Ed25519",
- "key": "string",
- "serial": "53a73609-0857-4a03-9aa9-3823eb707faa"
}
List Contributors.
Authorizations:
query Parameters
limit | integer Default: 1000 |
skip | integer Default: 0 |
page | integer Default: 1 |
Responses
Response samples
- 200
- default
[- {
- "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
- "email": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "logoRefId": "string",
- "name": "string",
- "phone": "string",
- "state": "enabled",
- "url": "string"
}
]
List Extensions.
Authorizations:
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
- 200
- default
[- {
- "context": "project",
- "contributorId": "005edbf7-87df-4122-a64b-6d91913d8764",
- "description": "string",
- "frontendComponents": [
- {
- "name": "string",
- "url": "string"
}
], - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "scopes": [
- "string"
], - "state": "enabled",
- "support": {
- "email": "a.lovelace@example.com",
- "phone": "string"
}, - "tags": [
- "string"
]
}
]
Obtain a service token.
Authorizations:
path Parameters
accessKeyId required | string |
Request Body schema: application/jsonrequired
secretAccessKey required | string |
Responses
Request samples
- Payload
{- "secretAccessKey": "string"
}
Response samples
- 200
- default
{- "accessToken": {
- "id": "string",
- "jwtClaims": {
- "exp": "string",
- "iat": "string",
- "iss": "string",
- "sub": "string"
}, - "publicToken": "string"
}
}