Request Trace

/accounts/{account_identifier}/request-tracer/trace

post

Account Request Tracer

account-request-tracer-request-trace

Debug "planAvailability"

{
  "business": true,
  "enterprise": true,
  "free": true,
  "pro": true
}

Debug "tokenPermissions"

null

Debug "parameters"

[
  {
    "in": "path",
    "name": "account_identifier",
    "required": true,
    "schema": {
      "description": "Identifier",
      "example": "023e105f4ecef8ad9ca31a8372d0c353",
      "maxLength": 32,
      "readOnly": true,
      "type": "string"
    }
  }
]

Debug "requestBody"

{
  "content": {
    "application/json": {
      "example": {
        "body": {
          "base64": "c29tZV9yZXF1ZXN0X2JvZHk="
        },
        "context": {
          "geoloc": {
            "city": "London"
          },
          "skip_challenge": true
        },
        "cookies": {
          "cookie_name_1": "cookie_value_1",
          "cookie_name_2": "cookie_value_2"
        },
        "headers": {
          "header_name_1": "header_value_1",
          "header_name_2": "header_value_2"
        },
        "method": "PUT",
        "protocol": "HTTP/1.1",
        "url": "https://some.zone/some_path"
      },
      "schema": {
        "properties": {
          "body": {
            "properties": {
              "base64": {
                "description": "Base64 encoded request body",
                "example": "c29tZV9yZXF1ZXN0X2JvZHk=",
                "type": "string"
              },
              "json": {
                "description": "Arbitrary json as request body",
                "type": "object"
              },
              "plain_text": {
                "description": "Request body as plain text",
                "type": "string"
              }
            },
            "type": "object"
          },
          "context": {
            "description": "Additional request parameters",
            "properties": {
              "bot_score": {
                "description": "Bot score used for evaluating tracing request processing",
                "type": "integer"
              },
              "geoloc": {
                "description": "Geodata for tracing request",
                "properties": {
                  "city": {
                    "example": "London",
                    "type": "string"
                  },
                  "continent": {
                    "type": "string"
                  },
                  "is_eu_country": {
                    "type": "boolean"
                  },
                  "iso_code": {
                    "type": "string"
                  },
                  "latitude": {
                    "type": "number"
                  },
                  "longitude": {
                    "type": "number"
                  },
                  "postal_code": {
                    "type": "string"
                  },
                  "region_code": {
                    "type": "string"
                  },
                  "subdivision_2_iso_code": {
                    "type": "string"
                  },
                  "timezone": {
                    "type": "string"
                  }
                },
                "type": "object"
              },
              "skip_challenge": {
                "description": "Whether to skip any challenges for tracing request (e.g.: captcha)",
                "example": true,
                "type": "boolean"
              },
              "threat_score": {
                "description": "Threat score used for evaluating tracing request processing",
                "type": "integer"
              }
            },
            "type": "object"
          },
          "cookies": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Cookies added to tracing request",
            "example": {
              "cookie_name_1": "cookie_value_1",
              "cookie_name_2": "cookie_value_2"
            },
            "type": "object"
          },
          "headers": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Headers added to tracing request",
            "example": {
              "header_name_1": "header_value_1",
              "header_name_2": "header_value_2"
            },
            "type": "object"
          },
          "method": {
            "description": "HTTP Method of tracing request",
            "example": "PUT",
            "type": "string"
          },
          "protocol": {
            "description": "HTTP Protocol of tracing request",
            "example": "HTTP/1.1",
            "type": "string"
          },
          "skip_response": {
            "description": "Skip sending the request to the Origin server after all rules evaluation",
            "type": "boolean"
          },
          "url": {
            "description": "URL to which perform tracing request",
            "example": "https://some.zone/some_path",
            "type": "string"
          }
        },
        "required": [
          "url",
          "method"
        ],
        "type": "object"
      }
    }
  },
  "required": true
}

Debug "responses"

