diff --git a/RDM_with_coscine_in_the_iop.ipynb b/RDM_with_coscine_in_the_iop.ipynb
index cd9ff9ef5f9544d15f48dbe56081ed3164cd1b50..2d103e8225edb2c4102ddfa3450cfc6e92c5974f 100644
--- a/RDM_with_coscine_in_the_iop.ipynb
+++ b/RDM_with_coscine_in_the_iop.ipynb
@@ -1,22 +1,10 @@
 {
-  "nbformat": 4,
-  "nbformat_minor": 0,
-  "metadata": {
-    "colab": {
-      "provenance": [],
-      "toc_visible": true
-    },
-    "kernelspec": {
-      "name": "python3",
-      "display_name": "Python 3"
-    },
-    "language_info": {
-      "name": "python"
-    }
-  },
   "cells": [
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "eX09iZFFz3r8"
+      },
       "source": [
         "# Welcome to the Hands On Session\n",
         "\n",
@@ -29,13 +17,13 @@
         "*   [Model in the Middle git Group](https://git-ce.rwth-aachen.de/iop-mitm-coscine)\n",
         "*   [MAED git repos](https://git-ce.rwth-aachen.de/machine-data/mdata)\n",
         "\n"
-      ],
-      "metadata": {
-        "id": "eX09iZFFz3r8"
-      }
+      ]
     },
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "Mkv_HvHn1AUD"
+      },
       "source": [
         "# Coscine Web UI Tasks\n",
         "\n",
@@ -46,33 +34,33 @@
         "5.   Delete the resource and then the project you created.\n",
         "6.   Search for the IoP related project that we used to demonstrate coscine and request access to the project.\n",
         "6.   Create an access token, that you will need for the following session: https://coscine.rwth-aachen.de/user\n"
-      ],
-      "metadata": {
-        "id": "Mkv_HvHn1AUD"
-      }
+      ]
     },
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "ZiK-QhF1ADD3"
+      },
       "source": [
         "# Programming Tasks\n",
         "\n"
-      ],
-      "metadata": {
-        "id": "ZiK-QhF1ADD3"
-      }
+      ]
     },
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "4sNg5jAwA5Nm"
+      },
       "source": [
         "## Setting up our environment\n",
         "\n"
-      ],
-      "metadata": {
-        "id": "4sNg5jAwA5Nm"
-      }
+      ]
     },
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "NFJrjAYFA7Ze"
+      },
       "source": [
         "### Installing the python sdk\n",
         "\n",
@@ -83,10 +71,17 @@
         "Let's get started by installing the python package.\n",
         "\n",
         "If you are using older versions of python check [the offical package documentation](https://pypi.org/project/coscine/) for the currently supported versions."
-      ],
-      "metadata": {
-        "id": "NFJrjAYFA7Ze"
-      }
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {},
+      "outputs": [],
+      "source": [
+        "import os\n",
+        "os.environ[\"PATH\"] = \"/opt/conda/envs/python313/bin:\" + os.environ[\"PATH\"]"
+      ]
     },
     {
       "cell_type": "code",
@@ -101,59 +96,57 @@
     },
     {
       "cell_type": "markdown",
-      "source": [
-        "### Setting up the Access Token\n",
-        "To authenticate with the Coscine API, you'll need an API token. You can generate one by logging into your Coscine account and navigating to your user profile. Keep this token secure and do not share it publicly. I.e. do not save it here. Additionally you want to revoke the tokens rights after this session.\n",
-        "\n",
-        "**Authentication Using Secure API Token**\n",
-        "\n",
-        "Instead of hardcoding your API token, use Google Colab's userdata to securely access it. Click on the key icon and then add a new secrete. The \"secretName\" you set here, must be the one you use below to retrieve that secret. Make sure you allow notebook access."
-      ],
       "metadata": {
         "id": "l26x42QB25kl"
-      }
+      },
+      "source": [
+        "### Setting up the Access Token\n",
+        "To authenticate with the Coscine API, you'll need an API token. You can generate one by logging into your Coscine account and navigating to your user profile. Keep the expiry date as short as possible. Keep this token secure and do not share it publicly. Additionally you want to revoke the tokens rights after this session."
+      ]
     },
     {
       "cell_type": "markdown",
-      "source": [
-        "Enter your API token when prompted.\n",
-        "\n",
-        "Use the token to initialize the ApiClient:"
-      ],
       "metadata": {
         "id": "lAfjcQx352Zt"
-      }
+      },
+      "source": [
+        "Enter your API token.\n",
+        "Use the token to initialize the ApiClient:"
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "q_UUkcLz56sj"
+      },
+      "outputs": [],
       "source": [
-        "from google.colab import userdata\n",
         "import coscine\n",
         "\n",
-        "# Retrieve the token securely\n",
-        "api_token = userdata.get('coscine_token')\n",
+        "api_token = \"\"\n",
         "\n",
         "# Initialize the API client\n",
         "client = coscine.ApiClient(token=api_token)"
-      ],
-      "metadata": {
-        "id": "q_UUkcLz56sj"
-      },
-      "execution_count": null,
-      "outputs": []
+      ]
     },
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "tMnIMsr92-vY"
+      },
       "source": [
         "## Getting to know the SDK\n",
         "To retrieve and display a list of your Coscine projects you can run:"
-      ],
-      "metadata": {
-        "id": "tMnIMsr92-vY"
-      }
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "DZcuIjZE2_XX"
+      },
+      "outputs": [],
       "source": [
         "# Fetch all top-level projects\n",
         "projects = client.projects()\n",
@@ -161,24 +154,24 @@
         "# Display the names of the projects\n",
         "for project in projects:\n",
         "    print(project.name)"
-      ],
-      "metadata": {
-        "id": "DZcuIjZE2_XX"
-      },
-      "execution_count": null,
-      "outputs": []
+      ]
     },
     {
       "cell_type": "markdown",
-      "source": [
-        "To create a new project on Coscine:"
-      ],
       "metadata": {
         "id": "FB86nqnD3DK8"
-      }
+      },
+      "source": [
+        "To create a new project on Coscine:"
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "2ytZ71KB3PSa"
+      },
+      "outputs": [],
       "source": [
         "from datetime import date, datetime\n",
         "\n",
@@ -196,10 +189,8 @@
         "end_date = date(2025, 12, 31)\n",
         "principal_investigators = \"Prof. Dr. Superman\"\n",
         "disciplines = [client.discipline(\"Computer Science 409\")]\n",
-        "rwth_organization = client.organization(\"https://ror.org/04xfq0f34\")  # RWTH Aachen University\n",
-        "rwth_organization._data[\"responsible\"] = True  # Make at least one organization responsible.\n",
-        "organizations = [rwth_organization]\n",
         "visibility = client.visibility(\"Project Members\")\n",
+        "responsible_organization=client.organization(\"https://ror.org/04xfq0f34\")\n",
         "\n",
         "# Create the project\n",
         "new_project = client.create_project(\n",
@@ -210,44 +201,42 @@
         "    end_date=end_date,\n",
         "    principal_investigators=principal_investigators,\n",
         "    disciplines=disciplines,\n",
-        "    organizations=organizations,\n",
+        "    responsible_organization=responsible_organization,\n",
         "    visibility=visibility\n",
         ")\n",
         "\n",
         "print(f\"Created project: {new_project.name}\")\n"
-      ],
-      "metadata": {
-        "id": "2ytZ71KB3PSa"
-      },
-      "execution_count": null,
-      "outputs": []
+      ]
     },
     {
       "cell_type": "markdown",
-      "source": [
-        "Lets delete this project again."
-      ],
       "metadata": {
         "id": "9F4VvatZtLtF"
-      }
+      },
+      "source": [
+        "Lets delete this project again."
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "kF3G26jutKs4"
+      },
+      "outputs": [],
       "source": [
         "try:\n",
         "    new_project.delete()\n",
         "    print(f\"Deleted project: {new_project.name}\")\n",
         "except coscine.CoscineException:\n",
         "    print(\"Something went wrong. Maybe we are not authorized to delete that project. :(\")"
-      ],
-      "metadata": {
-        "id": "kF3G26jutKs4"
-      },
-      "execution_count": null,
-      "outputs": []
+      ]
     },
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "J_9jXANB4Lk6"
+      },
       "source": [
         "## Programming Task 1:\n",
         "\n",
@@ -258,69 +247,71 @@
         "        Start Date: Today\n",
         "        End Date: 1 year from today\n",
         "        Description: \"This project was created as part of a challenge.\""
-      ],
-      "metadata": {
-        "id": "J_9jXANB4Lk6"
-      }
+      ]
     },
     {
       "cell_type": "markdown",
-      "source": [
-        "To access a specific project by its display name:"
-      ],
       "metadata": {
         "id": "PeYIYEz83ZrG"
-      }
+      },
+      "source": [
+        "To access a specific project by its display name:"
+      ]
     },
     {
       "cell_type": "code",
-      "source": [
-        "# Replace 'Sample Display Name' with the actual display name of your project\n",
-        "project = client.project(\"Sample Display Name\", attribute=coscine.Project.name)\n",
-        "print(f\"Accessed project: {project.name}\")\n"
-      ],
+      "execution_count": null,
       "metadata": {
         "id": "8yl7_bCV3bxB"
       },
-      "execution_count": null,
-      "outputs": []
+      "outputs": [],
+      "source": [
+        "# Replace 'Sample Display Name' with the actual display name of your project\n",
+        "project = client.project(\"Sample Display Name\", attribute=coscine.Project.display_name)\n",
+        "print(f\"Accessed project: {project.name}\\nDisplay name: {project.display_name}\")\n"
+      ]
     },
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "GtiMvb8y4WaH"
+      },
       "source": [
         "## Programming Task 2:\n",
         "\n",
         "    Find our demo project by its name instead of its display name and list all associated resources."
-      ],
-      "metadata": {
-        "id": "GtiMvb8y4WaH"
-      }
+      ]
     },
     {
       "cell_type": "markdown",
-      "source": [
-        "To list, add, or remove members from a project:"
-      ],
       "metadata": {
         "id": "XP9L90a53eAK"
-      }
+      },
+      "source": [
+        "To list, add, or remove members from a project:"
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "09GvrqYe3gJ7"
+      },
+      "outputs": [],
       "source": [
         "# List current members\n",
         "members = project.members()\n",
         "for member in members:\n",
         "    print(member)"
-      ],
-      "metadata": {
-        "id": "09GvrqYe3gJ7"
-      },
-      "execution_count": null,
-      "outputs": []
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "Tlvy14EwuYd_"
+      },
+      "outputs": [],
       "source": [
         "# Add a new member\n",
         "# Replace 'new_member@example.com' with the new member's email\n",
@@ -336,175 +327,209 @@
         "  else:\n",
         "    # Re-raise the exception for other RequestRejected errors\n",
         "    raise e\n"
-      ],
-      "metadata": {
-        "id": "Tlvy14EwuYd_"
-      },
-      "execution_count": null,
-      "outputs": []
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "lRT8oi1M2CUZ"
+      },
+      "outputs": [],
       "source": [
         "for member in project.members():\n",
         "    if member.user.email == new_member_email:\n",
         "        project.remove_member(member)\n",
         "        print(f\"Removed {new_member_email} from the project\")\n",
         "else:\n",
-        "    print(f\"{new_member_email} not found in the project\")"
-      ],
-      "metadata": {
-        "id": "lRT8oi1M2CUZ"
-      },
-      "execution_count": null,
-      "outputs": []
+        "    print(f\"{new_member_email} not found in the project. Has the invitation been accpted?\")"
+      ]
     },
     {
       "cell_type": "markdown",
-      "source": [
-        "To list resources within a project:"
-      ],
       "metadata": {
         "id": "iAhJbveK3zQU"
-      }
+      },
+      "source": [
+        "To list resources within a project:"
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "te46JrmS3zlr"
+      },
+      "outputs": [],
       "source": [
         "# Fetch all resources in the project\n",
         "resources = project.resources()\n",
         "\n",
         "# Display the names and types of the resources\n",
         "for resource in resources:\n",
-        "  print(resource)\n",
-        "  print()"
-      ],
-      "metadata": {
-        "id": "te46JrmS3zlr"
-      },
-      "execution_count": null,
-      "outputs": []
+        "  print(resource)"
+      ]
     },
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "7rWG8NBy4gYX"
+      },
       "source": [
         "## Programming Task 3:\n",
         "\n",
         "    Create a resource named \"Challenge_Resource\" in your \"Challenge_Project\" and set its visibility to Public."
-      ],
-      "metadata": {
-        "id": "7rWG8NBy4gYX"
-      }
+      ]
     },
     {
       "cell_type": "markdown",
-      "source": [
-        "To upload a file to a resource and download it:"
-      ],
       "metadata": {
         "id": "M8Wn2dXV31Vi"
-      }
+      },
+      "source": [
+        "To upload a file to a resource and download it:"
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "CE8IVtHG34wD"
+      },
+      "outputs": [],
       "source": [
         "# Replace 'Resource Name' with the actual name of your resource\n",
         "resource = project.resource(\"Trajectory Data\")\n",
         "metadata = resource.metadata_form()\n",
-        "metadata[\"Title\"] = \"Bla bla bla\"\n",
-        "metadata[\"Creator\"] = \"Me\"\n",
-        "\n",
+        "print(metadata)\n"
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {},
+      "outputs": [],
+      "source": [
         "# Get the current date and time\n",
         "now = datetime.now()strftime(\"%Y-%m-%dT%H-%M-%S\")\n",
         "\n",
+        "metadata[\"Part ID\"] = now\n",
+        "metadata[\"author\"] = \"Me\"\n",
+        "\n",
+        "print(metadata)\n"
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {},
+      "outputs": [],
+      "source": [
         "# Upload a file\n",
         "file_path = './test.txt'  # Replace with the path to your file\n",
         "with open(file_path, 'rb') as file:\n",
-        "    resource.upload(f\"the filename in coscine {now}.txt\",file,metadata) # We are adding the timestamp to ensure new filenames. If you want to update a file, you currently have to delete it and reupload it.\n",
-        "print(f\"Uploaded {file_path} to {resource.name}\")\n",
-        "\n",
+        "    resource.upload(f\"the_filename_in_coscine_{now}.txt\", file, metadata) # We are adding the timestamp to ensure new filenames. If you want to update a file, you currently have to delete it and reupload it.\n",
+        "print(f\"Uploaded {file_path} to {resource.name}\")"
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {},
+      "outputs": [],
+      "source": [
         "# Download the file\n",
         "download_path = './path/to/download/'  # Replace with the desired download path\n",
         "from pathlib import Path\n",
         "Path(download_path).mkdir(parents=True, exist_ok=True)\n",
         "resource.download(download_path)\n",
-        "print(f\"\\nDownloaded resource to {download_path}\")\n"
-      ],
-      "metadata": {
-        "id": "CE8IVtHG34wD"
-      },
-      "execution_count": null,
-      "outputs": []
+        "print(f\"\\nDownloaded resource to {download_path}\")"
+      ]
     },
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "lNE9XPod4wIn"
+      },
       "source": [
         "## Programming Task 4:\n",
         "\n",
         "    * Create a text file in the Colab notebook (use Python to write a file), then upload it to the \"Challenge_Resource\".\n",
         "    * Upload the files you brought and programatically upload them to the \"Challenge_Resource\"."
-      ],
-      "metadata": {
-        "id": "lNE9XPod4wIn"
-      }
+      ]
     },
     {
       "cell_type": "markdown",
-      "source": [
-        "To retrieve and update metadata for a resource:"
-      ],
       "metadata": {
         "id": "VyvLeU-i37EM"
-      }
+      },
+      "source": [
+        "To retrieve and update metadata for a resource:"
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "tYbLJfAI39G4"
+      },
+      "outputs": [],
       "source": [
         "# Fetch metadata\n",
         "metadata = resource.metadata_form()\n",
         "print(metadata)"
-      ],
-      "metadata": {
-        "id": "tYbLJfAI39G4"
-      },
-      "execution_count": null,
-      "outputs": []
+      ]
     },
     {
       "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "DuV1huaW9mmZ"
+      },
+      "outputs": [],
       "source": [
         "# Update metadata\n",
         "metadata['Metadata Key 1'] = 'Metadata Value 1'\n",
         "metadata['Metadata Key 2'] = 'Metadata Value 2'\n",
         "print(metadata)"
-      ],
-      "metadata": {
-        "id": "DuV1huaW9mmZ"
-      },
-      "execution_count": null,
-      "outputs": []
+      ]
     },
     {
       "cell_type": "markdown",
+      "metadata": {
+        "id": "i-9sojTB42x8"
+      },
       "source": [
         "# Bonus Challenges\n",
         "\n",
         "    * Write a function to count how many resources are in each project and print the result for all projects.\n",
         "    * Delete the \"Challenge_Resource\" from the \"Challenge_Project\".\n",
         "    * Explore how to add metadata to a resource and implement this for \"Challenge_Resource\"."
-      ],
-      "metadata": {
-        "id": "i-9sojTB42x8"
-      }
+      ]
     },
     {
       "cell_type": "code",
-      "source": [],
+      "execution_count": null,
       "metadata": {
         "id": "ZzzVbKn05CA4"
       },
-      "execution_count": null,
-      "outputs": []
+      "outputs": [],
+      "source": []
+    }
+  ],
+  "metadata": {
+    "colab": {
+      "provenance": [],
+      "toc_visible": true
+    },
+    "kernelspec": {
+      "display_name": "Python 3",
+      "name": "python3"
+    },
+    "language_info": {
+      "name": "python"
     }
-  ]
-}
\ No newline at end of file
+  },
+  "nbformat": 4,
+  "nbformat_minor": 0
+}
diff --git a/README.md b/README.md
index 5fbbbc193f16cfb31cc0e832873bc83b3a754501..bf84dbcf3fa1f130b9659c85aba53072a3a16677 100644
--- a/README.md
+++ b/README.md
@@ -2,14 +2,15 @@
 
 ## Repo Structure
 
-This repository presents three (including this readme) files:
+This repository presents four (including this readme) files:
 
 * Microtraining_Coscine_MAED_AIII.pdf
 * RDM_with_coscine_in_the_iop.ipynb
+* test.txt
 
 The PDF is our presentation introducing you to some basic research data management concepts.
-
 The notebook (ipynb file) is the interactive notebook prepared for you to interact with coscine programatically.
+The text file is just an example for you to up- and download.
 
 ## Important Links
 
@@ -36,4 +37,4 @@ You might find the following Links useful:
 
 ### Jupyterhub RWTH
 
-* [Jupyterhub RWTH Aachen University](https://jupyter.rwth-aachen.de/hub/spawn?profile=python-3.13)
\ No newline at end of file
+* [Jupyterhub RWTH Aachen University](https://jupyter.rwth-aachen.de/hub/spawn?profile=python-3.11)
\ No newline at end of file