## 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. - Contact us for other specific needs. Replace the `(base url)` to: | Type | URL | | -- | -- | | Clearnet | `https://karma.crimeflare.eu.org/api/` | | Tor | `https://karma.im5wixghmfmt7gf7wb4xrgdm6byx2gj26zn47da6nwo7xvybgxnqryid.onion/api/` | **To Tor User**: If your browser does not accept Onioncert, please use Clearnet instead. ---- ### 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](http://cloudflare-domains.project.crimeflare.eu.org/). - Also try: [Listed as Cloudflare](https://services.crimeflare.eu.org/is_cloudflare/) website | ? | ? | | -- | -- | | Location | `(base url)is/cloudflare/` | | Request Method | `POST` or `GET` | | 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/`
`curl --http2 https://clearnet/api/is/cloudflare/?ff=www.emsisoft.com,joinmastodon.org,framagit.org` | ---- ### 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](http://antitor-domains.project.crimeflare.eu.org/). | ? | ? | | -- | -- | | Location | `(base url)is/antitor/` | | Request Method | `POST` or `GET` | | 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/`
`curl -x socks5h://127.0.0.1:9050 http://onion/api/is/antitor/?f=www.example.com` | ---- ### Display Cloudflare list location - Get latest URL of the CF list. | ? | ? | | -- | -- | | Location | `(base url)cloudflarelist/` | | Request Method | `GET` | | Input | _None_ | | Output | JSON value as array. | | cURL Example | - |