diff --git a/schemas/dimMarkets_schema.json b/schemas/dimMarkets_schema.json
index 273c28be..b606bd40 100644
--- a/schemas/dimMarkets_schema.json
+++ b/schemas/dimMarkets_schema.json
@@ -1,7 +1,7 @@
 [
   {
     "mode": "NULLABLE",
-    "name": "counter_issuers",
+    "name": "counter_issuer",
     "type": "STRING"
   },
   {
diff --git a/schemas/euro_ohlc_schema.json b/schemas/euro_ohlc_schema.json
index 7b54fba2..2a4adf00 100644
--- a/schemas/euro_ohlc_schema.json
+++ b/schemas/euro_ohlc_schema.json
@@ -7,7 +7,7 @@
   {
     "mode": "NULLABLE",
     "name": "open",
-    "type": "INTEGER"
+    "type": "FLOAT"
   },
   {
     "mode": "NULLABLE",
diff --git a/schemas/history_contract_events_schema.json b/schemas/history_contract_events_schema.json
index 1b80b78c..77e2eb4f 100644
--- a/schemas/history_contract_events_schema.json
+++ b/schemas/history_contract_events_schema.json
@@ -9,6 +9,11 @@
     "name": "transaction_id",
     "type": "INTEGER"
   },
+  {
+    "mode": "NULLABLE",
+    "name": "successful",
+    "type": "BOOLEAN"
+  },
   {
     "mode": "NULLABLE",
     "name": "in_successful_contract_call",
diff --git a/schemas/history_trades_schema.json b/schemas/history_trades_schema.json
new file mode 100644
index 00000000..494d1893
--- /dev/null
+++ b/schemas/history_trades_schema.json
@@ -0,0 +1,137 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "history_operation_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "order",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_account_address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_account_address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price_n",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price_d",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trade_type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rounding_slippage",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "seller_is_exact",
+    "type": "BOOLEAN"
+  }
+]
diff --git a/schemas/new_schema.json b/schemas/new_schema.json
deleted file mode 100644
index 5f9c864f..00000000
--- a/schemas/new_schema.json
+++ /dev/null
@@ -1,63 +0,0 @@
-[
-    {
-      "mode": "NULLABLE",
-      "name": "account_id",
-      "type": "STRING"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "signer",
-      "type": "STRING"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "weight",
-      "type": "FLOAT"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "sponsor",
-      "type": "STRING"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "last_modified_ledger",
-      "type": "INTEGER"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "ledger_entry_change",
-      "type": "INTEGER"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "deleted",
-      "type": "BOOLEAN"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "batch_id",
-      "type": "STRING"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "batch_run_date",
-      "type": "DATETIME"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "batch_insert_ts",
-      "type": "TIMESTAMP"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "closed_at",
-      "type": "TIMESTAMP"
-    },
-    {
-      "mode": "NULLABLE",
-      "name": "ledger_sequence",
-      "type": "INTEGER"
-    }
-  ]
-  
\ No newline at end of file
diff --git a/schemas/schemas/account_signers_schema.json b/schemas/schemas/account_signers_schema.json
new file mode 100644
index 00000000..fd92d8a6
--- /dev/null
+++ b/schemas/schemas/account_signers_schema.json
@@ -0,0 +1,62 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "weight",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/accounts_schema.json b/schemas/schemas/accounts_schema.json
new file mode 100644
index 00000000..cbcb7c43
--- /dev/null
+++ b/schemas/schemas/accounts_schema.json
@@ -0,0 +1,132 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_liabilities",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_liabilities",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sequence_number",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "num_subentries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inflation_destination",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "home_domain",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "master_weight",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "threshold_low",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "threshold_medium",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "threshold_high",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "num_sponsored",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "num_sponsoring",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sequence_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sequence_time",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/claimable_balances_schema.json b/schemas/schemas/claimable_balances_schema.json
new file mode 100644
index 00000000..1ee7b54b
--- /dev/null
+++ b/schemas/schemas/claimable_balances_schema.json
@@ -0,0 +1,499 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "balance_id",
+    "type": "STRING"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "destination",
+        "type": "STRING"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "unconditional",
+            "type": "BOOLEAN"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "rel_before",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before_epoch",
+            "type": "INTEGER"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "or",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "and",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "not",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "or",
+            "type": "RECORD"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "predicate",
+        "type": "RECORD"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "claimants",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/config_settings_schema.json b/schemas/schemas/config_settings_schema.json
new file mode 100644
index 00000000..0fcf24b6
--- /dev/null
+++ b/schemas/schemas/config_settings_schema.json
@@ -0,0 +1,291 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "config_setting_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_max_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_rate_per_instructions_increment",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_memory_limit",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_read_ledger_entries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_read_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_write_ledger_entries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_write_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_read_ledger_entries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_read_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_write_ledger_entries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_write_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_read_ledger_entry",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_write_ledger_entry",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_read_1kb",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "bucket_list_target_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "write_fee_1kb_bucket_list_low",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "write_fee_1kb_bucket_list_high",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "bucket_list_write_fee_growth_factor",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_historical_1kb",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_contract_events_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_contract_events_1kb",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_txs_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_tx_size_1kb",
+    "type": "INTEGER"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "ExtV",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "ConstTerm",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "LinearTerm",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "contract_cost_params_cpu_insns",
+    "type": "RECORD"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "ExtV",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "ConstTerm",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "LinearTerm",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "contract_cost_params_mem_bytes",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_data_key_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_data_entry_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_entry_ttl",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_temporary_ttl",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_persistent_ttl",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "auto_bump_ledgers",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "persistent_rent_rate_denominator",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "temp_rent_rate_denominator",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_entries_to_archive",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "bucket_list_size_window_sample_size",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "eviction_scan_size",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "starting_eviction_scan_level",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_tx_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "bucket_list_size_window",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/contract_code_schema.json b/schemas/schemas/contract_code_schema.json
new file mode 100644
index 00000000..9536a8b8
--- /dev/null
+++ b/schemas/schemas/contract_code_schema.json
@@ -0,0 +1,107 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "contract_code_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_code_ext_v",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_key_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_functions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_globals",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_table_entries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_types",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_data_segments",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_elem_segments",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_imports",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_exports",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_data_segment_bytes",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/contract_data_schema.json b/schemas/schemas/contract_data_schema.json
new file mode 100644
index 00000000..9b0c0d39
--- /dev/null
+++ b/schemas/schemas/contract_data_schema.json
@@ -0,0 +1,112 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "contract_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_key_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_durability",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance_holder",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_key_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "key",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "key_decoded",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "val",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "val_decoded",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_data_xdr",
+    "type": "STRING"
+  }
+]
diff --git a/schemas/schemas/dimAccounts_schema.json b/schemas/schemas/dimAccounts_schema.json
new file mode 100644
index 00000000..67c848ff
--- /dev/null
+++ b/schemas/schemas/dimAccounts_schema.json
@@ -0,0 +1,12 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_id",
+    "type": "FLOAT"
+  }
+]
diff --git a/schemas/schemas/dimMarkets_schema.json b/schemas/schemas/dimMarkets_schema.json
new file mode 100644
index 00000000..b606bd40
--- /dev/null
+++ b/schemas/schemas/dimMarkets_schema.json
@@ -0,0 +1,27 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "counter_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "counter_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "market_id",
+    "type": "FLOAT"
+  }
+]
diff --git a/schemas/schemas/dimOffers_schema.json b/schemas/schemas/dimOffers_schema.json
new file mode 100644
index 00000000..63b4e757
--- /dev/null
+++ b/schemas/schemas/dimOffers_schema.json
@@ -0,0 +1,42 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "price",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "action",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "counter_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "maker_id",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "dim_offer_id",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "market_id",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "horizon_offer_id",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/enriched_history_operations_schema.json b/schemas/schemas/enriched_history_operations_schema.json
new file mode 100644
index 00000000..ccdae4da
--- /dev/null
+++ b/schemas/schemas/enriched_history_operations_schema.json
@@ -0,0 +1,1354 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_account_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "authorize",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "claimant",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "claimant_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "claimant_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "destination",
+        "type": "STRING"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "unconditional",
+            "type": "BOOLEAN"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "rel_before",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before_epoch",
+            "type": "INTEGER"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "and",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "not",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "or",
+            "type": "RECORD"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "predicate",
+        "type": "RECORD"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "claimants",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "data_account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "data_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "from",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "from_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "from_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "funder",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "funder_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "funder_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "high_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "home_domain",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inflation_dest",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "into",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "into_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "into_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "limit",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "low_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "master_key_weight",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "med_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "path",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "d",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "set_flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "set_flags_s",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer_account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer_key",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer_weight",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_max",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "starting_balance",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "to",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "to_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "to_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustee",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustee_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustee_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustor_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustor_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustline_account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustline_asset",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "value",
+    "type": "STRING"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "clear_flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "clear_flags_s",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "destination_min",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "bump_to",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsored_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "begin_sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "begin_sponsor_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "begin_sponsor_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "authorize_to_maintain_liabilities",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "clawback_enabled",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_max_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_deposit_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_max_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_deposit_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_price",
+    "type": "FLOAT"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "d",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "n",
+        "type": "INTEGER"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "min_price_r",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_price",
+    "type": "FLOAT"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "d",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "n",
+        "type": "INTEGER"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "max_price_r",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "shares_received",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_min_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_min_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "shares",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_withdraw_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_withdraw_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_source_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_source_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type_string",
+    "type": "string"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_created_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "time_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "new_max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "previous_ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "total_coins",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_pool",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_reserve",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_tx_set_size",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "protocol_version",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "failed_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_age",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_ledger_gap",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "extra_signers",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_envelope",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_result",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_meta",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_fee_meta",
+    "type": "STRING"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "from",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "to",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "asset_balance_changes",
+    "type": "RECORD"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "parameters",
+    "type": "RECORD"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "parameters_decoded",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "function",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_operation_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "extend_to",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_code_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "resource_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_read_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_write_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_result_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inclusion_fee_bid",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inclusion_fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "resource_fee_refund",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_result_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_trace_code",
+    "type": "STRING"
+  }
+]
diff --git a/schemas/schemas/enriched_meaningful_history_operations_schema.json b/schemas/schemas/enriched_meaningful_history_operations_schema.json
new file mode 100644
index 00000000..ce92f39a
--- /dev/null
+++ b/schemas/schemas/enriched_meaningful_history_operations_schema.json
@@ -0,0 +1,794 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "authorize",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "from",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "funder",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "high_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "home_domain",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inflation_dest",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "into",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "limit",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "low_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "master_key_weight",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "med_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "path",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "d",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "set_flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "set_flags_s",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer_key",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer_weight",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_max",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "starting_balance",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "to",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustee",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustline_asset",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "value",
+    "type": "STRING"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "clear_flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "clear_flags_s",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "destination_min",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "bump_to",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsored_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "begin_sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "authorize_to_maintain_liabilities",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "clawback_enabled",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_max_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_deposit_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_max_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_deposit_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_price",
+    "type": "FLOAT"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "d",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "n",
+        "type": "INTEGER"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "min_price_r",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_price",
+    "type": "FLOAT"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "d",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "n",
+        "type": "INTEGER"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "max_price_r",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "shares_received",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_min_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_min_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "shares",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_withdraw_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_withdraw_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_source_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_source_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_created_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "time_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "new_max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "previous_ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "total_coins",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_pool",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_reserve",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_tx_set_size",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "protocol_version",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "failed_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_age",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_ledger_gap",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "extra_signers",
+    "type": "STRING"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "from",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "to",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "asset_balance_changes",
+    "type": "RECORD"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "parameters",
+    "type": "RECORD"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "parameters_decoded",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "function",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_operation_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "extend_to",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_code_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "resource_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_read_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_write_bytes",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/euro_ohlc_schema.json b/schemas/schemas/euro_ohlc_schema.json
new file mode 100644
index 00000000..2a4adf00
--- /dev/null
+++ b/schemas/schemas/euro_ohlc_schema.json
@@ -0,0 +1,27 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "time",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "open",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "high",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "low",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "close",
+    "type": "FLOAT"
+  }
+]
diff --git a/schemas/schemas/factEvents_schema.json b/schemas/schemas/factEvents_schema.json
new file mode 100644
index 00000000..81b90afe
--- /dev/null
+++ b/schemas/schemas/factEvents_schema.json
@@ -0,0 +1,12 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "offer_instance_id",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_id",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/history_assets_schema.json b/schemas/schemas/history_assets_schema.json
new file mode 100644
index 00000000..c6576a96
--- /dev/null
+++ b/schemas/schemas/history_assets_schema.json
@@ -0,0 +1,47 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  }
+]
diff --git a/schemas/schemas/history_contract_events_schema.json b/schemas/schemas/history_contract_events_schema.json
new file mode 100644
index 00000000..77e2eb4f
--- /dev/null
+++ b/schemas/schemas/history_contract_events_schema.json
@@ -0,0 +1,87 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "in_successful_contract_call",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type_string",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "topics",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "topics_decoded",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "data",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "data_decoded",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_event_xdr",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/history_effects_schema.json b/schemas/schemas/history_effects_schema.json
new file mode 100644
index 00000000..0cb0d195
--- /dev/null
+++ b/schemas/schemas/history_effects_schema.json
@@ -0,0 +1,878 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "address_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type_string",
+    "type": "STRING"
+  },
+  {
+    "fields": [
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "fee_bp",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "id",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "total_shares",
+            "type": "NUMERIC"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "total_trustlines",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "type",
+            "type": "STRING"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "asset",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "amount",
+                "type": "NUMERIC"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "reserves",
+            "type": "RECORD"
+          }
+        ],
+        "mode": "NULLABLE",
+        "name": "liquidity_pool",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "NUMERIC"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "reserves_received",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "NUMERIC"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "reserves_deposited",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "NUMERIC"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "claimable_balance_id",
+            "type": "STRING"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "reserves_revoked",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "NUMERIC"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "bought",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "NUMERIC"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "sold",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "shares_revoked",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "shares_received",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "shares_redeemed",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "liquidity_pool_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "balance_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "new_seq",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "name",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "limit",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "inflation_destination",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "authorized_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "auth_immutable_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "authorized_to_maintain_liabilites",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "auth_revocable_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "auth_required_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "auth_clawback_enabled_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "claimable_balance_clawback_enabled_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "clawback_enabled_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "high_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "med_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "low_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "home_domain",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "signer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sponsor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "new_sponsor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "former_sponsor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "weight",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "public_key",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "amount",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "starting_balance",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "seller",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "seller_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "seller_muxed_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "offer_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sold_amount",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sold_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sold_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sold_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "bought_amount",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "bought_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "bought_asset_code",
+        "type": "STRING"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "type",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "unconditional",
+            "type": "BOOLEAN"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "rel_before",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before_epoch",
+            "type": "INTEGER"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "or",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "and",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "not",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "or",
+            "type": "RECORD"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "predicate",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "data_name",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "bought_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "entries",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "extend_to",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "contract",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "contract_event_type",
+        "type": "STRING"
+      }
+    ],
+    "mode": "NULLABLE",
+    "name": "details",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "index",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "id",
+    "type": "STRING"
+  }
+]
diff --git a/schemas/schemas/history_ledgers_schema.json b/schemas/schemas/history_ledgers_schema.json
new file mode 100644
index 00000000..1bc7cf9b
--- /dev/null
+++ b/schemas/schemas/history_ledgers_schema.json
@@ -0,0 +1,122 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "previous_ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "total_coins",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_pool",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_reserve",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_tx_set_size",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "protocol_version",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_header",
+    "type": "BYTES"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "failed_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_set_operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_fee_write_1kb",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "node_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signature",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "total_byte_size_of_bucket_list",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/history_operations_schema.json b/schemas/schemas/history_operations_schema.json
new file mode 100644
index 00000000..09ff1ee6
--- /dev/null
+++ b/schemas/schemas/history_operations_schema.json
@@ -0,0 +1,1185 @@
+[
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "account",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "account_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "account_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "account_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "authorize",
+        "type": "BOOLEAN"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "balance_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "buying_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "buying_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "buying_asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "buying_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "claimable_balance_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "claimant",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "claimant_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "claimant_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "destination",
+            "type": "STRING"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "fields": [
+                          {
+                            "mode": "NULLABLE",
+                            "name": "abs_before",
+                            "type": "STRING"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "rel_before",
+                            "type": "INTEGER"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "unconditional",
+                            "type": "BOOLEAN"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "abs_before_epoch",
+                            "type": "INTEGER"
+                          }
+                        ],
+                        "mode": "REPEATED",
+                        "name": "or",
+                        "type": "RECORD"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "or",
+                    "type": "RECORD"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "and",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "and",
+                    "type": "RECORD"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "or",
+                    "type": "RECORD"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "or",
+                    "type": "RECORD"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "fields": [
+                          {
+                            "mode": "NULLABLE",
+                            "name": "abs_before",
+                            "type": "STRING"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "rel_before",
+                            "type": "INTEGER"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "unconditional",
+                            "type": "BOOLEAN"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "abs_before_epoch",
+                            "type": "INTEGER"
+                          }
+                        ],
+                        "mode": "REPEATED",
+                        "name": "not",
+                        "type": "RECORD"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "and",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "predicate",
+            "type": "RECORD"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "claimants",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "data_account_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "data_name",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "from",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "from_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "from_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "funder",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "funder_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "funder_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "high_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "home_domain",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "inflation_dest",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "into",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "into_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "into_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "limit",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "low_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "master_key_weight",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "med_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "name",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "offer_id",
+        "type": "INTEGER"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset_code",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "asset_issuer",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "asset_type",
+            "type": "STRING"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "path",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "price",
+        "type": "FLOAT"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "d",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "n",
+            "type": "INTEGER"
+          }
+        ],
+        "mode": "NULLABLE",
+        "name": "price_r",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "selling_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "selling_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "selling_asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "selling_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "set_flags",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "set_flags_s",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "signer_account_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "signer_key",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "signer_weight",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_max",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "starting_balance",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "to",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "to_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "to_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustee",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustee_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustee_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustline_account_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustline_asset",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustor_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustor_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "clear_flags",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "clear_flags_s",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "destination_min",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "bump_to",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "authorize_to_maintain_liabilities",
+        "type": "BOOLEAN"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "clawback_enabled",
+        "type": "BOOLEAN"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sponsor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sponsored_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "begin_sponsor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "begin_sponsor_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "begin_sponsor_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "liquidity_pool_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_max_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_deposit_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_max_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_deposit_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "min_price",
+        "type": "FLOAT"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "d",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "n",
+            "type": "INTEGER"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "min_price_r",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "max_price",
+        "type": "FLOAT"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "d",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "n",
+            "type": "INTEGER"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "max_price_r",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "shares_received",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_min_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_withdraw_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_min_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_withdraw_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "shares",
+        "type": "FLOAT"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "FLOAT"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "asset_code",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "asset_issuer",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "asset_type",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "from",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "to",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "type",
+            "type": "STRING"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "asset_balance_changes",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "type",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "value",
+            "type": "STRING"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "parameters",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "type",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "value",
+            "type": "STRING"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "parameters_decoded",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "function",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "address",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "extend_to",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "contract_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "contract_code_hash",
+        "type": "STRING"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "ledger_key_hash",
+        "type": "STRING"
+      }
+    ],
+    "mode": "NULLABLE",
+    "name": "details",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type_string",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_result_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_trace_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "details_json",
+    "type": "JSON"
+  }
+]
diff --git a/schemas/schemas/history_trades_schema.json b/schemas/schemas/history_trades_schema.json
new file mode 100644
index 00000000..494d1893
--- /dev/null
+++ b/schemas/schemas/history_trades_schema.json
@@ -0,0 +1,137 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "history_operation_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "order",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_account_address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_account_address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price_n",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price_d",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trade_type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rounding_slippage",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "seller_is_exact",
+    "type": "BOOLEAN"
+  }
+]
diff --git a/schemas/schemas/history_transactions_schema.json b/schemas/schemas/history_transactions_schema.json
new file mode 100644
index 00000000..809523f2
--- /dev/null
+++ b/schemas/schemas/history_transactions_schema.json
@@ -0,0 +1,217 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "created_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "time_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inner_transaction_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "new_max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_age",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_ledger_gap",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_envelope",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_result",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_meta",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_fee_meta",
+    "type": "STRING"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "extra_signers",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "resource_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_read_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_write_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_result_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inclusion_fee_bid",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inclusion_fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "resource_fee_refund",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "non_refundable_resource_fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "refundable_resource_fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rent_fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "tx_signers",
+    "type": "STRING"
+  }
+]
diff --git a/schemas/schemas/liquidity_pools_schema.json b/schemas/schemas/liquidity_pools_schema.json
new file mode 100644
index 00000000..6861eccb
--- /dev/null
+++ b/schemas/schemas/liquidity_pools_schema.json
@@ -0,0 +1,117 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustline_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "pool_share_count",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_a_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_a_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_a_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_a_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_a_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_b_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_b_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_b_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_b_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_b_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/account_signers_schema.json b/schemas/schemas/master_schemas/account_signers_schema.json
new file mode 100644
index 00000000..fd92d8a6
--- /dev/null
+++ b/schemas/schemas/master_schemas/account_signers_schema.json
@@ -0,0 +1,62 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "weight",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/accounts_schema.json b/schemas/schemas/master_schemas/accounts_schema.json
new file mode 100644
index 00000000..cbcb7c43
--- /dev/null
+++ b/schemas/schemas/master_schemas/accounts_schema.json
@@ -0,0 +1,132 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_liabilities",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_liabilities",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sequence_number",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "num_subentries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inflation_destination",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "home_domain",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "master_weight",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "threshold_low",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "threshold_medium",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "threshold_high",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "num_sponsored",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "num_sponsoring",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sequence_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sequence_time",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/claimable_balances_schema.json b/schemas/schemas/master_schemas/claimable_balances_schema.json
new file mode 100644
index 00000000..1ee7b54b
--- /dev/null
+++ b/schemas/schemas/master_schemas/claimable_balances_schema.json
@@ -0,0 +1,499 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "balance_id",
+    "type": "STRING"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "destination",
+        "type": "STRING"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "unconditional",
+            "type": "BOOLEAN"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "rel_before",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before_epoch",
+            "type": "INTEGER"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "or",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "and",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "not",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "or",
+            "type": "RECORD"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "predicate",
+        "type": "RECORD"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "claimants",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/config_settings_schema.json b/schemas/schemas/master_schemas/config_settings_schema.json
new file mode 100644
index 00000000..0fcf24b6
--- /dev/null
+++ b/schemas/schemas/master_schemas/config_settings_schema.json
@@ -0,0 +1,291 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "config_setting_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_max_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_rate_per_instructions_increment",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_memory_limit",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_read_ledger_entries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_read_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_write_ledger_entries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_write_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_read_ledger_entries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_read_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_write_ledger_entries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_write_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_read_ledger_entry",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_write_ledger_entry",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_read_1kb",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "bucket_list_target_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "write_fee_1kb_bucket_list_low",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "write_fee_1kb_bucket_list_high",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "bucket_list_write_fee_growth_factor",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_historical_1kb",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_contract_events_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_contract_events_1kb",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_txs_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_max_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_tx_size_1kb",
+    "type": "INTEGER"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "ExtV",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "ConstTerm",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "LinearTerm",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "contract_cost_params_cpu_insns",
+    "type": "RECORD"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "ExtV",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "ConstTerm",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "LinearTerm",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "contract_cost_params_mem_bytes",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_data_key_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_data_entry_size_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_entry_ttl",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_temporary_ttl",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_persistent_ttl",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "auto_bump_ledgers",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "persistent_rent_rate_denominator",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "temp_rent_rate_denominator",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_entries_to_archive",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "bucket_list_size_window_sample_size",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "eviction_scan_size",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "starting_eviction_scan_level",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_max_tx_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "bucket_list_size_window",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/contract_code_schema.json b/schemas/schemas/master_schemas/contract_code_schema.json
new file mode 100644
index 00000000..9536a8b8
--- /dev/null
+++ b/schemas/schemas/master_schemas/contract_code_schema.json
@@ -0,0 +1,107 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "contract_code_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_code_ext_v",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_key_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_functions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_globals",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_table_entries",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_types",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_data_segments",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_elem_segments",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_imports",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_exports",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n_data_segment_bytes",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/contract_data_schema.json b/schemas/schemas/master_schemas/contract_data_schema.json
new file mode 100644
index 00000000..9b0c0d39
--- /dev/null
+++ b/schemas/schemas/master_schemas/contract_data_schema.json
@@ -0,0 +1,112 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "contract_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_key_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_durability",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance_holder",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_key_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "key",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "key_decoded",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "val",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "val_decoded",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_data_xdr",
+    "type": "STRING"
+  }
+]
diff --git a/schemas/schemas/master_schemas/dimAccounts_schema.json b/schemas/schemas/master_schemas/dimAccounts_schema.json
new file mode 100644
index 00000000..67c848ff
--- /dev/null
+++ b/schemas/schemas/master_schemas/dimAccounts_schema.json
@@ -0,0 +1,12 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_id",
+    "type": "FLOAT"
+  }
+]
diff --git a/schemas/schemas/master_schemas/dimMarkets_schema.json b/schemas/schemas/master_schemas/dimMarkets_schema.json
new file mode 100644
index 00000000..b606bd40
--- /dev/null
+++ b/schemas/schemas/master_schemas/dimMarkets_schema.json
@@ -0,0 +1,27 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "counter_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "counter_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "market_id",
+    "type": "FLOAT"
+  }
+]
diff --git a/schemas/schemas/master_schemas/dimOffers_schema.json b/schemas/schemas/master_schemas/dimOffers_schema.json
new file mode 100644
index 00000000..63b4e757
--- /dev/null
+++ b/schemas/schemas/master_schemas/dimOffers_schema.json
@@ -0,0 +1,42 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "price",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "action",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "counter_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "maker_id",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "dim_offer_id",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "market_id",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "horizon_offer_id",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/enriched_history_operations_schema.json b/schemas/schemas/master_schemas/enriched_history_operations_schema.json
new file mode 100644
index 00000000..ccdae4da
--- /dev/null
+++ b/schemas/schemas/master_schemas/enriched_history_operations_schema.json
@@ -0,0 +1,1354 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_account_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "authorize",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "claimant",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "claimant_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "claimant_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "destination",
+        "type": "STRING"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "unconditional",
+            "type": "BOOLEAN"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "rel_before",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before_epoch",
+            "type": "INTEGER"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "and",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "not",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "or",
+            "type": "RECORD"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "predicate",
+        "type": "RECORD"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "claimants",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "data_account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "data_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "from",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "from_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "from_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "funder",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "funder_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "funder_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "high_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "home_domain",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inflation_dest",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "into",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "into_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "into_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "limit",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "low_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "master_key_weight",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "med_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "path",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "d",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "set_flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "set_flags_s",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer_account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer_key",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer_weight",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_max",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "starting_balance",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "to",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "to_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "to_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustee",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustee_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustee_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustor_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustor_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustline_account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustline_asset",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "value",
+    "type": "STRING"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "clear_flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "clear_flags_s",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "destination_min",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "bump_to",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsored_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "begin_sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "begin_sponsor_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "begin_sponsor_muxed_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "authorize_to_maintain_liabilities",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "clawback_enabled",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_max_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_deposit_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_max_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_deposit_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_price",
+    "type": "FLOAT"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "d",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "n",
+        "type": "INTEGER"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "min_price_r",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_price",
+    "type": "FLOAT"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "d",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "n",
+        "type": "INTEGER"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "max_price_r",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "shares_received",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_min_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_min_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "shares",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_withdraw_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_withdraw_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_source_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_source_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type_string",
+    "type": "string"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_created_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "time_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "new_max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "previous_ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "total_coins",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_pool",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_reserve",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_tx_set_size",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "protocol_version",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "failed_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_age",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_ledger_gap",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "extra_signers",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_envelope",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_result",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_meta",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_fee_meta",
+    "type": "STRING"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "from",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "to",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "asset_balance_changes",
+    "type": "RECORD"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "parameters",
+    "type": "RECORD"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "parameters_decoded",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "function",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_operation_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "extend_to",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_code_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "resource_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_read_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_write_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_result_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inclusion_fee_bid",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inclusion_fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "resource_fee_refund",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_result_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_trace_code",
+    "type": "STRING"
+  }
+]
diff --git a/schemas/schemas/master_schemas/enriched_meaningful_history_operations_schema.json b/schemas/schemas/master_schemas/enriched_meaningful_history_operations_schema.json
new file mode 100644
index 00000000..ce92f39a
--- /dev/null
+++ b/schemas/schemas/master_schemas/enriched_meaningful_history_operations_schema.json
@@ -0,0 +1,794 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "authorize",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "from",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "funder",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "high_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "home_domain",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inflation_dest",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "into",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "limit",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "low_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "master_key_weight",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "med_threshold",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "path",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "d",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "n",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "set_flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "set_flags_s",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer_key",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signer_weight",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_max",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "starting_balance",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "to",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustee",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustline_asset",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "value",
+    "type": "STRING"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "clear_flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "clear_flags_s",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "destination_min",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "bump_to",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsored_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "begin_sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "authorize_to_maintain_liabilities",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "clawback_enabled",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_max_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_deposit_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_max_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_deposit_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_price",
+    "type": "FLOAT"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "d",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "n",
+        "type": "INTEGER"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "min_price_r",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_price",
+    "type": "FLOAT"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "d",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "n",
+        "type": "INTEGER"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "max_price_r",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "shares_received",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_min_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_min_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "shares",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_a_withdraw_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "reserve_b_withdraw_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_source_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "op_source_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "txn_created_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "time_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "new_max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "previous_ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "total_coins",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_pool",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_reserve",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_tx_set_size",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "protocol_version",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "failed_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_age",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_ledger_gap",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "extra_signers",
+    "type": "STRING"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "from",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "to",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "asset_balance_changes",
+    "type": "RECORD"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "parameters",
+    "type": "RECORD"
+  },
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      }
+    ],
+    "mode": "REPEATED",
+    "name": "parameters_decoded",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "function",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_operation_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "extend_to",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_code_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "resource_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_read_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_write_bytes",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/euro_ohlc_schema.json b/schemas/schemas/master_schemas/euro_ohlc_schema.json
new file mode 100644
index 00000000..2a4adf00
--- /dev/null
+++ b/schemas/schemas/master_schemas/euro_ohlc_schema.json
@@ -0,0 +1,27 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "time",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "open",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "high",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "low",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "close",
+    "type": "FLOAT"
+  }
+]
diff --git a/schemas/schemas/master_schemas/factEvents_schema.json b/schemas/schemas/master_schemas/factEvents_schema.json
new file mode 100644
index 00000000..81b90afe
--- /dev/null
+++ b/schemas/schemas/master_schemas/factEvents_schema.json
@@ -0,0 +1,12 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "offer_instance_id",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_id",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/history_assets_schema.json b/schemas/schemas/master_schemas/history_assets_schema.json
new file mode 100644
index 00000000..c6576a96
--- /dev/null
+++ b/schemas/schemas/master_schemas/history_assets_schema.json
@@ -0,0 +1,47 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  }
+]
diff --git a/schemas/schemas/master_schemas/history_contract_events_schema.json b/schemas/schemas/master_schemas/history_contract_events_schema.json
new file mode 100644
index 00000000..77e2eb4f
--- /dev/null
+++ b/schemas/schemas/master_schemas/history_contract_events_schema.json
@@ -0,0 +1,87 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "in_successful_contract_call",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type_string",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "topics",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "topics_decoded",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "data",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "data_decoded",
+    "type": "JSON"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "contract_event_xdr",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/history_effects_schema.json b/schemas/schemas/master_schemas/history_effects_schema.json
new file mode 100644
index 00000000..0cb0d195
--- /dev/null
+++ b/schemas/schemas/master_schemas/history_effects_schema.json
@@ -0,0 +1,878 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "address_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type_string",
+    "type": "STRING"
+  },
+  {
+    "fields": [
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "fee_bp",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "id",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "total_shares",
+            "type": "NUMERIC"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "total_trustlines",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "type",
+            "type": "STRING"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "asset",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "amount",
+                "type": "NUMERIC"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "reserves",
+            "type": "RECORD"
+          }
+        ],
+        "mode": "NULLABLE",
+        "name": "liquidity_pool",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "NUMERIC"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "reserves_received",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "NUMERIC"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "reserves_deposited",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "NUMERIC"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "claimable_balance_id",
+            "type": "STRING"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "reserves_revoked",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "NUMERIC"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "bought",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "NUMERIC"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "sold",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "shares_revoked",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "shares_received",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "shares_redeemed",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "liquidity_pool_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "balance_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "new_seq",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "name",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "limit",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "inflation_destination",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "authorized_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "auth_immutable_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "authorized_to_maintain_liabilites",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "auth_revocable_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "auth_required_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "auth_clawback_enabled_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "claimable_balance_clawback_enabled_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "clawback_enabled_flag",
+        "type": "BOOL"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "high_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "med_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "low_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "home_domain",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "signer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sponsor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "new_sponsor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "former_sponsor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "weight",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "public_key",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "amount",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "starting_balance",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "seller",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "seller_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "seller_muxed_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "offer_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sold_amount",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sold_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sold_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sold_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "bought_amount",
+        "type": "NUMERIC"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "bought_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "bought_asset_code",
+        "type": "STRING"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "type",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "unconditional",
+            "type": "BOOLEAN"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "rel_before",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "abs_before_epoch",
+            "type": "INTEGER"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "or",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "and",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "not",
+            "type": "RECORD"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "or",
+            "type": "RECORD"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "predicate",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "data_name",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "bought_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "entries",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "extend_to",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "contract",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "contract_event_type",
+        "type": "STRING"
+      }
+    ],
+    "mode": "NULLABLE",
+    "name": "details",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "index",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "id",
+    "type": "STRING"
+  }
+]
diff --git a/schemas/schemas/master_schemas/history_ledgers_schema.json b/schemas/schemas/master_schemas/history_ledgers_schema.json
new file mode 100644
index 00000000..1bc7cf9b
--- /dev/null
+++ b/schemas/schemas/master_schemas/history_ledgers_schema.json
@@ -0,0 +1,122 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "previous_ledger_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "total_coins",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_pool",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "base_reserve",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_tx_set_size",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "protocol_version",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_header",
+    "type": "BYTES"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "failed_transaction_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_set_operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_fee_write_1kb",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "node_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "signature",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "total_byte_size_of_bucket_list",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/history_operations_schema.json b/schemas/schemas/master_schemas/history_operations_schema.json
new file mode 100644
index 00000000..09ff1ee6
--- /dev/null
+++ b/schemas/schemas/master_schemas/history_operations_schema.json
@@ -0,0 +1,1185 @@
+[
+  {
+    "fields": [
+      {
+        "mode": "NULLABLE",
+        "name": "account",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "account_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "account_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "account_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "authorize",
+        "type": "BOOLEAN"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "balance_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "buying_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "buying_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "buying_asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "buying_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "claimable_balance_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "claimant",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "claimant_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "claimant_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "destination",
+            "type": "STRING"
+          },
+          {
+            "fields": [
+              {
+                "mode": "NULLABLE",
+                "name": "unconditional",
+                "type": "BOOLEAN"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before",
+                "type": "STRING"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "rel_before",
+                "type": "INTEGER"
+              },
+              {
+                "mode": "NULLABLE",
+                "name": "abs_before_epoch",
+                "type": "INTEGER"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "fields": [
+                          {
+                            "mode": "NULLABLE",
+                            "name": "abs_before",
+                            "type": "STRING"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "rel_before",
+                            "type": "INTEGER"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "unconditional",
+                            "type": "BOOLEAN"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "abs_before_epoch",
+                            "type": "INTEGER"
+                          }
+                        ],
+                        "mode": "REPEATED",
+                        "name": "or",
+                        "type": "RECORD"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "or",
+                    "type": "RECORD"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "and",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "and",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "and",
+                    "type": "RECORD"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "or",
+                    "type": "RECORD"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "not",
+                "type": "RECORD"
+              },
+              {
+                "fields": [
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before",
+                    "type": "STRING"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "rel_before",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "abs_before_epoch",
+                    "type": "INTEGER"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "not",
+                    "type": "RECORD"
+                  },
+                  {
+                    "mode": "NULLABLE",
+                    "name": "unconditional",
+                    "type": "BOOLEAN"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "or",
+                    "type": "RECORD"
+                  },
+                  {
+                    "fields": [
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before",
+                        "type": "STRING"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "rel_before",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "unconditional",
+                        "type": "BOOLEAN"
+                      },
+                      {
+                        "mode": "NULLABLE",
+                        "name": "abs_before_epoch",
+                        "type": "INTEGER"
+                      },
+                      {
+                        "fields": [
+                          {
+                            "mode": "NULLABLE",
+                            "name": "abs_before",
+                            "type": "STRING"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "rel_before",
+                            "type": "INTEGER"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "unconditional",
+                            "type": "BOOLEAN"
+                          },
+                          {
+                            "mode": "NULLABLE",
+                            "name": "abs_before_epoch",
+                            "type": "INTEGER"
+                          }
+                        ],
+                        "mode": "REPEATED",
+                        "name": "not",
+                        "type": "RECORD"
+                      }
+                    ],
+                    "mode": "REPEATED",
+                    "name": "and",
+                    "type": "RECORD"
+                  }
+                ],
+                "mode": "REPEATED",
+                "name": "or",
+                "type": "RECORD"
+              }
+            ],
+            "mode": "REPEATED",
+            "name": "predicate",
+            "type": "RECORD"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "claimants",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "data_account_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "data_name",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "from",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "from_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "from_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "funder",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "funder_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "funder_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "high_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "home_domain",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "inflation_dest",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "into",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "into_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "into_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "limit",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "low_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "master_key_weight",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "med_threshold",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "name",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "offer_id",
+        "type": "INTEGER"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "asset_code",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "asset_issuer",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "asset_type",
+            "type": "STRING"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "path",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "price",
+        "type": "FLOAT"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "d",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "n",
+            "type": "INTEGER"
+          }
+        ],
+        "mode": "NULLABLE",
+        "name": "price_r",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "selling_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "selling_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "selling_asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "selling_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "set_flags",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "set_flags_s",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "signer_account_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "signer_key",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "signer_weight",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "source_max",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "starting_balance",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "to",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "to_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "to_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustee",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustee_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustee_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustline_account_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustline_asset",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustor_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "trustor_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "value",
+        "type": "STRING"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "clear_flags",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "clear_flags_s",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "destination_min",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "bump_to",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "authorize_to_maintain_liabilities",
+        "type": "BOOLEAN"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "clawback_enabled",
+        "type": "BOOLEAN"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sponsor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "sponsored_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "begin_sponsor",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "begin_sponsor_muxed",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "begin_sponsor_muxed_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "liquidity_pool_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_max_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_deposit_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_asset_type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_asset_code",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_asset_issuer",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_asset_id",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_max_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_deposit_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "min_price",
+        "type": "FLOAT"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "d",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "n",
+            "type": "INTEGER"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "min_price_r",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "max_price",
+        "type": "FLOAT"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "d",
+            "type": "INTEGER"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "n",
+            "type": "INTEGER"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "max_price_r",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "shares_received",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_min_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_a_withdraw_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_min_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "reserve_b_withdraw_amount",
+        "type": "FLOAT"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "shares",
+        "type": "FLOAT"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "amount",
+            "type": "FLOAT"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "asset_code",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "asset_issuer",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "asset_type",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "from",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "to",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "type",
+            "type": "STRING"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "asset_balance_changes",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "type",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "value",
+            "type": "STRING"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "parameters",
+        "type": "RECORD"
+      },
+      {
+        "fields": [
+          {
+            "mode": "NULLABLE",
+            "name": "type",
+            "type": "STRING"
+          },
+          {
+            "mode": "NULLABLE",
+            "name": "value",
+            "type": "STRING"
+          }
+        ],
+        "mode": "REPEATED",
+        "name": "parameters_decoded",
+        "type": "RECORD"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "function",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "address",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "type",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "extend_to",
+        "type": "INTEGER"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "contract_id",
+        "type": "STRING"
+      },
+      {
+        "mode": "NULLABLE",
+        "name": "contract_code_hash",
+        "type": "STRING"
+      },
+      {
+        "mode": "REPEATED",
+        "name": "ledger_key_hash",
+        "type": "STRING"
+      }
+    ],
+    "mode": "NULLABLE",
+    "name": "details",
+    "type": "RECORD"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "source_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type_string",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_result_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_trace_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "details_json",
+    "type": "JSON"
+  }
+]
diff --git a/schemas/schemas/master_schemas/history_trades_schema.json b/schemas/schemas/master_schemas/history_trades_schema.json
new file mode 100644
index 00000000..494d1893
--- /dev/null
+++ b/schemas/schemas/master_schemas/history_trades_schema.json
@@ -0,0 +1,137 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "history_operation_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "order",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_account_address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_account_address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price_n",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price_d",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trade_type",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rounding_slippage",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "seller_is_exact",
+    "type": "BOOLEAN"
+  }
+]
diff --git a/schemas/schemas/master_schemas/history_transactions_schema.json b/schemas/schemas/master_schemas/history_transactions_schema.json
new file mode 100644
index 00000000..809523f2
--- /dev/null
+++ b/schemas/schemas/master_schemas/history_transactions_schema.json
@@ -0,0 +1,217 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "operation_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "created_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "memo",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "time_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "successful",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inner_transaction_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "new_max_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee_account_muxed",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_bounds",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_age",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "min_account_sequence_ledger_gap",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_envelope",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_result",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_meta",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tx_fee_meta",
+    "type": "STRING"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "extra_signers",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "resource_fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_instructions",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_read_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "soroban_resources_write_bytes",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_result_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inclusion_fee_bid",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "inclusion_fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "resource_fee_refund",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "non_refundable_resource_fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "refundable_resource_fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rent_fee_charged",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "REPEATED",
+    "name": "tx_signers",
+    "type": "STRING"
+  }
+]
diff --git a/schemas/schemas/master_schemas/liquidity_pools_schema.json b/schemas/schemas/master_schemas/liquidity_pools_schema.json
new file mode 100644
index 00000000..6861eccb
--- /dev/null
+++ b/schemas/schemas/master_schemas/liquidity_pools_schema.json
@@ -0,0 +1,117 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "fee",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trustline_count",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "pool_share_count",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_a_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_a_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_a_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_a_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_a_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_b_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_b_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_b_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_b_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_b_amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/offers_schema.json b/schemas/schemas/master_schemas/offers_schema.json
new file mode 100644
index 00000000..e5104ca0
--- /dev/null
+++ b/schemas/schemas/master_schemas/offers_schema.json
@@ -0,0 +1,122 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "seller_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "pricen",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "priced",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/raw_mgi_stellar_transactions_schema.json b/schemas/schemas/master_schemas/raw_mgi_stellar_transactions_schema.json
new file mode 100644
index 00000000..c06ed31a
--- /dev/null
+++ b/schemas/schemas/master_schemas/raw_mgi_stellar_transactions_schema.json
@@ -0,0 +1,202 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "src_tran_ref_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "created_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "updated_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_status",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_cntry_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rec_cntry_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_crncy_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rec_crncy_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_face_USD_amt",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_face_tran_crncy_amt",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_fee_tran_amt",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rec_face_tran_crncy_amt",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_partner_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "receive_partner_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tran_resource_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tran_hash_text",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "dgt_aset_tran_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "wallet_address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "promo_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_phys_line1_addr",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_phys_line2_addr",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_phys_city_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_phys_state_prov_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_phys_postal_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_cntry_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_phys_line1_addr",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_phys_line2_addr",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_phys_city_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_phys_state_prov_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_phys_postal_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_cntry_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_hq_pty_nbr",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_hq_pty_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_pty_nbr",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_displ_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_hq_pty_nbr",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_hq_pty_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_pty_nbr",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_displ_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "cancellation_reas",
+    "type": "STRING"
+  }
+]
diff --git a/schemas/schemas/master_schemas/trust_lines_schema.json b/schemas/schemas/master_schemas/trust_lines_schema.json
new file mode 100644
index 00000000..1502d701
--- /dev/null
+++ b/schemas/schemas/master_schemas/trust_lines_schema.json
@@ -0,0 +1,107 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_key",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trust_line_limit",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_liabilities",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_liabilities",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/master_schemas/ttl_schema.json b/schemas/schemas/master_schemas/ttl_schema.json
new file mode 100644
index 00000000..f129bb90
--- /dev/null
+++ b/schemas/schemas/master_schemas/ttl_schema.json
@@ -0,0 +1,52 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "key_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "live_until_ledger_seq",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/offers_schema.json b/schemas/schemas/offers_schema.json
new file mode 100644
index 00000000..e5104ca0
--- /dev/null
+++ b/schemas/schemas/offers_schema.json
@@ -0,0 +1,122 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "seller_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "offer_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "amount",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "pricen",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "priced",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "price",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/raw_mgi_stellar_transactions_schema.json b/schemas/schemas/raw_mgi_stellar_transactions_schema.json
new file mode 100644
index 00000000..c06ed31a
--- /dev/null
+++ b/schemas/schemas/raw_mgi_stellar_transactions_schema.json
@@ -0,0 +1,202 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "src_tran_ref_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "created_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "updated_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "transaction_status",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_cntry_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rec_cntry_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_crncy_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rec_crncy_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_face_USD_amt",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_face_tran_crncy_amt",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_fee_tran_amt",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "rec_face_tran_crncy_amt",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "send_partner_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "receive_partner_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tran_resource_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "tran_hash_text",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "dgt_aset_tran_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "wallet_address",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "promo_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_phys_line1_addr",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_phys_line2_addr",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_phys_city_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_phys_state_prov_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_phys_postal_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_cntry_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_phys_line1_addr",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_phys_line2_addr",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_phys_city_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_phys_state_prov_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_phys_postal_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_cntry_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_hq_pty_nbr",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_hq_pty_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_pty_nbr",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_sen_displ_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_hq_pty_nbr",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_hq_pty_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_pty_nbr",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "partnr_rec_displ_name",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "cancellation_reas",
+    "type": "STRING"
+  }
+]
diff --git a/schemas/schemas/trust_lines_schema.json b/schemas/schemas/trust_lines_schema.json
new file mode 100644
index 00000000..1502d701
--- /dev/null
+++ b/schemas/schemas/trust_lines_schema.json
@@ -0,0 +1,107 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_key",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "account_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_type",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_issuer",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_code",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "asset_id",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "liquidity_pool_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "balance",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "trust_line_limit",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "buying_liabilities",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "selling_liabilities",
+    "type": "FLOAT"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "flags",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "sponsor",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]
diff --git a/schemas/schemas/ttl_schema.json b/schemas/schemas/ttl_schema.json
new file mode 100644
index 00000000..f129bb90
--- /dev/null
+++ b/schemas/schemas/ttl_schema.json
@@ -0,0 +1,52 @@
+[
+  {
+    "mode": "NULLABLE",
+    "name": "key_hash",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "live_until_ledger_seq",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "last_modified_ledger",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_entry_change",
+    "type": "INTEGER"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "deleted",
+    "type": "BOOLEAN"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_id",
+    "type": "STRING"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_run_date",
+    "type": "DATETIME"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "batch_insert_ts",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "closed_at",
+    "type": "TIMESTAMP"
+  },
+  {
+    "mode": "NULLABLE",
+    "name": "ledger_sequence",
+    "type": "INTEGER"
+  }
+]