Latest Applebot user agent detected
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Safari/605.1.15 (Applebot/0.1; +http://www.apple.com/go/applebot)
Applebot API documentation
The Applebot API makes it easy to check if an IP address is officially used by Applebot to crawl the web, including your website.
The Applebot API is a 'REST API' which is accessible via HTTPS using the GET method at a predefined URL. It returns either JSON of plain text response.
Benefits of using the Applebot API are:
- Querying the Applebot API is free of charge and anonymous.
- The Applebot API works across applications and scripting languages, e.g. see below the Google Spreadsheets and Python implementations.
- The Applebot API contains historical records, which means that IP addresses which may have been once used but are currently not resolving can still be identified when performing log file analysis on historical logs.
- As Applebot is crawling the web, the database for the Applebot API is continuously and automatically updated with the latest IP addresses and user agents.
- Instead of performing two seperate lookups (forward and reverse) with the 'host' command on the command line locally, this API provides a single lookup method which can be accessed from anywhere.
- The Applebot API contains one of the largest freely and publicly accessible collection of IP addresses for Applebot.
This Applebot API is coded and provided by ex-Google engineer and technical SEO expert Fili.
Authentication
This Applebot API is free of charge and can be accessed without credentials. If you have any questions about using the Applebot API on a larger scale or like to discuss ways to utilize this database internally, contact Fili.
Currently the Applebot API is rate-limited to 1000 requests/hour for each IP address. If you need more, contact Fili.
Optimize your Applebot API requests and avoid hitting the rate-limits by locally caching 200 status responses from the Applebot API for at least 6 hours before resubmitting a duplicate query to the Applebot API.
Quickstart guide
You can query the API endpoint using a GET request and replace IPADDRESS with the IP address you wish to query.
https://applebot.seoapi.com/v1/validate/?ip=IPADDRESS
Endpoint definitions
By default the API will return a JSON response with:
- a body containing "valid": "true" if the queried IP address is found in the database,
- or a body containing "valid": "false" if the queried IP address is not found in the database.
Alternatively, it is also possible to request just a BOOLEAN in plain text (useful in some situations, e.g. Google Spreadsheets - see below).
URL parameters which are accepted by the Applebot API are:
URL Parameter | Value |
---|---|
ip | (string) IP address, IPv4 or IPv6 |
compact | (integer) default is 0 and return JSON response, 1 will return a plain text response |
Code snippets
Here are some examples of how to query the Applebot API:
Command line (curl) Example 1
curl -i https://applebot.seoapi.com/v1/validate/?ip=17.241.227.169
It is also possible to use this API in Google Spreadsheets by adding &compact=1 to the API URL.
In the following example, the content of cell A1 contains the IP address to check and replaces in the =IMPORTDATA formula the __IPADDRESS__. Be sure to replace the cell ID when using this in Google Spreadsheets.
Google Spreadsheets
=IMPORTDATA(SUBSTITUTE("https://applebot.seoapi.com/v1/validate/?ip=__IPADDRESS__&compact=1","__IPADDRESS__",A1))
It is also possible to use this API in your code with python or similar other languages.
Python 3
import requests
r = requests.get(
'https://applebot.seoapi.com/v1/validate/?ip=17.241.227.169'
).json()
print(r.get('valid', None))
Example responses
When the URL parameter compact is missing or has a value of 0 (zero) the API returns a JSON response with a queried IP address, query timestamp and boolean if the IP address validates.
Example 1: JSON response
{
"ip": "17.241.227.169",
"timestamp": 1615471876.25665,
"valid": true
}
Example 2: JSON response
{
"ip": "127.0.0.1",
"timestamp": 1615471876.25665,
"valid": false
}
When the URL parameter compact is present and has a value of 1 (one) the API returns a plain text response with a boolean if the IP address validates.
Example 3: plain text (compact) response
true
Example 4: plain text (compact) response
false
Latest IP addresses added
- 17.241.227.169
- 17.241.227.169
- 17.22.245.143
- 17.241.75.191
- 17.241.75.191
- 17.22.237.178
- 17.241.227.125
- 17.246.15.174
- 17.241.227.125
- 17.246.23.150
- 17.246.15.34
- 17.22.253.166
- 17.241.227.38
- 17.22.245.32
- 17.22.237.241
- 17.22.253.16
- 17.241.75.81
- 17.241.75.72
- 17.246.15.116
- 17.22.237.166
- 17.241.227.45
- 17.246.23.132
- 17.241.219.143
- 17.241.219.48
Disclaimer
The data shown on this website is automatically collected from multiple sources, mostly websites and domains under the control of ex-Google engineer Fili. The SEO APIs on this website are under constant development and improvements will be added over time.
Any data and/or query submitted to this website or its APIs are only used to verify whether an IP address is associated with a known search bot. When not, the IP address (or any other submitted data) is completely disregarded and ignored. Only after an IP address is separately confirmed to be a search bot IP address, the IP address is anonymously stored for future queries.
Bugs will happen. Despite best efforts to maintain the code base and data quality, no guarantees can or will be given. Data may be incomplete and/or errors may occur. This is a personal website and for-fun project. Use at your own risk.