diff --git a/lib/OryKratos/Types/Identity.hs b/lib/OryKratos/Types/Identity.hs
--- a/lib/OryKratos/Types/Identity.hs
+++ b/lib/OryKratos/Types/Identity.hs
@@ -41,7 +41,7 @@
     created_at :: Maybe UTCTime,
     -- | Credentials represents all credentials that can be used for authenticating this identity.
     credentials :: Maybe (Map.Map String IdentityCredentials),
-    id :: Text,
+    id :: UUID,
     -- | NullJSONRawMessage represents a json.RawMessage that works well with JSON, SQL, and Swagger and is NULLable-
     metadata_admin :: Maybe Value,
     -- | NullJSONRawMessage represents a json.RawMessage that works well with JSON, SQL, and Swagger and is NULLable-
diff --git a/lib/OryKratos/Types/Other.hs b/lib/OryKratos/Types/Other.hs
--- a/lib/OryKratos/Types/Other.hs
+++ b/lib/OryKratos/Types/Other.hs
@@ -43,7 +43,7 @@
     authenticator_assurance_level :: Maybe AuthenticatorAssuranceLevel,
     -- | The Session Expiry  When this session expires at.
     expires_at :: Maybe UTCTime,
-    id :: Text,
+    id :: UUID,
     identity :: Identity,
     -- | The Session Issuance Timestamp  When this session was issued at. Usually equal or close to `authenticated_at`.
     issued_at :: Maybe UTCTime
diff --git a/lib/OryKratos/Types/SelfService.hs b/lib/OryKratos/Types/SelfService.hs
--- a/lib/OryKratos/Types/SelfService.hs
+++ b/lib/OryKratos/Types/SelfService.hs
@@ -70,7 +70,7 @@
   { -- | CreatedAt is a helper struct field for gobuffalo.pop.
     created_at :: Maybe UTCTime,
     error :: Maybe Value,
-    id :: Text,
+    id :: UUID,
     -- | UpdatedAt is a helper struct field for gobuffalo.pop.
     updated_at :: Maybe UTCTime
   }
@@ -101,7 +101,7 @@
     since :: Maybe Integer,
     -- | The status description
     status :: Maybe Text,
-    use_flow_id :: Maybe Text
+    use_flow_id :: Maybe UUID
   }
   deriving stock (Show, Eq, Generic, Data)
 
@@ -117,7 +117,7 @@
     created_at :: Maybe UTCTime,
     -- | ExpiresAt is the time (UTC) when the flow expires. If the user still wishes to log in, a new flow has to be initiated.
     expires_at :: UTCTime,
-    id :: Text,
+    id :: UUID,
     -- | IssuedAt is the time (UTC) when the flow started.
     issued_at :: UTCTime,
     -- | Refresh stores whether this login flow should enforce re-authentication.
@@ -161,7 +161,7 @@
     active :: Maybe Text,
     -- | ExpiresAt is the time (UTC) when the request expires. If the user still wishes to update the setting, a new request has to be initiated.
     expires_at :: UTCTime,
-    id :: Text,
+    id :: UUID,
     -- | IssuedAt is the time (UTC) when the request occurred.
     issued_at :: UTCTime,
     -- | RequestURL is the initial URL that was requested from Ory Kratos. It can be used to forward information contained in the URL's path or query for example.
@@ -219,7 +219,7 @@
   { active :: Maybe IdentityCredentialsType,
     -- | ExpiresAt is the time (UTC) when the flow expires. If the user still wishes to log in, a new flow has to be initiated.
     expires_at :: UTCTime,
-    id :: Text,
+    id :: UUID,
     -- | IssuedAt is the time (UTC) when the flow occurred.
     issued_at :: UTCTime,
     -- | RequestURL is the initial URL that was requested from Ory Kratos. It can be used to forward information contained in the URL's path or query for example.
@@ -245,7 +245,7 @@
     active :: Maybe Text,
     -- | ExpiresAt is the time (UTC) when the flow expires. If the user still wishes to update the setting, a new flow has to be initiated.
     expires_at :: UTCTime,
-    id :: Text,
+    id :: UUID,
     identity :: Identity,
     -- | IssuedAt is the time (UTC) when the flow occurred.
     issued_at :: UTCTime,
@@ -287,7 +287,7 @@
     active :: Maybe Text,
     -- | ExpiresAt is the time (UTC) when the request expires. If the user still wishes to verify the address, a new request has to be initiated.
     expires_at :: Maybe UTCTime,
-    id :: Text,
+    id :: UUID,
     -- | IssuedAt is the time (UTC) when the request occurred.
     issued_at :: Maybe UTCTime,
     -- | RequestURL is the initial URL that was requested from Ory Kratos. It can be used to forward information contained in the URL's path or query for example.
diff --git a/lib/OryKratos/Types/Types.hs b/lib/OryKratos/Types/Types.hs
--- a/lib/OryKratos/Types/Types.hs
+++ b/lib/OryKratos/Types/Types.hs
@@ -240,7 +240,7 @@
 data RecoveryAddress = RecoveryAddress
   { -- | CreatedAt is a helper struct field for gobuffalo.pop.
     created_at :: Maybe UTCTime,
-    id :: Text,
+    id :: UUID,
     -- | UpdatedAt is a helper struct field for gobuffalo.pop.
     updated_at :: Maybe UTCTime,
     value :: Text,
@@ -306,7 +306,7 @@
 data VerifiableIdentityAddress = VerifiableIdentityAddress
   { -- | When this entry was created
     created_at :: Maybe UTCTime,
-    id :: Text,
+    id :: UUID,
     -- | VerifiableAddressStatus must not exceed 16 characters as that is the limitation in the SQL Schema
     status :: Text,
     -- | When this entry was last updated
diff --git a/ory-kratos.cabal b/ory-kratos.cabal
--- a/ory-kratos.cabal
+++ b/ory-kratos.cabal
@@ -1,6 +1,6 @@
 cabal-version: 3.0
 name:          ory-kratos
-version:       0.0.7.3
+version:       0.0.8.0
 synopsis:      API bindings for Ory Kratos
 description:   API bindings for ory-kratos 0.10.1
 homepage:      https://github.com/njaremko/ory-kratos-haskell-sdk
