sports_licenseSports federation licence
Check the licence is valid on the event date and belongs to the athlete.
- Category
- Sport
- Country
- International
- Extracted fields
- 7 fields
- Cost
- 1 credit
sports_licensespecimen- Holder name
- Holder ID number
- Federation
- Licence number
- Season
- Category
- Valid until
Every federation has its own format. Constaia extracts federation, number, season, category and validity, and checks the holder and validity on the date you set.
- Useful for open events where the price depends on holding a licence.
What it checks
- NIF/NIE check letter. The check character is recomputed (mod 23).
- Holder. Name, number or date of birth match what you expect.
- Validity. Not expired on the reference date.
Extracted fields
- Holder name
holder_name - Holder ID number
holder_id - Federation
federation - Licence number
license_number - Season
season - Category
category - Valid until
valid_until
Where it is used
Sample request
curl https://api.constaia.com/v1/analyze \
-H "Authorization: Bearer $CONSTAIA_API_KEY" \
-F "file=@document.pdf" \
-F 'options={
"expect": "sports_license",
"checks": {
"not_expired": true,
"reference_date": "2027-03-14",
"holder": {
"full_name": "Laura Martín Ruiz"
}
},
"storage": "none"
}'Sample response
Fictitious data. Shortened response.
200 OK · application/json
{
"id": "an_01J9Z3K8QW4T6Y2B7N5M1R0PXC",
"object": "analysis",
"status": "completed",
"livemode": false,
"document": {
"type": "sports_license",
"label": "Sports federation licence",
"confidence": 0.97
},
"verdict": {
"expected": [
"sports_license"
],
"match": true,
"status": "valid",
"reasons": [
{
"code": "type_match",
"severity": "info",
"message": "The document is: Sports federation licence."
}
]
},
"fields": {
"holder_name": {
"value": "LAURA MARTÍN RUIZ",
"confidence": 0.99,
"validated": true
},
"holder_id": {
"value": "87654321X",
"confidence": 0.98,
"validated": null
},
"federation": {
"value": "Federación de Montaña",
"confidence": 0.97,
"validated": null
},
"license_number": {
"value": "A-2027-004512",
"confidence": 0.96,
"validated": null
},
"season": {
"value": "2027",
"confidence": 0.99,
"validated": null
},
"category": {
"value": "Senior",
"confidence": 0.98,
"validated": null
},
"valid_until": {
"value": "2027-12-31",
"confidence": 0.97,
"validated": null
}
},
"checks": [
{
"code": "holder_match",
"passed": true,
"message": "The holder matches."
},
{
"code": "not_expired",
"passed": true,
"message": "Valid on the reference date."
}
],
"warnings": [],
"storage": {
"mode": "none",
"file_deleted_at": "2026-09-29T10:00:02Z",
"expires_at": null
},
"usage": {
"credits": 1,
"pages": 1
}
}FAQ
Does Constaia prove the document is authentic?
No. It checks the type, data consistency and your rules, and flags signals such as a possible edit or a screen photo. That does not prove authenticity.
Is a copy of the document kept?
No, unless you ask for it. With storage "none" (the default) the file is deleted when the analysis ends.
Other documents
And for the record…
Create your account, copy the test key and validate your first document in five minutes.