API Documentation
This API allows users to submit tasks containing one or more hashes for processing. Below you'll find details on how to use the API, including required parameters, accepted values, and response formats.
Endpoint
POST https://api.onlinehashcrack.com/v2
Request Parameters
All parameters should be included in the JSON body of the POST request.
Parameter | Type | Description | Required |
---|---|---|---|
api_key |
String | The free API key starts with sk_ . Generated from this page. |
Yes |
agree_terms |
String | Confirmation that you agree to the Terms & Conditions. Allowed values are yes or no . |
Yes |
action |
String | Allowed values are list_tasks or add_tasks . Default to add_tasks if not provided.list_tasks will just list current tasks in JSON format. |
No |
algo_mode |
Integer | An integer specifying the algorithm mode, which can be found here. Eg: 0 for MD5. | Yes if add_tasks |
hashes |
Array of strings | An array of hash strings. Maximum of 50 hashes. | Yes if add_tasks |
receive_email |
String | Optional parameter to receive an email confirmation after each hash added. Allowed values are yes or no . Default: yes . |
No |
Terms & Conditions Agreement
Note: By setting
agree_terms
to "yes"
, you confirm that you have read and agree to our Terms & Conditions of using this API.
Example Request
// Add new tasks
curl -X POST "https://api.onlinehashcrack.com/v2" \
-H "Content-Type: application/json" \
-d '{
"api_key": "sk_XXX",
"agree_terms": "yes",
"algo_mode": 0,
"hashes": ["8124BC0A5335C27F086F24BA2C7A4810"]
}'
// or List my tasks
curl -X POST "https://api.onlinehashcrack.com/v2" \
-H "Content-Type: application/json" \
-d '{
"api_key": "sk_XXX",
"agree_terms": "yes",
"action ": "list_tasks"
}'
import requests
url = "https://api.onlinehashcrack.com/v2"
headers = {"Content-Type": "application/json"}
data = {
"api_key": "sk_XXX",
"agree_terms": "yes",
"algo_mode": 0,
"hashes": ["8124BC0A5335C27F086F24BA2C7A4810"]
}
response = requests.post(url, json=data, headers=headers)
print(response.json())
$url = "https://api.onlinehashcrack.com/v2";
$data = [
"api_key" => "sk_XXX",
"agree_terms" => "yes",
"algo_mode" => 0,
"hashes" => ["8124BC0A5335C27F086F24BA2C7A4810"]
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
require 'net/http'
require 'json'
require 'uri'
uri = URI.parse("https://api.onlinehashcrack.com/v2")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
headers = { 'Content-Type' => 'application/json' }
data = {
api_key: "sk_XXX",
agree_terms: "yes",
algo_mode: 0,
hashes: ["8124BC0A5335C27F086F24BA2C7A4810"]
}
response = http.post(uri.path, data.to_json, headers)
puts response.body
package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
)
func main() {
url := "https://api.onlinehashcrack.com/v2"
data := map[string]interface{}{
"api_key": "sk_XXX",
"agree_terms": "yes",
"algo_mode": 0,
"hashes": []string{"8124BC0A5335C27F086F24BA2C7A4810"},
}
jsonData, _ := json.Marshal(data)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
fmt.Println("Error:", err)
return
}
defer resp.Body.Close()
var result map[string]interface{}
json.NewDecoder(resp.Body).Decode(&result)
fmt.Println(result)
}
const axios = require('axios');
const url = 'https://api.onlinehashcrack.com/v2';
const headers = { 'Content-Type': 'application/json' };
const data = {
api_key: 'sk_XXX',
agree_terms: 'yes',
algo_mode: 0,
hashes: ['8124BC0A5335C27F086F24BA2C7A4810']
};
axios.post(url, data, { headers })
.then(response => console.log(response.data))
.catch(error => console.error('Error:', error));
Response Format
The API returns a JSON response with the following structure:
Success Response
{
"success": true,
"message": "Tasks received successfully.",
"task_count": <number of tasks>
}
Error Response
{
"success": false,
"message": "Description of the error.",
}
Response Codes
HTTP Status Code | Description |
---|---|
200 OK | Request was successful. |
400 Bad Request | Validation errors occurred. Check your parameters and the response description. |
401 Unauthorized | Invalid API key provided. |
405 Method Not Allowed | Invalid request method. Only POST requests are allowed. |
429 Too Many Requests | Rate limit exceeded. Please try again later or upgrade your Profile. |
500 Internal Server Error | An error occurred on the server. |
Rate Limiting
To prevent misuse, the API enforces rate limiting based on the verification level of your Tier profile (see your Profile)
- Maximum of 30 requests per hour per API key for Tier 1.
- Maximum of 100 requests per hour per API key for Tier 2.
- Maximum of 200 requests per hour per API key for Tier 3.
- Contact us if you need more or have specific needs.
If you exceed this limit, you will receive a 429 Too Many Requests
response.
{
"success": false,
"message": "Rate limit exceeded. Please try again later or upgrade your Profile."
}