diff --git a/toardb/stationmeta/schemas.py b/toardb/stationmeta/schemas.py
index 6faad6e63e1436ecabb33e86a69e7b5cfef65d22..b8d72e3e2699461d67a2e1d3123b3b501f3377f0 100644
--- a/toardb/stationmeta/schemas.py
+++ b/toardb/stationmeta/schemas.py
@@ -235,8 +235,8 @@ class StationmetaGlobalService(StationmetaGlobalServiceBase):
 
 class StationmetaRoleBase(BaseModel):
     id: int = None
-    role: int
-    status: int
+    role: str
+    status: str
     person_id: int
 
 
diff --git a/toardb/timeseries/timeseries.py b/toardb/timeseries/timeseries.py
index 617bd82da0dd98fecb239410c7bedc32f45b8199..734be478849ff1f0c302bc5a6008e25c12d2bb4b 100644
--- a/toardb/timeseries/timeseries.py
+++ b/toardb/timeseries/timeseries.py
@@ -7,6 +7,8 @@ from fastapi import APIRouter, Depends, HTTPException, Body
 from sqlalchemy.orm import Session
 from . import crud, schemas
 from toardb.utils.database import ToarDbSession, get_db
+from toardb.generic.models import RC_enum, RS_enum
+from toardb.utils.utils import get_str_from_value
 
 router = APIRouter()
 
@@ -15,8 +17,15 @@ router = APIRouter()
 #get all entries of table timeseries
 @router.get('/timeseries/', response_model=List[schemas.Timeseries])
 def get_all_timeseries(skip: int = 0, limit: int = None, db: Session = Depends(get_db)):
-    timeseries = crud.get_all_timeseries(db, skip=skip, limit=limit)
-    return timeseries
+    db_timeseries = crud.get_all_timeseries(db, skip=skip, limit=limit)
+    for timeseries in db_timeseries:
+        if timeseries.roles:
+            for r in timeseries.roles:
+                # Attention! Do not change the same object twice!
+                if type(r.role) is int:
+                    r.role = get_str_from_value(db,RC_enum,r.role)
+                    r.status = get_str_from_value(db, RS_enum, r.status)
+    return db_timeseries
 
 #get all metadata of one timeseries
 @router.get('/timeseries/{timeseries_id}', response_model=schemas.Timeseries)
@@ -24,6 +33,10 @@ def get_timeseries(timeseries_id: int, db: Session = Depends(get_db)):
     db_timeseries = crud.get_timeseries(db, timeseries_id=timeseries_id)
     if db_timeseries is None:
         raise HTTPException(status_code=404, detail="Timeseries not found.")
+    if db_timeseries.roles:
+        for r in db_timeseries.roles:
+            r.role = get_str_from_value(db,RC_enum,r.role)
+            r.status = get_str_from_value(db, RS_enum, r.status)
     return db_timeseries
 
 #some more gets to be tested:
@@ -37,5 +50,10 @@ def create_timeseries(timeseries: schemas.TimeseriesCreate = Body(..., embed = T
                          variable_id=timeseries.variable_id, label=timeseries.label)
     if db_timeseries:
         raise HTTPException(status_code=400, detail="Timeseries already registered.")
-    return crud.create_timeseries(db=db, timeseries=timeseries)
+    db_timeseries=crud.create_timeseries(db=db, timeseries=timeseries)
+    if db_timeseries.roles:
+        for r in db_timeseries.roles:
+            r.role = get_str_from_value(db,RC_enum,r.role)
+            r.status = get_str_from_value(db, RS_enum, r.status)
+    return db_timeseries