diff --git a/web/06/labor/06_loesungen/buecher/workshop-api.json b/web/06/labor/06_loesungen/workshop-api.json
similarity index 100%
rename from web/06/labor/06_loesungen/buecher/workshop-api.json
rename to web/06/labor/06_loesungen/workshop-api.json
diff --git a/web/07/labor/workshop-anmeldung.html b/web/07/labor/workshop-anmeldung.html
new file mode 100644
index 0000000..a62ddde
--- /dev/null
+++ b/web/07/labor/workshop-anmeldung.html
@@ -0,0 +1,66 @@
+
+
+
+
+
+ Workshop-Anmeldung
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/07/labor/workshop-api.json b/web/07/labor/workshop-api.json
new file mode 100644
index 0000000..60c76d7
--- /dev/null
+++ b/web/07/labor/workshop-api.json
@@ -0,0 +1,119 @@
+{
+ "openapi": "3.0.0",
+ "info": {
+ "title": "Workshop API",
+ "version": "1.0.0"
+ },
+ "servers": [
+ {
+ "url": "http://localhost:8080"
+ }
+ ],
+ "paths": {
+ "/registrierung": {
+ "post": {
+ "summary": "Sends all information needed for registering at a workshop",
+ "requestBody": {
+ "required": false,
+ "content": {
+ "application/x-www-form-urlencoded": {
+ "schema": {
+ "$ref": "#/components/schemas/RegistrierungForm"
+ }
+ },
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/RegistrierungForm"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "Success",
+ "content": {
+ "text/html": {
+ "schema": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "400": {
+ "description": "Bad Request",
+ "content": {
+ "text/plain": {
+ "schema": {
+ "type": "string",
+ "example": "Kein Formular gesendet"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "components": {
+ "schemas": {
+ "RegistrierungForm": {
+ "type": "object",
+ "required": [
+ "vorname",
+ "nachname",
+ "agb",
+ "format"
+ ],
+ "properties": {
+ "vorname": {
+ "type": "string",
+ "example": "Zoya"
+ },
+ "nachname": {
+ "type": "string",
+ "example": "Akhtar"
+ },
+ "email": {
+ "type": "string",
+ "example": "z.akhtar@test.de"
+ },
+ "telefon": {
+ "type": "string",
+ "example": "Zoya"
+ },
+ "sessions": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "example": "vormittag"
+ },
+ "example": [
+ "vormittag",
+ "nachmittag"
+ ]
+ },
+ "agb": {
+ "type": "string",
+ "enum": ["ja"],
+ "example": "ja"
+ },
+ "newsletter": {
+ "type": "string",
+ "enum": ["ja"],
+ "example": "ja"
+ },
+ "equipment": {
+ "type": "string",
+ "enum": ["ja"],
+ "example": "ja"
+ },
+ "format": {
+ "type": "string",
+ "enum": ["online","praesenz"],
+ "example": "online"
+ }
+ }
+ }
+ }
+ }
+}
\ No newline at end of file