diff --git a/geomagio/api/secure/metadata.py b/geomagio/api/secure/metadata.py index 875aad441a58e33b40539cd67d12b395eabf450b..3592e48b98eb90e99d56f3b9a82edbd12b6ff56e 100644 --- a/geomagio/api/secure/metadata.py +++ b/geomagio/api/secure/metadata.py @@ -35,8 +35,9 @@ async def create_metadata( metadata: Metadata, user: User = Depends(require_user()), ): - metadata = await metadata_table.create_metadata(metadata) - return Response(metadata, status_code=201, media_type="application/json") + created_metadata = await metadata_table.create_metadata(metadata) + print(metadata.to_json()) + return Response(metadata.to_json(), status_code=201, media_type="application/json") @router.delete("/metadata/{id}") diff --git a/geomagio/metadata/Metadata.py b/geomagio/metadata/Metadata.py index ce2ad5211ac07c5023c4821396a8abe1ed1fd4f5..eb8f5b8fd8aa764bd4a8f041badd772cd1f02b33 100644 --- a/geomagio/metadata/Metadata.py +++ b/geomagio/metadata/Metadata.py @@ -1,4 +1,5 @@ from datetime import timezone +import json from typing import Dict from obspy import UTCDateTime @@ -87,3 +88,6 @@ class Metadata(BaseModel): @validator("created_time") def set_default_created_time(cls, created_time: UTCDateTime = None) -> UTCDateTime: return created_time or UTCDateTime() + + def to_json(self): + return json.dumps(self, default=lambda o: o.__dict__, sort_keys=True, indent=4)