Prosopo Image Solving
Solve Prosopo CAPTCHA image challenges with privacy-preserving blockchain technology. Our AI provides automated solving with 99.6% accuracy.
Prosopo is a decentralized, privacy-focused CAPTCHA solution built on blockchain technology. Unlike traditional CAPTCHAs, Prosopo uses a distributed network of providers and doesn't rely on centralized servers. It presents users with image-based challenges that our AI can automatically solve.
Captcha Type
Use the following captcha type identifier in your API requests:
"type": "PROSOPO_IMAGE"
Request Format
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
auth.token |
string | required | Your API key |
captcha.type |
string | required | Must be "PROSOPO_IMAGE" |
captcha.metadata.siteUrl |
string | required | URL where captcha appears |
captcha.payload.images |
array | required | Array of base64-encoded images |
captcha.payload.question |
string | required | The question text |
Example Request
const response = await fetch('https://solver-api.mydisct.com/createTask', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'apikey': 'YOUR_API_KEY'
},
body: JSON.stringify({
auth: { token: 'YOUR_API_KEY' },
context: { source: 'api', version: '1.0.0' },
captcha: {
type: 'PROSOPO_IMAGE',
metadata: {
siteUrl: 'https://example.com'
},
payload: {
images: ['base64_image_1'],
question: 'Select all images with cars'
}
}
})
});
const data = await response.json();
console.log('Task ID:', data.task.id);
Python Example
import requests
import time
def solve_prosopo_image(images, question, site_url, api_key):
"""
Solve Prosopo image challenge
Args:
images: List of base64-encoded images
question: Question text
site_url: URL where captcha appears
api_key: Your MyDisct Solver API key
Returns:
List of selected indices
"""
# Step 1: Create task
create_response = requests.post(
'https://solver-api.mydisct.com/createTask',
headers={
'Content-Type': 'application/json',
'apikey': api_key
},
json={
'auth': {'token': api_key},
'context': {'source': 'api', 'version': '1.0.0'},
'captcha': {
'type': 'PROSOPO_IMAGE',
'metadata': {'siteUrl': site_url},
'payload': {
'images': images,
'question': question
}
}
}
)
create_data = create_response.json()
if not create_data['success']:
raise Exception(create_data['error']['message'])
task_id = create_data['task']['id']
# Step 2: Poll for result
while True:
time.sleep(3)
result_response = requests.post(
'https://solver-api.mydisct.com/fetchResult',
headers={
'Content-Type': 'application/json',
'apikey': api_key
},
json={'taskId': task_id}
)
result_data = result_response.json()
if result_data['task']['status'] == 'completed':
return result_data['task']['result']['answers']
elif result_data['task']['status'] == 'failed':
raise Exception('Prosopo solving failed')
# Usage
solution = solve_prosopo_image(
images=['base64_image_1'],
question='Select all images with cars',
site_url='https://example.com',
api_key='YOUR_API_KEY'
)
print(f'Solution: {solution}')
Response Format
Create Task Response (Processing)
{
"success": true,
"service": "MyDisct Solver",
"message": "Captcha is being processed",
"task": {
"id": "MyDisctSolver_abc123def456",
"status": "processing"
}
}
Fetch Result Response (Completed)
{
"success": true,
"service": "MyDisct Solver",
"message": "Captcha solved successfully",
"task": {
"id": "MyDisctSolver_abc123def456",
"status": "completed",
"result": {
"answers": [0, 2, 5, 7],
"timestamp": "2025-11-05T12:34:56.789Z"
}
}
}
The answers array contains the indices of images that should be selected.
Indices start from 0 (top-left) for grid layouts.
Best Practices
- Include the exact question text as displayed
- Use high-quality images without compression
- Prosopo challenges are typically simple grid selections
- Poll every 3 seconds for results
Common Issues
Solution: Prosopo uses a blockchain-based network which may have variable response times. Be patient during peak network congestion.
Solution: Prosopo's decentralized nature means interface may vary by implementation. Ensure you're capturing the correct image elements.