{
  "200": {
    "content": {
      "application/json": {
        "schema": {
          "allOf": [
            {
              "properties": {
                "errors": {
                  "example": [],
                  "items": {
                    "properties": {
                      "code": {
                        "minimum": 1000,
                        "type": "integer"
                      },
                      "message": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "code",
                      "message"
                    ],
                    "type": "object",
                    "uniqueItems": true
                  },
                  "type": "array"
                },
                "messages": {
                  "example": [],
                  "items": {
                    "properties": {
                      "code": {
                        "minimum": 1000,
                        "type": "integer"
                      },
                      "message": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "code",
                      "message"
                    ],
                    "type": "object",
                    "uniqueItems": true
                  },
                  "type": "array"
                },
                "result": {
                  "anyOf": [
                    {
                      "type": "object"
                    },
                    {
                      "items": {},
                      "type": "array"
                    },
                    {
                      "type": "string"
                    }
                  ]
                },
                "success": {
                  "description": "Whether the API call was successful",
                  "enum": [
                    true
                  ],
                  "example": true,
                  "type": "boolean"
                }
              },
              "required": [
                "success",
                "errors",
                "messages",
                "result"
              ],
              "type": "object"
            },
            {
              "properties": {
                "result": {
                  "description": "Trace result with an origin status code",
                  "properties": {
                    "status_code": {
                      "description": "HTTP Status code of zone response",
                      "type": "integer"
                    },
                    "trace": {
                      "items": {
                        "description": "List of steps acting on request/response",
                        "properties": {
                          "action": {
                            "description": "If step type is rule, then action performed by this rule",
                            "example": "execute",
                            "pattern": "^[a-z_]+$",
                            "type": "string"
                          },
                          "action_parameters": {
                            "description": "If step type is rule, then action parameters of this rule as JSON",
                            "example": {
                              "id": "4814384a9e5d4991b9815dcfc25d2f1f"
                            },
                            "type": "object"
                          },
                          "description": {
                            "description": "If step type is rule or ruleset, the description of this entity",
                            "example": "some rule",
                            "type": "string"
                          },
                          "expression": {
                            "description": "If step type is rule, then expression used to match for this rule",
                            "example": "ip.src ne 1.1.1.1",
                            "type": "string"
                          },
                          "kind": {
                            "description": "If step type is ruleset, then kind of this ruleset",
                            "example": "zone",
                            "type": "string"
                          },
                          "matched": {
                            "description": "Whether tracing step affected tracing request/response",
                            "example": true,
                            "type": "boolean"
                          },
                          "name": {
                            "description": "If step type is ruleset, then name of this ruleset",
                            "example": "some ruleset name",
                            "type": "string"
                          },
                          "step_name": {
                            "description": "Tracing step identifying name",
                            "example": "rule_id01",
                            "type": "string"
                          },
                          "type": {
                            "description": "Tracing step type",
                            "example": "rule",
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "type": "array"
                    }
                  },
                  "type": "object"
                }
              },
              "type": "object"
            }
          ],
          "type": "object"
        }
      }
    },
    "description": "Request Trace response"
  },
  "4XX": {
    "content": {
      "application/json": {
        "schema": {
          "allOf": [
            {
              "properties": {
                "errors": {
                  "allOf": [
                    {
                      "example": [],
                      "items": {
                        "properties": {
                          "code": {
                            "minimum": 1000,
                            "type": "integer"
                          },
                          "message": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "uniqueItems": true
                      },
                      "type": "array"
                    }
                  ],
                  "example": [
                    {
                      "code": 7003,
                      "message": "No route for the URI"
                    }
                  ],
                  "minLength": 1
                },
                "messages": {
                  "allOf": [
                    {
                      "example": [],
                      "items": {
                        "properties": {
                          "code": {
                            "minimum": 1000,
                            "type": "integer"
                          },
                          "message": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "uniqueItems": true
                      },
                      "type": "array"
                    }
                  ],
                  "example": []
                },
                "result": {
                  "enum": [
                    null
                  ],
                  "nullable": true,
                  "type": "object"
                },
                "success": {
                  "description": "Whether the API call was successful",
                  "enum": [
                    false
                  ],
                  "example": false,
                  "type": "boolean"
                }
              },
              "required": [
                "success",
                "errors",
                "messages",
                "result"
              ],
              "type": "object"
            }
          ]
        }
      }
    },
    "description": "Request Trace response failure"
  }
}

Debug "security"

[
  {
    "api_email": [],
    "api_key": []
  }
]