Developer reference
Wafertune API
REST API. JSON in, JSON out. Authentication via API key.
Authentication
API keys and scopes
All API requests require a bearer token in the Authorization header.
Authorization: Bearer wft_sk_live_xxxxxxxxxxxx # Pilot tier key format wft_sk_pilot_xxxxxxxx # Production tier key format wft_sk_live_xxxxxxxxxx
RBAC scopes
| Scope | Permission |
|---|---|
| classify | Single wafer map classification (POST /v1/classify) |
| batch | Multi-wafer batch submission (POST /v1/batch) |
| read:patterns | Read pattern taxonomy (GET /v1/patterns) |
| manage | Key rotation, webhook config, usage stats |
Pilot tier keys include classify + read:patterns. Production tier keys can be scoped per team.
Endpoints
Available API endpoints
Base URL: https://api.wafertune.com
POST
/v1/classify
Single wafer map classification
POST
/v1/batch
Multi-wafer batch (up to 100 maps)
GET
/v1/patterns
List all 180+ pattern classes
GET
/v1/patterns/{class_id}
Single pattern class detail
GET
/v1/status
Service health check
Code examples
Request and response examples
Python SDK
import wafertune client = wafertune.Client( api_key="wft_sk_pilot_xxxx" ) result = client.classify( wafer_id="LOT42_W03", file_path="./wafer_W03.stdf" ) for pattern in result.pattern_classes: print(pattern.class_id, pattern.confidence)
curl
curl -X POST \ https://api.wafertune.com/v1/classify \ -H "Authorization: Bearer wft_sk_pilot_xxxx" \ -H "Content-Type: application/json" \ -d '{ "wafer_id": "LOT42_W03", "map_data": "'$(base64 wafer.stdf)'", "format": "stdf" }'
Error codes
| Code | Meaning |
|---|---|
| 400 | Malformed request body or unsupported format |
| 401 | Invalid or expired API key |
| 422 | Valid request but wafer map data could not be parsed |
| 429 | Rate limit exceeded — retry with backoff |
| 503 | Temporary capacity issue — safe to retry |
Libraries
SDK and integration options
py
Python SDK
pip install wafertune — primary SDK with STDF parsing, async support, typed responses
R
R Package
install.packages("wafertune") — for statistical analysis workflows common in process engineering
curl
Raw HTTP
Plain REST API — works from any language, shell script, or automation tool without any library dependency
Rate limits
Usage limits by tier
| Tier | Per month | Per minute | Batch size |
|---|---|---|---|
| Pilot | 500 classifications | 10 requests | 10 maps |
| Production | Custom (quoted) | 100 requests | 100 maps |