Application Programming Interface
Introduction
This API allows to retrieve daily validation results from our databases. It describes a web
service
which can be called via HTTP POST with a JSON body, and returns a JSON output.
The URL for the web service is:
https://voparis-validation-reports.obspm.fr/validation/api_v1
Input Format
To retrieve validation results for several ivoids
{
"action": "query_services",
"mode": "multiple_ivoids",
"protocol": "ConeSearch"|"SIA"|"SSA"|"TAP"|"EPN-TAP"|"SIAv2"|"all",
"ivoids" : ["array","of","ivoids"]
}
To retrieve validation results by ivoid substring
{
"action": "query_services",
"mode": "ivoid_substring",
"protocol": "ConeSearch"|"SIA"|"SSA"|"TAP"|"EPN-TAP"|"SIAv2"|"all",
"ivoid_substring": "substring (at least 3 characters)"
}
Optional input parameters
"include_aux_services": "yes"|"no" => "yes" to include all services, not only those with "aux" in capability's standard_id. Default is "no".
"vot_ok": "yes"|"no"|""|"all" => to only include services with valid/invalid/no result VOT. Default is "all".
"spec_ok": "yes"|"no"|""|"all" => to only include services with valid/invalid/no result Specification. Default is "all".
Notes:
- vot_ok and spec_ok conditions are combined with AND.
- Specifying vot_ok = "all" and spec_ok="all" will return all services.
To retrieve validation results and error details
Same as above, but add suffix
_errors to the action parameter.
Output Format
{
"status": "OK"|"ERROR"
"msg": "error msg in case of status=ERROR",
"date_val_min": "YYY-MM-DD", => minimum validation date used
"nb_services": N, => nb of services found
"services": [
{
"protocol" : "protocol of the service: ConeSearch|SIA|SSA|TAP|EPN-TAP|SIAv2",
"ivoid": "ivoid of the service",
"url": "url of the service",
"title": "title of the service",
"short_name": "short name of the service",
"date": "validation date used",
"vot_ok": "yes"|"no"|"", => was the VOTable returned by the service valid /invalid /no result ?
"spec_ok": "yes"|"no"|"", => was the service compliant/not compliant/no result with its protocol specification ?
"nb_fatal": "N", => nb of fatal errors found
"nb_err": "N", => nb of errors found
"nb_warn": "N", => nb of warnings found
"nb_fail": "N", => nb of failures found
"days_same": "N", => nb of days for which the above results did not change
"standard_id": "standard id of the service"
"validation_url": "a validation URL that can be used to check for errors"
"errors": [ => if input action ends with "_errors" a errors section is available with all the errors found for the service
{
"type": "warning"|"error",
"num": "N", => sequence number of error
"name": "error name",
"msg": "error message",
"section": "test section where error found"
},
...
},
...
]
}
Examples
Retrieve validation results and error details for several ivoids
$ curl -d '{ "action": "query_services_errors", "mode": "multiple_ivoids", "protocol":
"TAP",
"ivoids" : ["ivo://org.gavo.dc/tap","ivo://org.gavo.dc/gcpms/q/data"] }'
https://voparis-validation-reports.obspm.fr/validation/api_v1
Retrieve validation results by ivoid substring
$ curl -d '{ "action": "query_services", "mode": "ivoid_substring", "protocol":
"ConeSearch",
"ivoid_substring": "gavo.dc" }'
https://voparis-validation-reports.obspm.fr/validation/api_v1
Retrieve validation results and error details by ivoid substring, for all protocols, return
all
services including #aux ones
$ curl -d '{ "action": "query_services", "mode": "ivoid_substring", "protocol": "all",
"ivoid_substring" : "gavo.dc", "include_aux_services":"yes" }'
https://voparis-validation-reports.obspm.fr/validation/api_v1
Retrieve validation results by ivoid substring, for all protocols
$ curl -d '{ "action": "query_services", "mode": "ivoid_substring", "protocol": "all",
"ivoid_substring" : "gavo.dc" }'
https://voparis-validation-reports.obspm.fr/validation/api_v1