API action reference

Update a configurable Test IP fixture

Update a configurable Test IP fixture. This action uses the same domain service from REST and MCP, so successful calls produce the same canonical domain result.

Authorization and availability

Required scope: test_fixtures:write. Available in Test. REST operation: PUT /v1/test-fixtures/ip/{address}. Equivalent MCP tool: veltor_update_ip_fixture.

Request schema

Unknown fields are rejected. Path values shown in the route are combined with the JSON body or query input before validation.

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "maxLength": 45
    },
    "fixture": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "available",
            "unavailable"
          ]
        },
        "payload": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "schema_version": {
                  "type": "number",
                  "const": 1
                },
                "ip_version": {
                  "anyOf": [
                    {
                      "type": "number",
                      "const": 4
                    },
                    {
                      "type": "number",
                      "const": 6
                    }
                  ]
                },
                "geography": {
                  "type": "object",
                  "properties": {
                    "continent": {
                      "type": "object",
                      "properties": {
                        "geoname_id": {
                          "anyOf": [
                            {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 9007199254740991
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "names": {
                          "default": {},
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "type": "string"
                          }
                        },
                        "code": {
                          "anyOf": [
                            {
                              "type": "string",
                              "maxLength": 2
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "required": [
                        "geoname_id",
                        "names",
                        "code"
                      ],
                      "additionalProperties": false
                    },
                    "country": {
                      "type": "object",
                      "properties": {
                        "geoname_id": {
                          "anyOf": [
                            {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 9007199254740991
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "names": {
                          "default": {},
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "type": "string"
                          }
                        },
                        "iso_code": {
                          "anyOf": [
                            {
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 2
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "confidence": {
                          "anyOf": [
                            {
                              "type": "number",
                              "minimum": 0,
                              "maximum": 100
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "is_in_european_union": {
                          "type": "boolean"
                        }
                      },
                      "required": [
                        "geoname_id",
                        "names",
                        "iso_code",
                        "confidence",
                        "is_in_european_union"
                      ],
                      "additionalProperties": false
                    },
                    "registered_country": {
                      "type": "object",
                      "properties": {
                        "geoname_id": {
                          "anyOf": [
                            {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 9007199254740991
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "names": {
                          "default": {},
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "type": "string"
                          }
                        },
                        "iso_code": {
                          "anyOf": [
                            {
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 2
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "is_in_european_union": {
                          "type": "boolean"
                        }
                      },
                      "required": [
                        "geoname_id",
                        "names",
                        "iso_code",
                        "is_in_european_union"
                      ],
                      "additionalProperties": false
                    },
                    "represented_country": {
                      "type": "object",
                      "properties": {
                        "geoname_id": {
                          "anyOf": [
                            {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 9007199254740991
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "names": {
                          "default": {},
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "type": "string"
                          }
                        },
                        "iso_code": {
                          "anyOf": [
                            {
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 2
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "is_in_european_union": {
                          "type": "boolean"
                        },
                        "type": {
                          "anyOf": [
                            {
                              "type": "string",
                              "maxLength": 64
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "required": [
                        "geoname_id",
                        "names",
                        "iso_code",
                        "is_in_european_union",
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    "subdivisions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "geoname_id": {
                            "anyOf": [
                              {
                                "type": "integer",
                                "minimum": 0,
                                "maximum": 9007199254740991
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "names": {
                            "default": {},
                            "type": "object",
                            "propertyNames": {
                              "type": "string"
                            },
                            "additionalProperties": {
                              "type": "string"
                            }
                          },
                          "iso_code": {
                            "anyOf": [
                              {
                                "type": "string",
                                "maxLength": 3
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "confidence": {
                            "anyOf": [
                              {
                                "type": "number",
                                "minimum": 0,
                                "maximum": 100
                              },
                              {
                                "type": "null"
                              }
                            ]
                          }
                        },
                        "required": [
                          "geoname_id",
                          "names",
                          "iso_code",
                          "confidence"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "city": {
                      "type": "object",
                      "properties": {
                        "geoname_id": {
                          "anyOf": [
                            {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 9007199254740991
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "names": {
                          "default": {},
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "type": "string"
                          }
                        },
                        "confidence": {
                          "anyOf": [
                            {
                              "type": "number",
                              "minimum": 0,
                              "maximum": 100
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "required": [
                        "geoname_id",
                        "names",
                        "confidence"
                      ],
                      "additionalProperties": false
                    },
                    "postal": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "anyOf": [
                            {
                              "type": "string",
                              "maxLength": 32
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "confidence": {
                          "anyOf": [
                            {
                              "type": "number",
                              "minimum": 0,
                              "maximum": 100
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "required": [
                        "code",
                        "confidence"
                      ],
                      "additionalProperties": false
                    },
                    "location": {
                      "type": "object",
                      "properties": {
                        "latitude": {
                          "anyOf": [
                            {
                              "type": "number",
                              "minimum": -90,
                              "maximum": 90
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "longitude": {
                          "anyOf": [
                            {
                              "type": "number",
                              "minimum": -180,
                              "maximum": 180
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "accuracy_radius_km": {
                          "anyOf": [
                            {
                              "type": "number",
                              "minimum": 0
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "time_zone": {
                          "anyOf": [
                            {
                              "type": "string",
                              "maxLength": 80
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "required": [
                        "latitude",
                        "longitude",
                        "accuracy_radius_km",
                        "time_zone"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "continent",
                    "country",
                    "registered_country",
                    "represented_country",
                    "subdivisions",
                    "city",
                    "postal",
                    "location"
                  ],
                  "additionalProperties": false
                },
                "network": {
                  "type": "object",
                  "properties": {
                    "cidr": {
                      "anyOf": [
                        {
                          "type": "string",
                          "maxLength": 64
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "asn": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 1,
                          "maximum": 4294967295
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "autonomous_system_organization": {
                      "anyOf": [
                        {
                          "type": "string",
                          "maxLength": 255
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "connection_type": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "cable_dsl",
                            "cellular",
                            "corporate",
                            "dialup",
                            "satellite"
                          ]
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "unrecognized_connection_type": {
                      "anyOf": [
                        {
                          "type": "string",
                          "maxLength": 128
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "domain": {
                      "anyOf": [
                        {
                          "type": "string",
                          "maxLength": 255
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "isp": {
                      "anyOf": [
                        {
                          "type": "string",
                          "maxLength": 255
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "organization": {
                      "anyOf": [
                        {
                          "type": "string",
                          "maxLength": 255
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "is_anycast": {
                      "type": "boolean"
                    },
                    "mobile_country_code": {
                      "anyOf": [
                        {
                          "type": "string",
                          "pattern": "^\\d{3}$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "mobile_network_code": {
                      "anyOf": [
                        {
                          "type": "string",
                          "pattern": "^\\d{2,3}$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "user_count": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "user_type": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "business",
                            "cafe",
                            "cellular",
                            "college",
                            "consumer_privacy_network",
                            "content_delivery_network",
                            "government",
                            "hosting",
                            "library",
                            "military",
                            "residential",
                            "router",
                            "school",
                            "search_engine_spider",
                            "traveler"
                          ]
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "unrecognized_user_type": {
                      "anyOf": [
                        {
                          "type": "string",
                          "maxLength": 128
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "cidr",
                    "asn",
                    "autonomous_system_organization",
                    "connection_type",
                    "unrecognized_connection_type",
                    "domain",
                    "isp",
                    "organization",
                    "is_anycast",
                    "mobile_country_code",
                    "mobile_network_code",
                    "user_count",
                    "user_type",
                    "unrecognized_user_type"
                  ],
                  "additionalProperties": false
                },
                "risk": {
                  "type": "object",
                  "properties": {
                    "ip_risk_snapshot": {
                      "anyOf": [
                        {
                          "type": "number",
                          "minimum": 0.01,
                          "maximum": 99
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "static_ip_score": {
                      "anyOf": [
                        {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 99.99
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "ip_risk_snapshot",
                    "static_ip_score"
                  ],
                  "additionalProperties": false
                },
                "anonymizer": {
                  "type": "object",
                  "properties": {
                    "confidence": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 1,
                          "maximum": 99
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "is_anonymous": {
                      "type": "boolean"
                    },
                    "is_anonymous_vpn": {
                      "type": "boolean"
                    },
                    "is_hosting_provider": {
                      "type": "boolean"
                    },
                    "is_public_proxy": {
                      "type": "boolean"
                    },
                    "is_residential_proxy": {
                      "type": "boolean"
                    },
                    "is_tor_exit_node": {
                      "type": "boolean"
                    },
                    "network_last_seen": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "provider_name": {
                      "anyOf": [
                        {
                          "type": "string",
                          "maxLength": 255
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "residential": {
                      "type": "object",
                      "properties": {
                        "confidence": {
                          "anyOf": [
                            {
                              "type": "integer",
                              "minimum": 1,
                              "maximum": 99
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "network_last_seen": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date",
                              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "provider_name": {
                          "anyOf": [
                            {
                              "type": "string",
                              "maxLength": 255
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "required": [
                        "confidence",
                        "network_last_seen",
                        "provider_name"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "confidence",
                    "is_anonymous",
                    "is_anonymous_vpn",
                    "is_hosting_provider",
                    "is_public_proxy",
                    "is_residential_proxy",
                    "is_tor_exit_node",
                    "network_last_seen",
                    "provider_name",
                    "residential"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "schema_version",
                "ip_version",
                "geography",
                "network",
                "risk",
                "anonymizer"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ]
        },
        "age_hours": {
          "type": "number",
          "minimum": 0,
          "maximum": 2160
        },
        "fact_overrides": {
          "type": "object",
          "properties": {
            "ip.attempts_1m": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "ip.attempts_1h": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "ip.attempts_24h": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "ip.prior_outcomes": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            }
          },
          "additionalProperties": false
        }
      },
      "required": [
        "status",
        "payload",
        "age_hours",
        "fact_overrides"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "address",
    "fixture"
  ],
  "additionalProperties": false
}

Example request payload

{
  "address": "192.0.2.224",
  "fixture": {
    "status": "unavailable",
    "payload": null,
    "age_hours": 0,
    "fact_overrides": {}
  }
}

Response schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "propertyNames": {
    "type": "string"
  },
  "additionalProperties": {}
}

Example success response

REST returns this canonical domain result as JSON. MCP returns the same value in structuredContent and adds only its transport request ID.

{
  "id": "00000000-0000-4000-8000-000000000001",
  "status": "available"
}

Errors and recovery

Relevant errors include invalid input (422), missing scope or organization access (403), missing resources (404), revision or idempotency conflicts (409), rate limits (429), and deadline exhaustion (504). Use the returned request ID when investigating a failure.

Idempotency, retries, and timeout

Send a stable idempotency key and reuse it only for an exact retry of this mutation. The server deadline is 5 seconds. Retry only when the error reports retryable true.

cURL

curl -X PUT https://veltor.dev/v1/test-fixtures/ip/192.0.2.10 \
  -H "Authorization: Bearer $VELTOR_SECRET_KEY" \
  -H "Veltor-Organization: $VELTOR_ORGANIZATION" \
  -H "Idempotency-Key: operation_123" \
  -H "Content-Type: application/json" \
  --data '{"fixture":{"status":"unavailable","payload":null,"age_hours":0,"fact_overrides":{}}}'

Node SDK

const result = await veltor.call("/v1/test-fixtures/ip/192.0.2.10", {
  method: "PUT",
  input: {"address":"192.0.2.224","fixture":{"status":"unavailable","payload":null,"age_hours":0,"fact_overrides":{}}},
  idempotencyKey: "operation_123",
});

MCP

veltor_update_ip_fixture({
  "address": "192.0.2.224",
  "fixture": {
    "status": "unavailable",
    "payload": null,
    "age_hours": 0,
    "fact_overrides": {}
  },
  "idempotency_key": "operation_123"
})