Difference between revisions of "API Access"

From Anime Characters Database Wiki
Jump to navigation Jump to search
(Added information and changed some wording.)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Do you have a project that could benefit from the data on Anime Characters Database? As a way to help pay the server bills, I offer my services to develop a custom API to suit for your needs for a small fee.
 
[[Contact Rei]] for more info.
 
 
[http://www.animecharactersdatabase.com/api_series_characters.php Current API Tools]
 
 
 
==How Not To Get Banned==
 
==How Not To Get Banned==
  
===First, you need to set a HTTP_USER_AGENT for the tool you will be accessing ACDB from.===
+
===First: Set a HTTP_USER_AGENT for the tool you will be accessing ACDB from.===
 
 
You will get errors like ( 402 Payment Required ) if Python,Perl,etc is in your user agent.
 
  
 +
If Python,Perl,etc is in your user agent, you will get errors like
 +
( 402 Payment Required )
 
If you leave it with the default, you will be joining a pool of people who also left it default, and together may pose a DDoS threat. This is why I auto ban curl/python/wget any any other popular tool.
 
If you leave it with the default, you will be joining a pool of people who also left it default, and together may pose a DDoS threat. This is why I auto ban curl/python/wget any any other popular tool.
  
To safely check your user agent, visit this page: https://www.animecharactersdatabase.com/vars.php
+
To safely check your user agent, visit this page:  
 +
https://www.animecharactersdatabase.com/vars.php
  
===Second, you need to rate limit your requests.===
+
===Second: Rate limit your requests.===
 
Respectfully, limit your bot to 1 request per second.
 
Respectfully, limit your bot to 1 request per second.
  
Our nginx.conf limits as of January 20th 2021 are:
+
==Current API tools==
limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;
+
[http://www.animecharactersdatabase.com/api_series_characters.php Current API Tools]
limit_req_zone $server_name zone=fast:10m rate=90r/s;
+
==Characters==
limit_req zone=one burst=10;
+
[https://www.animecharactersdatabase.com/hosted/characters.sql.gz Characters API]
limit_req zone=fast burst=200;
+
==Titles==
 
+
[https://www.animecharactersdatabase.com/hosted/publishers.sql.gz Titles API]
 +
==Assignments==
 +
[https://www.animecharactersdatabase.com/hosted/assignments.sql.gz Assignments API]
 +
==License==
 +
[https://opendatacommons.org/licenses/odbl/summary/index.html Open Database License - Terms of Legal Use]
 
==Changes==
 
==Changes==
 
  January 20th 2021
 
  January 20th 2021
When requesting birthday's character_image now returns the full sized character image, and character_thumb has been added to return the character thumb instead.
+
When requesting birthdays
 +
*character_image now returns the full sized character image
 +
*character_thumb has been added to return the character thumb instead

Latest revision as of 20:31, 20 July 2024

How Not To Get Banned[edit]

First: Set a HTTP_USER_AGENT for the tool you will be accessing ACDB from.[edit]

If Python,Perl,etc is in your user agent, you will get errors like

( 402 Payment Required ) 

If you leave it with the default, you will be joining a pool of people who also left it default, and together may pose a DDoS threat. This is why I auto ban curl/python/wget any any other popular tool.

To safely check your user agent, visit this page:

https://www.animecharactersdatabase.com/vars.php

Second: Rate limit your requests.[edit]

Respectfully, limit your bot to 1 request per second.

Current API tools[edit]

Current API Tools

Characters[edit]

Characters API

Titles[edit]

Titles API

Assignments[edit]

Assignments API

License[edit]

Open Database License - Terms of Legal Use

Changes[edit]

January 20th 2021

When requesting birthdays

  • character_image now returns the full sized character image
  • character_thumb has been added to return the character thumb instead