Rivery · Schema

RiverVersions

River Versions properties to return.

Data IntegrationELTCloudLow-CodeBoomi

Properties

Name Type Description
account_id string The account id of the river version
user_info object Contains user name and user email information
environment_id string The environment id of the river version
insert_date string The insert date time of the river version in UTC timezone
version_id string The version id of the river version
previous_version object The previous version id of the river version
created_by string The creator id of the river version
river_id string The river id of the river version
restored_by object The restore id of the river version
restore_date object The restore date time of the river version in UTC timezone
name object Name of river version
bookmarked boolean Flag indicating whether the river version is bookmarked or not
river object The definition of the river version
View JSON Schema on GitHub

JSON Schema

rivery-river-versions-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/rivery/main/json-schema/rivery-river-versions-schema.json",
  "title": "RiverVersions",
  "description": "River Versions properties to return.\n    ",
  "x-generated": "2026-10-03",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/rivery-openapi.json#/components/schemas/RiverVersions",
  "properties": {
    "account_id": {
      "type": "string",
      "title": "Account Id",
      "description": "The account id of the river version"
    },
    "user_info": {
      "anyOf": [
        {
          "$ref": "#/$defs/UserInfo"
        },
        {
          "type": "null"
        }
      ],
      "description": "Contains user name and user email information"
    },
    "environment_id": {
      "type": "string",
      "title": "Environment Id",
      "description": "The environment id of the river version"
    },
    "insert_date": {
      "type": "string",
      "format": "date-time",
      "title": "Insert Date",
      "description": "The insert date time of the river version in UTC timezone"
    },
    "version_id": {
      "type": "string",
      "title": "Version Id",
      "description": "The version id of the river version"
    },
    "previous_version": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Previous Version",
      "description": "The previous version id of the river version"
    },
    "created_by": {
      "type": "string",
      "title": "Created By",
      "description": "The creator id of the river version"
    },
    "river_id": {
      "type": "string",
      "title": "River Id",
      "description": "The river id of the river version"
    },
    "restored_by": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Restored By",
      "description": "The restore id of the river version"
    },
    "restore_date": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Restore Date",
      "description": "The restore date time of the river version in UTC timezone"
    },
    "name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Name",
      "description": "Name of river version"
    },
    "bookmarked": {
      "type": "boolean",
      "title": "Bookmarked",
      "description": "Flag indicating whether the river version is bookmarked or not",
      "default": false
    },
    "river": {
      "anyOf": [
        {
          "$ref": "#/$defs/LegacyRiverResponse"
        },
        {
          "$ref": "#/$defs/RiverModel"
        }
      ],
      "title": "River",
      "description": "The definition of the river version"
    }
  },
  "type": "object",
  "required": [
    "account_id",
    "environment_id",
    "insert_date",
    "version_id",
    "created_by",
    "river_id",
    "river"
  ],
  "$defs": {
    "ActionProperties": {
      "properties": {
        "properties_type": {
          "const": "actions",
          "title": "Properties Type",
          "default": "actions"
        }
      },
      "additionalProperties": false,
      "type": "object",
      "title": "ActionProperties",
      "description": "Action properties which define the action river properties"
    },
    "ActionStep": {
      "properties": {
        "name": {
          "type": "string",
          "title": "Name"
        },
        "is_enabled": {
          "type": "boolean",
          "title": "Is Enabled",
          "description": "A flag that indicates whether the step is enabled or not",
          "default": true
        },
        "step_id": {
          "type": "string",
          "title": "Step Id",
          "description": "The step id"
        },
        "disable_errors": {
          "type": "boolean",
          "title": "Disable Errors",
          "description": "A flag that indicates whether to disable errors or not",
          "default": false
        },
        "type": {
          "const": "action",
          "title": "Type"
        },
        "action_id": {
          "type": "string",
          "title": "Action Id"
        },
        "input_variables": {
          "type": "object",
          "title": "Input Variables"
        },
        "output_variables": {
          "type": "object",
          "title": "Output Variables"
        },
        "interval_variables": {
          "type": "object",
          "title": "Interval Variables"
        },
        "connection_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Connection Id",
          "description": "The action connection id"
        }
      },
      "type": "object",
      "required": [
        "name",
        "type",
        "action_id"
      ],
      "title": "ActionStep",
      "description": "Action step schema"
    },
    "AthenaModifiedColumn": {
      "properties": {
        "is_selected": {
          "type": "boolean",
          "title": "Is Selected",
          "description": "If the column is selected and should be modified."
        },
        "name": {
          "type": "string",
          "title": "Name",
          "description": "The name of the column."
        },
        "type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Type",
          "description": "The type of the column."
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Alias",
          "description": "The alias of the column in the target table."
        },
        "expression": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Expression",
          "description": "This tells us the column is an expression or not so we know if it suppose to exist in the source / target or is it auto generated."
        },
        "is_key": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Is Key",
          "description": "If the column is a key."
        },
        "cluster_key": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Cluster Key",
          "description": "The sort order of the column (number) in the cluster, used in the merge process to determine the order of the merge keys."
        },
        "calculated_column_mode": {
          "anyOf": [
            {
              "$ref": "#/$defs/CalculatedColumnModeEnum"
            },
            {
              "type": "null"
            }
          ],
          "description": "The mode of the calculated column.Help to identify if the column is source expression or target expression,required if the column is an expression."
        },
        "order": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Order",
          "description": "The order of the column in the expression,required if the column is an expression."
        },
        "mode": {
          "anyOf": [
            {
              "$ref": "#/$defs/ColumnModeEnum"
            },
            {
              "type": "null"
            }
          ],
          "description": "The mode of the column in the target table"
        },
        "is_rivery_metadata": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Is Rivery Metadata",
          "description": "Whether the column includes rivery metadata"
        },
        "is_partition": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Is Partition",
          "description": "Indication if the column is a partition column",
          "default": false
        },
        "target_type": {
          "const": "athena",
          "title": "Target Type",
          "description": "Internal field, populated automatically",
          "default": "athena"
        },
        "bucket": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bucket",
          "description": "If the column is a partition column in the target table"
        }
      },
      "additionalProperties": false,
      "type": "object",
      "required": [
        "is_selected",
        "name"
      ],
      "title": "AthenaModifiedColumn",
      "description": "Athena specific columns settings"
    },
    "AthenaNoPartitionProperties": {
      "properties": {
        "partition_by": {
          "const": "none",
          "title": "Partition By"
        }
      },
      "type": "object",
      "required": [
        "partition_by"
      ],
      "title": "AthenaNoPartitionProperties",
      "description": "Athena No Partition Properties Schema"
    },
    "AthenaPartitionByDateProperties": {
      "properties": {
        "partition_by": {
          "const": "date",
          "title": "Partition By"
        },
        "partition_granularity": {
          "type": "string",
          "enum": [
            "DAY",
            "MONTH",
            "YEAR"
          ],
          "title": "Partition Granularity"
        }
      },
      "type": "object",
      "required": [
        "partition_by",
        "partition_granularity"
      ],
      "title": "AthenaPartitionByDateProperties",
      "description": "Athena Partition By Date Properties Schema"
    },
    "AthenaPartitionByTimestampProperties": {
      "properties": {
        "partition_by": {
          "const": "timestamp",
          "title": "Partition By"
        },
        "partition_granularity": {
          "type": "string",
          "enum": [
            "HOUR",
            "DAY",
            "MONTH",
            "YEAR"
          ],
          "title": "Partition Granularity"
        }
      },
      "type": "object",
      "required": [
        "partition_by",
        "partition_granularity"
      ],
      "title": "AthenaPartitionByTimestampProperties",
      "description": "Athena Partition By Timestamp Properties Schema"
    },
    "AthenaSqlQueryStep": {
      "properties": {
        "name": {
          "type": "string",
          "title": "Name"
        },
        "is_enabled": {
          "type": "boolean",
          "title": "Is Enabled",
          "description": "A flag that indicates whether the step is enabled or not",
          "default": true
        },
        "step_id": {
          "type": "string",
          "title": "Step Id",
          "description": "The step id"
        },
        "disable_errors": {
          "type": "boolean",
          "title": "Disable Errors",
          "description": "A flag that indicates whether to disable errors or not",
          "default": false
        },
        "connection_id": {
          "type": "string",
          "title": "Connection Id"
        },
        "sql_query": {
          "type": "string",
          "title": "Sql Query"
        },
        "type": {
          "const": "athena_sql_query",
          "title": "Type"
        },
        "target_settings": {
          "oneOf": [
            {
              "$ref": "#/$defs/AthenaTargetTableProperties"
            },
            {
              "$ref": "#/$defs/TargetVariableProperties"
            }
          ],
          "title": "Target Settings"
        }
      },
      "type": "object",
      "required": [
        "name",
        "sql_query",
        "type",
        "target_settings",
        "connection_id"
      ],
      "title": "AthenaSqlQueryStep",
      "description": "Athena SQL Query Step Schema"
    },
    "AthenaSqlScriptStep": {
      "properties": {
        "name": {
          "type": "string",
          "title": "Name"
        },
        "is_enabled": {
          "type": "boolean",
          "title": "Is Enabled",
          "description": "A flag that indicates whether the step is enabled or not",
          "default": true
        },
        "step_id": {
          "type": "string",
          "title": "Step Id",
          "description": "The step id"
        },
        "disable_errors": {
          "type": "boolean",
          "title": "Disable Errors",
          "description": "A flag that indicates whether to disable errors or not",
          "default": false
        },
        "connection_id": {
          "type": "string",
          "title": "Connection Id"
        },
        "sql_query": {
          "type": "string",
          "title": "Sql Query"
        },
        "type": {
          "const": "athena_sql_script",
          "title": "Type"
        }
      },
      "type": "object",
      "required": [
        "name",
        "sql_query",
        "type",
        "connection_id"
      ],
      "title": "AthenaSqlScriptStep",
      "description": "Athena SQL Script Step Schema"
    },
    "AthenaTableAdditionalTargetSettings": {
      "properties": {
        "is_ordered_merge_key": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Is Ordered Merge Key",
          "description": "If the table got any and should consider filter out duplicates data between source filemerge process(by order).",
          "default": false
        },
        "order_expression": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Order Expression",
          "description": "The order expression of the river entity,to filter duplications from the source data by the provided order expression (for `merge` loading method)."
        },
        "target_loading": {
          "anyOf": [
            {
              "$ref": "#/$defs/LoadingMode"
            },
            {
              "type": "null"
            }
          ],
          "description": "The target loading of the table entity,if not specified the default loading mode of the riverwill be used."
        },
        "target_type": {
          "const": "athena",
          "title": "Target Type",
          "description": "Internal field, populated automatically",
          "default": "athena"
        }
      },
      "type": "object",
      "title": "AthenaTableAdditionalTargetSettings",
      "description": "Athena specific target settings"
    },
    "AthenaTargetSettings": {
      "properties": {
        "name": {
          "const": "athena",
          "title": "Name",
          "description": "The name of the target",
          "default": "athena"
        },
        "connection_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Connection Id",
          "description": "The connection ID of this target"
        },
        "connection_name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Connection Name",
          "description": "The connection name of this target"
        },
        "single_table_settings": {
          "anyOf": [
            {
              "$ref": "#/$defs/SingleTableSettings"
            },
            {
              "type": "null"
            }
          ],
          "description": "Single table specific settings for the target"
        },
        "table_name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Table Name",
          "description": "The table name of this target (only relevant for non multi table source to target rivers)",
          "default": ""
        },
        "target_prefix": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target Prefix",
          "description": "The table prefix of this target (only relevant for multi table source to target rivers)",
          "default": ""
        },
        "is_ordered_merge_key": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Is Ordered Merge Key",
          "description": "If the table got any and should consider filter out duplicates data between source filemerge process(by order).",
          "default": false
        },
        "order_expression": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Order Expression",
          "description": "The order expression of the river entity."
        },
        "loading_method": {
          "allOf": [
            {
              "$ref": "#/$defs/LoadingMode"
            }
          ],
          "description": "The loading method of this target"
        },
        "merge_method": {
          "anyOf": [
            {
              "$ref": "#/$defs/MergeMethod"
            },
            {
              "type": "null"
            }
          ],
          "description": "The merge method to preform,only relevant when the loading mode is Merge,if not provided the default merge method will be used.(merge)"
        },
        "file_zone_settings": {
          "anyOf": [
            {
              "$ref": "#/$defs/RiverFileZoneSettings"
            },
            {
              "type": "null"
            }
          ],
          "description": "The file zone settings of this target"
        },
        "file_path_destination": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "File Path Destination",
          "description": "The path to file"
        },
        "additional_settings": {
          "type": "object",
          "title": "Additional Settings",
          "description": "The additional settings of this target",
          "default": {}
        },
        "schema_name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Schema Name",
          "description": "The schema name of this target"
        },
        "bucket_name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bucket Name",
          "description": "The bucket name"
        },
        "replace_invalid_utf_characters": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Replace Invalid Utf Characters",
          "description": "Replace invalid utf-8 characters with Unicode replacement character"
        },
        "truncate_columns": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Truncate Columns",
          "description": "Cut varchar values which are longer than the column definition"
        }
      },
      "type": "object",
      "required": [
        "loading_method"
      ],
      "title": "AthenaTargetSettings",
      "description": "Athena target settings properties to return."
    },
    "AthenaTargetTableMergeSettings": {
      "properties": {
        "is_ordered_merge": {
          "type": "boolean",
          "title": "Is Ordered Merge",
          "description": "A flag that indicates whether the merge is ordered or not",
          "default": false
        },
        "order_expression": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Order Expression",
          "description": "The order expression"
        }
      },
      "type": "object",
      "title": "AthenaTargetTableMergeSettings",
      "description": "Athena Target Table Merge Settings Schema"
    },
    "AthenaTargetTableProperties": {
      "properties": {
        "target_type": {
          "const": "table",
          "title": "Target Type"
        },
        "table_name": {
          "type": "string",
          "title": "Table Name"
        },
        "drop_after": {
          "type": "boolean",
          "title": "Drop After",
          "description": "A flag that indicates whether to drop the table after the run or not",
          "default": false
        },
        "schema_name": {
          "type": "string",
          "title": "Schema Name"
        },
        "bucket_name": {
          "type": "string",
          "title": "Bucket Name"
        },
        "file_path": {
          "type": "string",
          "title": "File Path"
        },
        "loading_mode": {
          "type": "string",
          "enum": [
            "append_only",
            "overwrite",
            "upsert_merge"
          ],
          "title": "Loading Mode",
          "default": "append_only"
        },
        "merge_settings": {
          "anyOf": [
            {
              "$ref": "#/$defs/AthenaTargetTableMergeSettings"
            },
            {
              "type": "null"
            }
          ],
          "description": "The merge settings"
        },
        "fields": {
          "items": {
            "type": "object"
          },
          "type": "array",
          "title": "Fields",
          "description": "The mapping",
          "default": []
        },
        "partition_properties": {
          "oneOf": [
            {
              "$ref": "#/$defs/AthenaPartitionByTimestampProperties"
            },
            {
              "$ref": "#/$defs/AthenaPartitionByDateProperties"
            },
            {
              "$ref": "#/$defs/AthenaNoPartitionProperties"
            }
          ],
          "title": "Partition Properties"
        },
        "number_of_buckets": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Number Of Buckets",
          "description": "The number of buckets"
        }
      },
      "type": "object",
      "required": [
        "target_type",
        "table_name",
        "schema_name",
        "bucket_name",
        "file_path",
        "partition_properties"
      ],
      "title": "AthenaTargetTableProperties",
      "description": "Athena Target Table Properties Schema"
    },
    "AzureBlobModifiedColumn": {
      "properties": {
        "is_selected": {
          "type": "boolean",
          "title": "Is Selected",
          "description": "If the column is selected and should be modified."
        },
        "name": {
          "type": "string",
          "title": "Name",
          "description": "The name of the column."
        },
        "type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Type",
          "description": "The type of the column."
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Alias",
          "description": "The alias of the column in the target table."
        },
        "expression": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Expression",
          "description": "This tells us the column is an expression or not so we know if it suppose to exist in the source / target or is it auto generated."
        },
        "is_key": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Is Key",
          "description": "If the column is a key."
        },
        "cluster_key": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Cluster Key",
          "description": "The sort order of the column (number) in the cluster, used in the merge process to determine the order of the merge keys."
        },
        "calculated_column_mode": {
          "anyOf": [
            {
              "$ref": "#/$defs/CalculatedColumnModeEnum"
            },
            {
              "type": "null"
            }
          ],
          "description": "The mode of the calculated column.Help to identify if the column is source expression or target expression,required if the column is an expression."
        },
        "order": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Order",
          "description": "The order of the column in the expression,required if the column is an expression."
        },
        "mode": {
          "anyOf": [
            {
              "$ref": "#/$defs/ColumnModeEnum"
            },
            {
              "type": "null"
            }
          ],
          "description": "The mode of the column in the target table"
        },
        "is_rivery_metadata": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Is Rivery Metadata",
          "description": "Whether the column includes rivery metadata"
        },
        "target_type": {
          "const": "blob_storage",
          "title": "Target Type",
          "description": "Internal field, populated automatically",
          "default": "blob_storage"
        }
      },
      "additionalProperties": false,
      "type": "object",
      "required": [
        "is_selected",
        "name"
      ],
      "title": "AzureBlobModifiedColumn",
      "description": "Azure Blob specific columns settings"
    },
    "AzureSQLSqlQueryStep": {
      "properties": {
        "name": {
          "type": "string",
          "title": "Name"
        },
        "is_enabled": {
          "type": "boolean",
          "title": "Is Enabled",
          "description": "A flag that indicates whether the step is enabled or not",
          "default": true
        },
        "step_id": {
          "type": "string",
          "title": "Step Id",
          "description": "The step id"
        },
        "disable_errors": {
          "type": "boolean",
          "title": "Disable Errors",
          "description": "A flag that indicates whether to disable errors or not",
          "default": false
        },
        "connection_id": {
          "type": "string",
          "title": "Connection Id"
        },
        "sql_query": {
          "type": "string",
          "title": "Sql Query"
        },
        "type": {
          "const": "azure_sql_query",
          "title": "Type"
        },
        "target_settings": {
          "oneOf": [
            {
              "$ref": "#/$defs/TargetVariableProperties"
            },
            {
              "$ref": "#/$defs/AzureSQLTargetTableProperties"
            }
          ],
          "title": "Target Settings"
        }
      },
      "type": "object",
      "required": [
        "name",
        "sql_query",
        "type",
        "target_settings",
        "connection_id"
      ],
      "title": "AzureSQLSqlQueryStep",
      "description": "Azure SQL SQL Query Step Schema"
    },
    "AzureSQLSqlScriptStep": {
      "properties": {
        "name": {
          "type": "string",
          "title": "Name"
        },
        "is_enabled": {
          "type": "boolean",
          "title": "Is Enabled",
          "description": "A flag that indicates whether the step is enabled or not",
          "default": true
        },
        "step_id": {
          "type": "string",
          "title": "Step Id",
          "description": "The step id"
        },
        "disable_errors": {
          "type": "boolean",
          "title": "Disable Errors",
          "description": "A flag that indicates whether to disable errors or not",
          "default": false
        },
        "connection_id": {
          "type": "string",
          "title": "Connection Id"
        },
        "sql_query": {
          "type": "string",
          "title": "Sql Query"
        },
        "type": {
          "const": "azure_sql_script",
          "title": "Type"
        }
      },
      "type": "object",
      "required": [
        "name",
        "sql_query",
        "type",
        "connection_id"
      ],
      "title": "AzureSQLSqlScriptStep",
      "description": "Azure SQL SQL Script Step Schema"
    },
    "AzureSQLTargetTableMergeSettings": {
      "properties": {
        "is_ordered_merge": {
          "type": "boolean",
          "title": "Is Ordered Merge",
          "description": "A flag that indicates whether the merge is ordered or not",
          "default": false
        },
        "order_expression": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Order Expression",
          "description": "The order expression"
        },
        "merge_method": {
          "type": "string",
          "title": "Merge Method",
          "description": "The merge method",
          "default": "merge"
        }
      },
      "type": "object",
      "title": "AzureSQLTargetTableMergeSettings",
      "description": "Azure SQL Target Table Merge Settings Schema"
    },
    "AzureSQLTargetTableProperties": {
      "properties": {
        "target_type": {
          "const": "table",
          "title": "Target Type"
        },
        "table_name": {
          "type": "string",
          "title": "Table Name"
        },
        "drop_after": {
          "type": "boolean",
          "title": "Drop After",
          "description": "A flag that indicates whether to drop the table after the run or not",
          "default": false
        },
        "schema_name": {
          "type": "string",
          "title": "Schema Name",
          "description": "The schema name"
        },
        "loading_mode": {
          "type": "string",
          "enum": [
            "append_only",
            "overwrite",
            "upsert_merge"
          ],
          "title": "Loading Mode",
          "default": "append_only"
        },
        "merge_settings": {
          "anyOf": [
            {
              "$ref": "#/$defs/AzureSQLTargetTableMergeSettings"
            },
            {
              "type": "null"
            }
          ],
          "description": "The merge settings"
        },
        "fields": {
          "items": {
            "type": "object"
          },
          "type": "array",
          "title": "Fields",
          "description": "The mapping",
          "default": []
        }
      },
      "type": "object",
      "required": [
        "target_type",
        "table_name",
        "schema_name"
      ],
      "title": "AzureSQLTargetTableProperties",
      "description": "Azure SQL Target Table Properties S

# --- truncated at 32 KB (319 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/rivery/refs/heads/main/json-schema/rivery-river-versions-schema.json

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/rivery-river-versions"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.