Domain ffbot.whitacre.dev
United States
AMAZON-02
Software information

Heroku

tcp/443 tcp/80

  • Swagger API description is publicly available
    First seen 2025-10-18 00:16
    Last seen 2026-01-09 18:58
    Open for 83 days
  • Swagger API description is publicly available
    First seen 2025-10-18 00:16
    Last seen 2026-01-09 05:06
    Open for 83 days
  • Open service 99.83.220.108:80 · ffbot.whitacre.dev

    2026-01-09 18:58

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Fri, 09 Jan 2026 19:00:02 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=YhH9LNvmd%2FypkEPXjxkfo8OaLNH6qUEch3Q5r3oOJOI%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1767985202"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=YhH9LNvmd%2FypkEPXjxkfo8OaLNH6qUEch3Q5r3oOJOI%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1767985202"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 3 days ago by HttpPlugin
    Create report
  • Open service 35.71.179.82:443 · ffbot.whitacre.dev

    2026-01-09 05:06

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Fri, 09 Jan 2026 05:06:04 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=eRRya6sk%2Fjz%2FS94RSxQ7kVcW5BahAU7qKQm3MQKlH%2F8%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1767935164"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=eRRya6sk%2Fjz%2FS94RSxQ7kVcW5BahAU7qKQm3MQKlH%2F8%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1767935164"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 2026-01-09 by HttpPlugin
    Create report
  • Open service 99.83.220.108:80 · ffbot.whitacre.dev

    2026-01-02 04:12

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Fri, 02 Jan 2026 04:12:24 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=iyOAX%2FSA56w097j6YyAuUQDun%2F%2Fbq4ZR8vnNPDfZa%2BE%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1767327144"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=iyOAX%2FSA56w097j6YyAuUQDun%2F%2Fbq4ZR8vnNPDfZa%2BE%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1767327144"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 2026-01-02 by HttpPlugin
    Create report
  • Open service 35.71.179.82:443 · ffbot.whitacre.dev

    2026-01-02 01:55

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Fri, 02 Jan 2026 01:55:35 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=qOyM4lMU4LNY6IShpBHoCoEBhfVVk%2Bcg7fsT%2FzuO%2FR4%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1767318935"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=qOyM4lMU4LNY6IShpBHoCoEBhfVVk%2Bcg7fsT%2FzuO%2FR4%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1767318935"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 2026-01-02 by HttpPlugin
    Create report
  • Open service 35.71.179.82:443 · ffbot.whitacre.dev

    2025-12-30 10:59

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Tue, 30 Dec 2025 10:59:23 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=cEqbYIr%2BoVTCuMVbldNfhcX4gFw35QZpHjTd81sIKJQ%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1767092363"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=cEqbYIr%2BoVTCuMVbldNfhcX4gFw35QZpHjTd81sIKJQ%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1767092363"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 2025-12-30 by HttpPlugin
    Create report
  • Open service 99.83.220.108:80 · ffbot.whitacre.dev

    2025-12-30 09:01

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Tue, 30 Dec 2025 09:01:20 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=M1JJXX8I%2B1zLsyUWM4wMveJpNl%2FvAricFQnK%2B6bMJfk%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1767085280"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=M1JJXX8I%2B1zLsyUWM4wMveJpNl%2FvAricFQnK%2B6bMJfk%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1767085280"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 2025-12-30 by HttpPlugin
    Create report
  • Open service 35.71.179.82:443 · ffbot.whitacre.dev

    2025-12-23 07:10

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Tue, 23 Dec 2025 07:10:24 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=bYJGCo8aNqSQsVhOh3g0B5DJYGo2XzqWUY9oQKfeSD8%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1766473824"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=bYJGCo8aNqSQsVhOh3g0B5DJYGo2XzqWUY9oQKfeSD8%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1766473824"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 2025-12-23 by HttpPlugin
    Create report
  • Open service 99.83.220.108:80 · ffbot.whitacre.dev

    2025-12-22 12:10

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Mon, 22 Dec 2025 12:10:19 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=PmGSB2wWvo86lk4lV4VmvafNrlokR1Di%2FSTntppZ7iw%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1766405419"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=PmGSB2wWvo86lk4lV4VmvafNrlokR1Di%2FSTntppZ7iw%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1766405419"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 2025-12-22 by HttpPlugin
    Create report
  • Open service 35.71.179.82:443 · ffbot.whitacre.dev

    2025-12-21 06:02

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Sun, 21 Dec 2025 06:02:49 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=wPpzuQCAAhK7nTCrt5kpKzAjldk8N3jyzOjEEDqqA30%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1766296969"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=wPpzuQCAAhK7nTCrt5kpKzAjldk8N3jyzOjEEDqqA30%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1766296969"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 2025-12-21 by HttpPlugin
    Create report
  • Open service 99.83.220.108:80 · ffbot.whitacre.dev

    2025-12-20 11:42

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Sat, 20 Dec 2025 11:42:38 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=MPKRYOuoMge0XdYTwolQbE%2B64DCztHxliXAgcNrLn9w%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1766230958"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=MPKRYOuoMge0XdYTwolQbE%2B64DCztHxliXAgcNrLn9w%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1766230958"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 2025-12-20 by HttpPlugin
    Create report
  • Open service 35.71.179.82:443 · ffbot.whitacre.dev

    2025-12-19 03:29

    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Cache-Control: no-cache
    Content-Length: 3493
    Content-Type: text/html; charset=utf-8
    Date: Fri, 19 Dec 2025 03:29:30 GMT
    Etag: "a28c32895caa141bed18dc2700ec2381f0ca3c64"
    Last-Modified: Tue, 19 Sep 2023 01:54:06 GMT
    Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
    Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=4E2qndklLdI67r7aDNVLEf7Do34PG7vqZDBzZJu2oM4%3D\u0026sid=1b10b0ff-8a76-4548-befa-353fc6c6c045\u0026ts=1766114970"}],"max_age":3600}
    Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=4E2qndklLdI67r7aDNVLEf7Do34PG7vqZDBzZJu2oM4%3D&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&ts=1766114970"
    Server: Heroku
    Vary: accept-encoding
    Via: 1.1 heroku-router
    Connection: close
    
    Page title: Fantasy Football Bot
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Fantasy Football Bot</title>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic" />
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css" />
        <link rel="stylesheet" href="./styles/milligram.min.css" />
        <link rel="stylesheet" href="./styles/main.css" />
      </head>
      <body>
        <main class="wrapper">
          <nav class="navigation">
            <section class="container" id="navigation">
              <h1 class="title">Fantasy Football Bot</h1>
            </section>
          </nav>
    
          <section class="container" id="commands">
            <h3>Commands</h3>
            <select id="sheetId">
              <option value="17X4gGMBjTqyXnIVtAiGOJ7tUdn5Uov2J2Ax6bNN7SvI">The Carrie 2023: Babygate</option>
              <option value="10hFp2dc2_f8-sgnGRsRYCJtdLi95wtI_u_QPLcBaMIU">Playstation Group</option>
              <option value="19pQBVOJmrbYlaHxMQnHKvTLBY0Ru8GLvD6r_VD3lF9c">fantasy-football-bot-dev (dev)</option>
              <option value="defaults">fantasy-football-bot-dev (defaults)</option>
            </select>
            <table>
              <thead>
                <tr>
                  <th>Command</th>
                  <th>Description</th>
                  <th>Message</th>
                  <th>Picture</th>
                  <th title="Whether the bot responds to the command.">Enabled</th>
                  <th title="Shows in the !list command.">Visible</th>
                </tr>
              </thead>
              <tbody id="commands-table-body"></tbody>
            </table>
          </section>
    
          <section class="container" id="failed" style="display:none">
            <p>
              Sorry, the commands failed to load. Maybe refresh? ¯\_(ツ)_/¯
            </p>
          </section>
    
          <footer class="footer">
            <section class="container ">
              <p>
                Made with ♥ by Dan.
              </p>
            </section>
          </footer>
        </main>
      </body>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
      <script>
        ;(function() {
          function failed() {
            $('#commands').hide()
            $('#failed').show()
          }
    
          function td(text) {
            return $('<td>').text(text)
          }
    
          function sortCommands(array) {
            return array
              .sort((a, b) => a.id.localeCompare(b.id))
          }
    
          function append(tbody, array) {
            var tbody = $(tbody)
    
            array.forEach(function(item) {
              var tr = $('<tr>')
                .append(td(`!${item.id}`))
                .append(td(item.desc))
                .append(td(item.message))
                .append(item.pictureurl ? td().append($('<img>').attr('src', item.pictureurl).attr('width', 96).attr('height', 96)) : td(''))
                .append(td(item.enabled ? '✔️' : '❌'))
                .append(td(item.hidden ? '❌' : '✔️'))
    
              tbody.append(tr)
            })
          }
    
          function load() {
            $('#commands-table-body').empty()
            $.get(`./command?sheetId=${$('#sheetId').val()}`, function(data) {
              if (!data?.commands) return failed()
              
              const commands = sortCommands(data.commands ?? [])
              var cacheBody = $('#commands-table-body')
              append(cacheBody, commands)
            }).fail(failed)
          }
    
          $('#sheetId').on('change', load)
          load()
        })()
      </script>
    </html>
    
    Found 2025-12-19 by HttpPlugin
    Create report
ffbot.whitacre.dev
CN:
ffbot.whitacre.dev
Key:
RSA-2048
Issuer:
R12
Not before:
2025-12-16 23:44
Not after:
2026-03-16 23:44
Domain summary
IP summary