changedInput schema / $schema
Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
removedInput schema / additionalProperties
Removed value: -false
changedInput schema / properties / disable / description
Previous value: -"Asset-manager addresses to switch off, as returned by read.asset_manager.current."New value: +"Asset-manager addresses to switch off, as returned by read_asset_manager_current."
removedInput schema / properties / enable / items / anyOf
Removed value: -[
- {
- "additionalProperties": false,
- "properties": {
- "enabled": {
- "default": true,
- "description": "False disables this intent's managers instead of enabling them.",
- "type": "boolean"
- },
- "kind": {
- "const": "compound_fees",
- "type": "string"
- },
- "position_id": {
- "description": "LP position (NFT) id this intent applies to. Also used to auto-fetch position context.",
- "type": "integer"
- },
- "tokens": {
- "description": "Which tokens' yield to reinvest. Omit for all yielding tokens. 'reward' only exists on a staked position whose reward token is not a pool token. Every yielding token must be assigned to either compound_fees or claim_rewards, so if you scope this to a subset you must add a claim_rewards intent covering the rest.",
- "items": {
- "enum": [
- "token0",
- "token1",
- "reward"
- ],
- "type": "string"
- },
- "type": "array"
- }
- },
- "required": [
- "kind"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "config": {
- "additionalProperties": false,
- "default": {},
- "properties": {
- "buy_token": {
- "description": "ERC20 to swap into. Required whenever any token is being converted. It cannot be a token you also compound, one of the tokens being converted, or a token folded by add_to_lp.",
- "type": "string"
- },
- "convert_tokens": {
- "description": "Subset of this intent's claimed tokens to swap to buy_token; the rest are claimed as-earned. Must be a subset of `tokens`. Omit to defer to mode (convert_to converts all claimed tokens, as_earned converts none). Use this for a partial convert, e.g. tokens: ['token0','reward'] with convert_tokens: ['reward'] swaps only the reward and claims token0 as-is.",
- "items": {
- "$ref": "#/properties/enable/items/anyOf/0/properties/tokens/items"
- },
- "type": "array"
- },
- "destination": {
- "default": "account",
- "description": "Payout target ('wallet' is the owner EOA). A wallet payout is only allowed for a pure as-earned claim: nothing converted, and every yielding token claimed. Any convert, or a claim scoped to a subset of tokens, must use 'account' because CowSwap settles there.",
- "enum": [
- "account",
- "wallet"
- ],
- "type": "string"
- },
- "mode": {
- "default": "as_earned",
- "description": "as_earned pays out the claimed tokens as-is; convert_to swaps them to buy_token via CowSwap. Use convert_tokens to convert only some of them.",
- "enum": [
- "as_earned",
- "convert_to"
- ],
- "type": "string"
- },
- "recipient": {
- "description": "Explicit payout address. Overrides destination when set, and is subject to the same pure-as-earned rule as a wallet payout unless it equals the account address.",
- "type": "string"
- },
- "tokens": {
- "description": "Which tokens' yield to claim out. Omit for all yielding tokens. A token cannot be both claimed and compounded, and every yielding token must be assigned to one of the two.",
- "items": {
- "$ref": "#/properties/enable/items/anyOf/0/properties/tokens/items"
- },
- "type": "array"
- }
- },
- "type": "object"
- },
- "enabled": {
- "$ref": "#/properties/enable/items/anyOf/0/properties/enabled"
- },
- "kind": {
- "const": "claim_rewards",
- "type": "string"
- },
- "position_id": {
- "$ref": "#/properties/enable/items/anyOf/0/properties/position_id"
- }
- },
- "required": [
- "kind"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "enabled": {
- "$ref": "#/properties/enable/items/anyOf/0/properties/enabled"
- },
- "kind": {
- "const": "add_to_lp",
- "type": "string"
- },
- "position_id": {
- "$ref": "#/properties/enable/items/anyOf/0/properties/position_id"
- },
- "tokens": {
- "description": "Which pool tokens' idle account balance to fold into the LP. Omit for both. Folding is opt-in per token, and a folded token cannot be the buy_token of a claim_rewards convert.",
- "items": {
- "enum": [
- "token0",
- "token1"
- ],
- "type": "string"
- },
- "type": "array"
- }
- },
- "required": [
- "kind"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "config": {
- "additionalProperties": false,
- "default": {},
- "properties": {
- "destination": {
- "default": "account",
- "enum": [
- "account",
- "wallet"
- ],
- "type": "string"
- },
- "reward_recipient": {
- "description": "Explicit recipient address. Overrides destination when set.",
- "type": "string"
- }
- },
- "type": "object"
- },
- "enabled": {
- "$ref": "#/properties/enable/items/anyOf/0/properties/enabled"
- },
- "kind": {
- "const": "claim_merkl",
- "type": "string"
- },
- "position_id": {
- "$ref": "#/properties/enable/items/anyOf/0/properties/position_id"
- }
- },
- "required": [
- "kind"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "enabled": {
- "$ref": "#/properties/enable/items/anyOf/0/properties/enabled"
- },
- "kind": {
- "const": "rebalance",
- "type": "string"
- },
- "max_tolerance": {
- "description": "Max price deviation (MEV/slippage cap), 1e18-scaled: 1e18 = 100%, so 5000000000000000 = 0.5% (the default) and 50000000000000000 = 5%. Omit for the pool's default. AAA pools are floored at 5%.",
- "maximum": 1000000000000000000,
- "minimum": 0,
- "type": "integer"
- },
- "min_liquidity_ratio": {
- "description": "Min fraction of liquidity that must survive a rebalance, 1e18-scaled: 990000000000000000 = 99% (the default), i.e. at most 1% value loss. Omit for the default.",
- "maximum": 1000000000000000000,
- "minimum": 0,
- "type": "integer"
- },
- "position_id": {
- "$ref": "#/properties/enable/items/anyOf/0/properties/position_id"
- },
- "strategy": {
- "anyOf": [
- {
- "additionalProperties": false,
- "properties": {
- "kind": {
- "const": "out_of_range",
- "type": "string"
- },
- "max_rebalance_time": {
- "default": 1000000000000,
- "description": "Seconds before a rebalance is forced. Default is effectively disabled.",
- "type": "integer"
- },
- "min_rebalance_time": {
- "default": 3600,
- "description": "Cooldown in seconds between rebalances.",
- "type": "integer"
- },
- "optimal_token0_ratio": {
- "default": 500000,
- "description": "Target token0 composition after a rebalance, 1e6-scaled: 500000 = 50% (balanced, the default), 750000 = 75% token0, 0 = all token1.",
- "maximum": 1000000,
- "minimum": 0,
- "type": "integer"
- },
- "trigger_lower_tick_ratio": {
- "default": 0,
- "description": "Offset from tick_lower as a fraction of the position's tick range, 1e6-scaled. This is TICK distance, not price: 50000 shifts the trigger by 5% of (tick_upper - tick_lower) ticks, which is not 5% of price. 0 = trigger exactly at the boundary. Positive (e.g. 50000) puts the trigger outside the position so price must travel further beyond the range before rebalancing. Negative (e.g. -50000) puts it inside, firing preemptively while price is still in range.",
- "type": "integer"
- },
- "trigger_upper_tick_ratio": {
- "default": 0,
- "description": "Same as trigger_lower_tick_ratio, for tick_upper. The two are independent, so asymmetric configs are valid (e.g. lower -50000, upper 0 rebalances early on the downside but only at the boundary on the upside).",
- "type": "integer"
- }
- },
- "required": [
- "kind"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "base_range": {
- "default": 50000,
- "type": "integer"
- },
- "deadzone": {
- "default": 20000,
- "type": "integer"
- },
- "fraction_excess_to_limit_order": {
- "default": 500000,
- "type": "integer"
- },
- "initial_range": {
- "default": 200000,
- "type": "integer"
- },
- "k1": {
- "default": 0,
- "type": "integer"
- },
- "k2": {
- "default": 0,
- "type": "integer"
- },
- "kind": {
- "const": "protocol_owned_liquidity",
- "type": "string"
- },
- "limit_order_withdrawal_threshold": {
- "default": 50000,
- "type": "integer"
- },
- "rebalance_threshold": {
- "default": 25000,
- "type": "integer"
- },
- "target_token0_ratio": {
- "default": 500000,
- "type": "integer"
- }
- },
- "required": [
- "kind"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "has_reversal": {
- "default": false,
- "type": "boolean"
- },
- "kind": {
- "const": "take_profit",
- "type": "string"
- },
- "profit_token": {
- "default": "token0",
- "enum": [
- "token0",
- "token1"
- ],
- "type": "string"
- },
- "reversal_reposition_mode": {
- "default": "",
- "enum": [
- "",
- "anchor_tick",
- "shift_range"
- ],
- "type": "string"
- },
- "reversal_trigger_threshold": {
- "default": 0,
- "type": "integer"
- },
- "reversal_trigger_type": {
- "default": "",
- "enum": [
- "",
- "fixed",
- "relative"
- ],
- "type": "string"
- },
- "take_profit_reposition_mode": {
- "default": "anchor_tick",
- "enum": [
- "",
- "anchor_tick",
- "shift_range"
- ],
- "type": "string"
- },
- "take_profit_trigger_threshold": {
- "default": 0,
- "type": "integer"
- },
- "take_profit_trigger_type": {
- "default": "fixed",
- "enum": [
- "",
- "fixed",
- "relative"
- ],
- "type": "string"
- }
- },
- "required": [
- "kind"
- ],
- "type": "object"
- }
- ],
- "default": {
- "kind": "out_of_range"
- },
- "description": "out_of_range repositions when price leaves the range; take_profit runs on the dedicated profit-taker contract; protocol_owned_liquidity is the POL strategy."
- }
- },
- "required": [
- "kind"
- ],
- "type": "object"
- }
-]
addedInput schema / properties / enable / items / oneOf
Added value: +[
+ {
+ "properties": {
+ "enabled": {
+ "default": true,
+ "description": "False disables this intent's managers instead of enabling them.",
+ "type": "boolean"
+ },
+ "kind": {
+ "const": "compound_fees",
+ "type": "string"
+ },
+ "position_id": {
+ "description": "LP position (NFT) id this intent applies to. Also used to auto-fetch position context.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "tokens": {
+ "description": "Which tokens' yield to reinvest. Omit for all yielding tokens. 'reward' only exists on a staked position whose reward token is not a pool token. Every yielding token must be assigned to either compound_fees or claim_rewards, so if you scope this to a subset you must add a claim_rewards intent covering the rest.",
+ "items": {
+ "enum": [
+ "token0",
+ "token1",
+ "reward"
+ ],
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "kind"
+ ],
+ "type": "object"
+ },
+ {
+ "properties": {
+ "config": {
+ "default": {},
+ "properties": {
+ "buy_token": {
+ "description": "ERC20 to swap into. Required whenever any token is being converted. It cannot be a token you also compound, one of the tokens being converted, or a token folded by add_to_lp.",
+ "type": "string"
+ },
+ "convert_tokens": {
+ "description": "Subset of this intent's claimed tokens to swap to buy_token; the rest are claimed as-earned. Must be a subset of `tokens`. Omit to defer to mode (convert_to converts all claimed tokens, as_earned converts none). Use this for a partial convert, e.g. tokens: ['token0','reward'] with convert_tokens: ['reward'] swaps only the reward and claims token0 as-is.",
+ "items": {
+ "enum": [
+ "token0",
+ "token1",
+ "reward"
+ ],
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "destination": {
+ "default": "account",
+ "description": "Payout target ('wallet' is the owner EOA). A wallet payout is only allowed for a pure as-earned claim: nothing converted, and every yielding token claimed. Any convert, or a claim scoped to a subset of tokens, must use 'account' because CowSwap settles there.",
+ "enum": [
+ "account",
+ "wallet"
+ ],
+ "type": "string"
+ },
+ "mode": {
+ "default": "as_earned",
+ "description": "as_earned pays out the claimed tokens as-is; convert_to swaps them to buy_token via CowSwap. Use convert_tokens to convert only some of them.",
+ "enum": [
+ "as_earned",
+ "convert_to"
+ ],
+ "type": "string"
+ },
+ "recipient": {
+ "description": "Explicit payout address. Overrides destination when set, and is subject to the same pure-as-earned rule as a wallet payout unless it equals the account address.",
+ "type": "string"
+ },
+ "tokens": {
+ "description": "Which tokens' yield to claim out. Omit for all yielding tokens. A token cannot be both claimed and compounded, and every yielding token must be assigned to one of the two.",
+ "items": {
+ "enum": [
+ "token0",
+ "token1",
+ "reward"
+ ],
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "enabled": {
+ "default": true,
+ "description": "False disables this intent's managers instead of enabling them.",
+ "type": "boolean"
+ },
+ "kind": {
+ "const": "claim_rewards",
+ "type": "string"
+ },
+ "position_id": {
+ "description": "LP position (NFT) id this intent applies to. Also used to auto-fetch position context.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "kind"
+ ],
+ "type": "object"
+ },
+ {
+ "properties": {
+ "enabled": {
+ "default": true,
+ "description": "False disables this intent's managers instead of enabling them.",
+ "type": "boolean"
+ },
+ "kind": {
+ "const": "add_to_lp",
+ "type": "string"
+ },
+ "position_id": {
+ "description": "LP position (NFT) id this intent applies to. Also used to auto-fetch position context.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "tokens": {
+ "description": "Which pool tokens' idle account balance to fold into the LP. Omit for both. Folding is opt-in per token, and a folded token cannot be the buy_token of a claim_rewards convert.",
+ "items": {
+ "enum": [
+ "token0",
+ "token1"
+ ],
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "kind"
+ ],
+ "type": "object"
+ },
+ {
+ "properties": {
+ "config": {
+ "default": {},
+ "properties": {
+ "destination": {
+ "default": "account",
+ "enum": [
+ "account",
+ "wallet"
+ ],
+ "type": "string"
+ },
+ "reward_recipient": {
+ "description": "Explicit recipient address. Overrides destination when set.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "enabled": {
+ "default": true,
+ "description": "False disables this intent's managers instead of enabling them.",
+ "type": "boolean"
+ },
+ "kind": {
+ "const": "claim_merkl",
+ "type": "string"
+ },
+ "position_id": {
+ "description": "LP position (NFT) id this intent applies to. Also used to auto-fetch position context.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "kind"
+ ],
+ "type": "object"
+ },
+ {
+ "properties": {
+ "enabled": {
+ "default": true,
+ "description": "False disables this intent's managers instead of enabling them.",
+ "type": "boolean"
+ },
+ "kind": {
+ "const": "rebalance",
+ "type": "string"
+ },
+ "max_tolerance": {
+ "description": "Max price deviation (MEV/slippage cap), 1e18-scaled: 1e18 = 100%, so 5000000000000000 = 0.5% (the default) and 50000000000000000 = 5%. Omit for the pool's default. AAA pools are floored at 5%.",
+ "maximum": 1000000000000000000,
+ "minimum": 0,
+ "multipleOf": 1,
+ "type": "number"
+ },
+ "min_liquidity_ratio": {
+ "description": "Min fraction of liquidity that must survive a rebalance, 1e18-scaled: 990000000000000000 = 99% (the default), i.e. at most 1% value loss. Omit for the default.",
+ "maximum": 1000000000000000000,
+ "minimum": 0,
+ "multipleOf": 1,
+ "type": "number"
+ },
+ "position_id": {
+ "description": "LP position (NFT) id this intent applies to. Also used to auto-fetch position context.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "strategy": {
+ "default": {
+ "kind": "out_of_range"
+ },
+ "description": "out_of_range repositions when price leaves the range; take_profit runs on the dedicated profit-taker contract; protocol_owned_liquidity is the POL strategy.",
+ "oneOf": [
+ {
+ "properties": {
+ "kind": {
+ "const": "out_of_range",
+ "type": "string"
+ },
+ "max_rebalance_time": {
+ "default": 1000000000000,
+ "description": "Seconds before a rebalance is forced. Default is effectively disabled.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "min_rebalance_time": {
+ "default": 3600,
+ "description": "Cooldown in seconds between rebalances.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "optimal_token0_ratio": {
+ "default": 500000,
+ "description": "Target token0 composition after a rebalance, 1e6-scaled: 500000 = 50% (balanced, the default), 750000 = 75% token0, 0 = all token1.",
+ "maximum": 1000000,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "trigger_lower_tick_ratio": {
+ "default": 0,
+ "description": "Offset from tick_lower as a fraction of the position's tick range, 1e6-scaled. This is TICK distance, not price: 50000 shifts the trigger by 5% of (tick_upper - tick_lower) ticks, which is not 5% of price. 0 = trigger exactly at the boundary. Positive (e.g. 50000) puts the trigger outside the position so price must travel further beyond the range before rebalancing. Negative (e.g. -50000) puts it inside, firing preemptively while price is still in range.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "trigger_upper_tick_ratio": {
+ "default": 0,
+ "description": "Same as trigger_lower_tick_ratio, for tick_upper. The two are independent, so asymmetric configs are valid (e.g. lower -50000, upper 0 rebalances early on the downside but only at the boundary on the upside).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "kind"
+ ],
+ "type": "object"
+ },
+ {
+ "properties": {
+ "base_range": {
+ "default": 50000,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "deadzone": {
+ "default": 20000,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "fraction_excess_to_limit_order": {
+ "default": 500000,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "initial_range": {
+ "default": 200000,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "k1": {
+ "default": 0,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "k2": {
+ "default": 0,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "kind": {
+ "const": "protocol_owned_liquidity",
+ "type": "string"
+ },
+ "limit_order_withdrawal_threshold": {
+ "default": 50000,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "rebalance_threshold": {
+ "default": 25000,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "target_token0_ratio": {
+ "default": 500000,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "kind"
+ ],
+ "type": "object"
+ },
+ {
+ "properties": {
+ "has_reversal": {
+ "default": false,
+ "type": "boolean"
+ },
+ "kind": {
+ "const": "take_profit",
+ "type": "string"
+ },
+ "profit_token": {
+ "default": "token0",
+ "enum": [
+ "token0",
+ "token1"
+ ],
+ "type": "string"
+ },
+ "reversal_reposition_mode": {
+ "default": "",
+ "enum": [
+ "",
+ "anchor_tick",
+ "shift_range"
+ ],
+ "type": "string"
+ },
+ "reversal_trigger_threshold": {
+ "default": 0,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "reversal_trigger_type": {
+ "default": "",
+ "enum": [
+ "",
+ "fixed",
+ "relative"
+ ],
+ "type": "string"
+ },
+ "take_profit_reposition_mode": {
+ "default": "anchor_tick",
+ "enum": [
+ "",
+ "anchor_tick",
+ "shift_range"
+ ],
+ "type": "string"
+ },
+ "take_profit_trigger_threshold": {
+ "default": 0,
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "take_profit_trigger_type": {
+ "default": "fixed",
+ "enum": [
+ "",
+ "fixed",
+ "relative"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "kind"
+ ],
+ "type": "object"
+ }
+ ]
+ }
+ },
+ "required": [
+ "kind"
+ ],
+ "type": "object"
+ }
+]
changedInput schema / properties / position_id / description
Previous value: -"LP position (NFT) id, as listed in assets[] by read.account.info. Supply this and the backend fetches protocol, staked flag, tokens and reward tokens for you. Strongly preferred over passing the position fields by hand."New value: +"LP position (NFT) id, as listed in assets[] by read_account_info. Supply this and the backend fetches protocol, staked flag, tokens and reward tokens for you. Strongly preferred over passing the position fields by hand."
addedInput schema / properties / position_id / maximum
Added value: +9007199254740991
addedInput schema / properties / position_id / minimum
Added value: +-9007199254740991
changedInput schema / properties / protocol / description
Previous value: -"Position's DEX protocol. Only needed when position_id is omitted. Accepts the dex_protocol values the read tools return (slipstream, staked_slipstream_v3, uniV3, ...), which imply is_staked, as well as the canonical slipstream_v1 / uniswap_v3 spellings."New value: +"Position's DEX protocol. Only needed when position_id is omitted. Accepts the dex_protocol values the read tools return (slipstream, staked_slipstream_v3, uniV3, metadexcl_v1, staked_metadexcl_v1, ...), which imply is_staked, as well as the canonical slipstream_v1 / uniswap_v3 spellings. metadexcl_v1 is Aero CL; staked_metadexcl_v1 covers both the staked module and the wrapper."
changedInput schema / properties / protocol / enum
Previous value: -[
- "slipstream_v1",
- "slipstream_v2",
- "slipstream_v3",
- "uniswap_v3",
- "uniswap_v4",
- "slipstream",
- "staked_slipstream",
- "staked_slipstream_v2",
- "staked_slipstream_v3",
- "uniV3",
- "uniV4"
-]New value: +[
+ "slipstream_v1",
+ "slipstream_v2",
+ "slipstream_v3",
+ "uniswap_v3",
+ "uniswap_v4",
+ "metadexcl_v1",
+ "slipstream",
+ "staked_slipstream",
+ "staked_slipstream_v2",
+ "staked_slipstream_v3",
+ "uniV3",
+ "uniV4",
+ "staked_metadexcl_v1"
+]
changedOutput schema / $schema
Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
removedOutput schema / properties / diff / properties / removed / items / $ref
Removed value: -"#/properties/diff/properties/added/items"
addedOutput schema / properties / diff / properties / removed / items / additionalProperties
Added value: +false
addedOutput schema / properties / diff / properties / removed / items / properties
Added value: +{
+ "address": {
+ "type": "string"
+ },
+ "enabled": {
+ "type": "boolean"
+ },
+ "manager": {
+ "type": "string"
+ }
+}
addedOutput schema / properties / diff / properties / removed / items / required
Added value: +[
+ "manager",
+ "address",
+ "enabled"
+]
addedOutput schema / properties / diff / properties / removed / items / type
Added value: +"object"
removedOutput schema / properties / diff / properties / updated / items / $ref
Removed value: -"#/properties/diff/properties/added/items"
addedOutput schema / properties / diff / properties / updated / items / additionalProperties
Added value: +false
addedOutput schema / properties / diff / properties / updated / items / properties
Added value: +{
+ "address": {
+ "type": "string"
+ },
+ "enabled": {
+ "type": "boolean"
+ },
+ "manager": {
+ "type": "string"
+ }
+}
addedOutput schema / properties / diff / properties / updated / items / required
Added value: +[
+ "manager",
+ "address",
+ "enabled"
+]
addedOutput schema / properties / diff / properties / updated / items / type
Added value: +"object"