{
  "openapi": "3.0.0",
  "info": {
    "title": "Flashbots Protect: MEV Protection & Gas Recovery API",
    "description": "Flashbots Protect gives users better prices as well as MEV and gas refunds",
    "version": "1.0.0",
    "contact": {
      "email": "devops@flashbots.net",
      "url": "https://discord.gg/v5rTd22bpu"
    }
  },
  "servers": [
    {
      "url": "https://{quicknode_endpoint}",
      "description": "Your Quicknode endpoint",
      "variables": {
        "quicknode_endpoint": {
          "default": "your-endpoint.quiknode.pro",
          "description": "Your Quicknode endpoint URL"
        }
      }
    }
  ],
  "tags": [
    {
      "name": "JSON-RPC",
      "description": "See request body examples for the available methods you can call on this add-on"
    }
  ],
  "paths": {
    "/": {
      "post": {
        "summary": "JSON-RPC methods for https://rpc.flashbots.net/",
        "description": "eth_sendRawTransaction: Creates new message call transaction or a contract creation for signed transactions. For users that use the Quicknode RPC URL in their wallets.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "jsonrpc": {
                        "type": "string",
                        "enum": [
                          "2.0"
                        ]
                      },
                      "method": {
                        "type": "string",
                        "enum": [
                          "eth_sendRawTransaction"
                        ]
                      },
                      "id": {
                        "type": "integer",
                        "example": 1
                      },
                      "params": {
                        "type": "array",
                        "description": "Positional parameters",
                        "items": {
                          "description": "Parameter value (can be string, number, boolean, object, etc.)"
                        },
                        "example": [
                          "EXAMPLE"
                        ]
                      }
                    },
                    "required": [
                      "jsonrpc",
                      "method",
                      "id",
                      "params"
                    ]
                  }
                ],
                "discriminator": {
                  "propertyName": "method"
                }
              },
              "examples": {
                "eth_sendRawTransaction": {
                  "summary": "Creates new message call transaction or a contract creation for signed transactions. For users that use the Quicknode RPC URL in their wallets.",
                  "value": {
                    "jsonrpc": "2.0",
                    "method": "eth_sendRawTransaction",
                    "id": 1,
                    "params": [
                      "EXAMPLE"
                    ]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "JSON-RPC response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "jsonrpc": {
                      "type": "string",
                      "enum": [
                        "2.0"
                      ]
                    },
                    "id": {
                      "type": "integer"
                    },
                    "result": {
                      "description": "Method result"
                    },
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "integer"
                        },
                        "message": {
                          "type": "string"
                        },
                        "data": {
                          "description": "Additional error data"
                        }
                      }
                    }
                  },
                  "required": [
                    "jsonrpc",
                    "id"
                  ]
                }
              }
            }
          }
        },
        "externalDocs": {
          "url": "https://docs.flashbots.net/flashbots-protect/overview",
          "description": "Documentation for eth_sendRawTransaction"
        },
        "tags": [
          "JSON-RPC"
        ]
      }
    },
    "/rpc": {
      "post": {
        "summary": "JSON-RPC methods for https://rpc.flashbots.net",
        "description": "Available methods:\n• eth_sendPrivateTransaction: eth_sendPrivateTransaction sends a single transaction to Flashbots for frontrunning and revert protection without the complexity of sending it as a bundle\n• eth_cancelPrivateTransaction: The eth_cancelPrivateTransaction method stops private transactions from being submitted for future blocks.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "jsonrpc": {
                        "type": "string",
                        "enum": [
                          "2.0"
                        ]
                      },
                      "method": {
                        "type": "string",
                        "enum": [
                          "eth_sendPrivateTransaction"
                        ]
                      },
                      "id": {
                        "type": "integer",
                        "example": 1
                      },
                      "params": {
                        "type": "array",
                        "description": "Positional parameters",
                        "items": {
                          "description": "Parameter value (can be string, number, boolean, object, etc.)"
                        },
                        "example": [
                          "EXAMPLE"
                        ]
                      }
                    },
                    "required": [
                      "jsonrpc",
                      "method",
                      "id",
                      "params"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "jsonrpc": {
                        "type": "string",
                        "enum": [
                          "2.0"
                        ]
                      },
                      "method": {
                        "type": "string",
                        "enum": [
                          "eth_cancelPrivateTransaction"
                        ]
                      },
                      "id": {
                        "type": "integer",
                        "example": 1
                      },
                      "params": {
                        "type": "array",
                        "description": "Positional parameters",
                        "items": {
                          "description": "Parameter value (can be string, number, boolean, object, etc.)"
                        },
                        "example": [
                          "EXAMPLE"
                        ]
                      }
                    },
                    "required": [
                      "jsonrpc",
                      "method",
                      "id",
                      "params"
                    ]
                  }
                ],
                "discriminator": {
                  "propertyName": "method"
                }
              },
              "examples": {
                "eth_sendPrivateTransaction": {
                  "summary": "eth_sendPrivateTransaction sends a single transaction to Flashbots for frontrunning and revert protection without the complexity of sending it as a bundle",
                  "value": {
                    "jsonrpc": "2.0",
                    "method": "eth_sendPrivateTransaction",
                    "id": 1,
                    "params": [
                      "EXAMPLE"
                    ]
                  }
                },
                "eth_cancelPrivateTransaction": {
                  "summary": "The eth_cancelPrivateTransaction method stops private transactions from being submitted for future blocks.",
                  "value": {
                    "jsonrpc": "2.0",
                    "method": "eth_cancelPrivateTransaction",
                    "id": 1,
                    "params": [
                      "EXAMPLE"
                    ]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "JSON-RPC response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "jsonrpc": {
                      "type": "string",
                      "enum": [
                        "2.0"
                      ]
                    },
                    "id": {
                      "type": "integer"
                    },
                    "result": {
                      "description": "Method result"
                    },
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "integer"
                        },
                        "message": {
                          "type": "string"
                        },
                        "data": {
                          "description": "Additional error data"
                        }
                      }
                    }
                  },
                  "required": [
                    "jsonrpc",
                    "id"
                  ]
                }
              }
            }
          }
        },
        "externalDocs": {
          "url": "https://docs.flashbots.net/flashbots-auction/advanced/rpc-endpoint#eth_sendprivatetransaction",
          "description": "Documentation: eth_sendPrivateTransaction: https://docs.flashbots.net/flashbots-auction/advanced/rpc-endpoint#eth_sendprivatetransaction, eth_cancelPrivateTransaction: https://docs.flashbots.net/flashbots-auction/advanced/rpc-endpoint#eth_cancelprivatetransaction"
        },
        "tags": [
          "JSON-RPC"
        ]
      }
    }
  },
  "externalDocs": {
    "description": "Support Documentation",
    "url": "https://discord.gg/v5rTd22bpu"
  }
}