diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,15 @@
+# Version [0.3.0.0](https://github.com/blockfrost/blockfrost-haskell/compare/v0.2.1.0...v0.3.0.0) (2022-02-07)
+
+* Changes
+  * `UtxoInput` and `UtxoOutput` `dataHash` fields changed from `Maybe Text` to `Maybe DataHash`
+  * `TransactionRedeemer`
+    * `scriptHash` field changed from `Maybe Text` to `Maybe ScriptHash`
+    * `datumHash` field changed from `Maybe Text` to `Maybe DatumHash`
+
+* Additions
+  * `Transaction` grows `Bool`ean `validContract` field
+  * Lenses for `TransactionRedeemer`
+
 # Version [0.2.1.0](https://github.com/blockfrost/blockfrost-haskell/compare/v0.2.0.0...v0.2.1.0) (2021-11-15)
 
 * Additions
diff --git a/blockfrost-api.cabal b/blockfrost-api.cabal
--- a/blockfrost-api.cabal
+++ b/blockfrost-api.cabal
@@ -1,6 +1,6 @@
 cabal-version:       2.2
 name:                blockfrost-api
-version:             0.2.1.0
+version:             0.3.0.0
 synopsis:            API definitions for blockfrost.io
 description:         Core types and Servant API description
 homepage:            https://github.com/blockfrost/blockfrost-haskell
diff --git a/src/Blockfrost/Lens.hs b/src/Blockfrost/Lens.hs
--- a/src/Blockfrost/Lens.hs
+++ b/src/Blockfrost/Lens.hs
@@ -72,6 +72,7 @@
 makeFields ''TransactionPoolRetiring
 makeFields ''TransactionMetaJSON
 makeFields ''TransactionMetaCBOR
+makeFields ''TransactionRedeemer
 
 makeLensesWith blockfrostFieldRules ''IPFSAdd
 makeLensesWith blockfrostFieldRules ''IPFSPinChange
diff --git a/src/Blockfrost/Types/Cardano/Transactions.hs b/src/Blockfrost/Types/Cardano/Transactions.hs
--- a/src/Blockfrost/Types/Cardano/Transactions.hs
+++ b/src/Blockfrost/Types/Cardano/Transactions.hs
@@ -50,6 +50,7 @@
   , _transactionPoolRetireCount      :: Integer -- ^ Count of the stake pool retirement certificates within the transaction
   , _transactionAssetMintOrBurnCount :: Integer -- ^ Count of asset mints and burns within the transaction
   , _transactionRedeemerCount        :: Integer -- ^ Count of redeemers within the transaction
+  , _transactionValidContract        :: Bool    -- ^ True if this is a valid transaction, False in case of contract validation failure
   }
   deriving stock (Show, Eq, Generic)
   deriving (FromJSON, ToJSON)
@@ -78,6 +79,7 @@
       , _transactionPoolRetireCount = 0
       , _transactionAssetMintOrBurnCount = 0
       , _transactionRedeemerCount = 0
+      , _transactionValidContract = True
       }
 
 -- | Transaction input UTxO
@@ -87,7 +89,7 @@
   , _utxoInputTxHash      :: Text -- ^ Hash of the UTXO transaction
   , _utxoInputOutputIndex :: Integer -- ^ UTXO index in the transaction
   , _utxoInputCollateral  :: Bool -- ^ UTXO is a script collateral input
-  , _utxoInputDataHash    :: Maybe Text -- ^ The hash of the transaction output datum
+  , _utxoInputDataHash    :: Maybe DatumHash -- ^ The hash of the transaction output datum
   }
   deriving stock (Show, Eq, Generic)
   deriving (FromJSON, ToJSON)
@@ -111,7 +113,7 @@
 data UtxoOutput = UtxoOutput
   { _utxoOutputAddress     :: Address -- ^ Output address
   , _utxoOutputAmount      :: [Amount] -- ^ Transaction output amounts
-  , _utxoOutputDataHash    :: Maybe Text -- ^ The hash of the transaction output datum
+  , _utxoOutputDataHash    :: Maybe DatumHash -- ^ The hash of the transaction output datum
   , _utxoOutputOutputIndex :: Integer -- ^ UTXO index in the transaction
   } deriving stock (Show, Eq, Generic)
   deriving (FromJSON, ToJSON)
@@ -170,8 +172,8 @@
 data TransactionRedeemer = TransactionRedeemer
   { _transactionRedeemerTxIndex   :: Integer -- ^ Index of the redeemer within a transaction
   , _transactionRedeemerPurpose   :: ValidationPurpose -- ^ Validation purpose
-  , _transactionRedeemerScriptHash:: Text -- ^ Script hash
-  , _transactionRedeemerDatumHash :: Text -- ^ Datum hash
+  , _transactionRedeemerScriptHash:: ScriptHash -- ^ Script hash
+  , _transactionRedeemerDatumHash :: DatumHash -- ^ Datum hash
   , _transactionRedeemerUnitMem   :: Quantity -- ^ The budget in Memory to run a script
   , _transactionRedeemerUnitSteps :: Quantity -- ^ The budget in Steps to run a script
   , _transactionRedeemerFee       :: Lovelaces -- ^ The fee consumed to run the script
diff --git a/test/Cardano/Transactions.hs b/test/Cardano/Transactions.hs
--- a/test/Cardano/Transactions.hs
+++ b/test/Cardano/Transactions.hs
@@ -102,7 +102,8 @@
   "pool_update_count": 0,
   "pool_retire_count": 0,
   "asset_mint_or_burn_count": 0,
-  "redeemer_count": 0
+  "redeemer_count": 0,
+  "valid_contract": true
 }
 |]
 
@@ -138,6 +139,7 @@
     , _transactionPoolRetireCount = 0
     , _transactionAssetMintOrBurnCount = 0
     , _transactionRedeemerCount = 0
+    , _transactionValidContract = True
     }
 
 transactionUtxosSample = [r|
