## Karma API
- Operated by `Crimeflare #Karma` with `No log` policy.
- There is a rate-limit and anti-attack system so please be nice.
There are many wide-range APIs live on Karma.
In this page we explain some of read-only APIs.
Replace the `(base url)` to:
| Type | URL |
| -- | -- |
| Clearnet | `https://karma.crimeflare.eu.org/api/` |
| Tor | `http://karma.im5wixghmfmt7gf7wb4xrgdm6byx2gj26zn47da6nwo7xvybgxnqryid.onion/api/` |
----
### Cloudflare Domains Lookup
- List data is almost identical to [this git data](http://crimeflare.eu.org).
- For looking up domain's existence as a [MITM domain](../../cloudflare_users/domains/README.md).
- Also try: `Listed as Cloudflare` website
- [Clearnet](https://karma.crimeflare.eu.org/api/is/cloudflare/html/)
- [Tor](http://karma.im5wixghmfmt7gf7wb4xrgdm6byx2gj26zn47da6nwo7xvybgxnqryid.onion/api/is/cloudflare/html/)
| ? | ? |
| -- | -- |
| Location | `(base url)is/cloudflare/` |
| Request Method | `POST` |
| Input | **Single Question**
`f` or `u` is required. `ignore_cfowned` is optional.
`f` FQDN (e.g. `www.google.com`)
`u` URL (e.g. `https://www.google.com/`)
`ignore_cfowned` Existence (If set, return FALSE when the domain is owned by CloudFlare Inc.)
**Multiple Questions** (max 200 domains)
`ff` is required. `ignore_cfowned` is optional.
`ff` List of FQDN separated by `,` (e.g. `www.google.com,blog.emsisoft.com,youtu.be`)
`ignore_cfowned` Existence (If set, return FALSE when the domain is owned by CloudFlare Inc.) |
| Output | JSON value as array.
**Single Question**
If 2nd value(j[1]) is true then the input is Cloudflare.
`[false,false]` (Error or not Cloudflare)
`[true,false]` (Not Cloudflare)
`[true,true]` (Cloudflare)
**Multiple Questions**
Array pair of `question:true\|false`.
`{'example.com':false,...}` (Not Cloudflare)
`{'example.com':true,...}` (Cloudflare) |
| cURL Example | `curl -X POST -F 'f=www.example.com' -k --http2 https://clearnet/api/is/cloudflare/`
`curl -x socks5h://127.0.0.1:9050 -X POST -F 'f=www.example.com' http://onion/api/is/cloudflare/`
`curl -X POST -F 'ff=www.emsisoft.com,joinmastodon.org,framagit.org' -k --http2 https://clearnet/api/is/cloudflare/` |
----
### Anti-Tor Lookup
- List data is almost identical to [this git data](http://crimeflare.eu.org).
- For looking up website's existence in the [known Anti-Tor list](../../anti-tor_users/domains/README.md).
| ? | ? |
| -- | -- |
| Location | `(base url)is/antitor/` |
| Request Method | `POST` |
| Input | `f` is required.
`f` FQDN (e.g. `www.google.com`) |
| Output | JSON value as array. If 2nd value(j[1]) is true then the input is AntiTor.
`[false,false]` (Error or not AntiTor)
`[true,false]` (Not AntiTor)
`[true,true]` (AntiTor) |
| cURL Example | `curl -X POST -F 'f=www.example.com' -k --http2 https://clearnet/api/is/antitor/`
`curl -x socks5h://127.0.0.1:9050 -X POST -F 'f=www.example.com' http://onion/api/is/antitor/` |
----
### Get Data
- Get data in simple format.
- For your automation use.
| ? | ? |
| -- | -- |
| Location | `(base url)listdata/` |
| Request Method | `GET` |
| Input | `name` is required.
`name` string (e.g. `cf_fediverse`)
possible values:
`cf_fediverse` JSON [Cloudflared Fediverse](../cloudflared/social/fediverse.md) Domain
`cf_fediverse_CSV` Text
`cf_fediverse_FQDN` JSON Cloudflared Fediverse FQDN
`cf_fediverse_FQDN_CSV` Text
|
| Output | JSON or Text |
| cURL Example | `curl -k --http2 https://clearnet/api/listdata/?name=cf_fediverse` |