X-Road (NIIS) Timestamping Services API
resources related to Central Server's Timestamping Services
resources related to Central Server's Timestamping Services
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/x-road-global:x-road-global-timestamping-services-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: X Road Global Timestamping Services API
contact:
email: info@niis.org
name: Nordic Institute for Interoperability Solutions (NIIS)
url: https://github.com/nordic-institute/X-Road-development/#enhancement-requests-and-error-reports
license:
name: MIT
url: https://opensource.org/licenses/MIT
version: '1.0'
description: 'Operations tagged timestamping-services across 4 of this provider''s published API definitions: central-server-admin-openapi.yaml, security-server-admin-openapi.yaml, x-road-global-central-server-admin-openapi.yml, x-road-global-security-server-admin-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- description: basepath for API v1
url: /api/v1
security:
- ApiKeyAuth: []
tags:
- name: timestamping-services
description: resources related to Central Server's Timestamping Services
paths:
/timestamping-services:
get:
description: CS administrator views the approved timestamping services configured for this X-Road instance.
operationId: getTimestampingServices
responses:
'200':
content:
application/json:
schema:
description: array of timestamping services
items:
$ref: '#/components/schemas/TimestampingService'
type: array
uniqueItems: false
description: list of timestamping services
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
summary: get the timestamping services
tags:
- timestamping-services
post:
description: CS administrator adds a timestamping service to the list of approved timestamping services.
operationId: addTimestampingService
requestBody:
content:
multipart/form-data:
schema:
allOf:
- $ref: '#/components/schemas/TimestampingServiceUrl'
- $ref: '#/components/schemas/CostTypeProperty'
- $ref: '#/components/schemas/CertificateFile'
required:
- url
- certificate
- cost_type
description: timestamping service to add
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/TimestampingService'
description: created item
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
summary: add a timestamping service
tags:
- timestamping-services
servers:
- description: basepath for API v1
url: /api/v1
/timestamping-services/{timestamping_service_id}:
parameters:
- $ref: '#/components/parameters/TimestampingServiceIdParam'
delete:
description: CS administrator deletes an approved timestamping service.
operationId: deleteTimestampingService
responses:
'204':
description: timestamping service deletion was successful
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
summary: delete a timestamping service
tags:
- timestamping-services
get:
description: CS administrator views an approved timestamping service's details.
operationId: getTimestampingService
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/TimestampingService'
description: a timestamping service
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
summary: get a timestamping service
tags:
- timestamping-services
patch:
description: CS administrator edits the URL or certificate of a timestamping server.
operationId: updateTimestampingService
requestBody:
content:
multipart/form-data:
schema:
allOf:
- $ref: '#/components/schemas/TimestampingServiceUrl'
- $ref: '#/components/schemas/CostTypeProperty'
- $ref: '#/components/schemas/CertificateFile'
required:
- url
- cost_type
description: updated URL or certificate of the timestamping service
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/TimestampingService'
description: the updated timestamping service
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
summary: update a timestamping service
tags:
- timestamping-services
servers:
- description: basepath for API v1
url: /api/v1
components:
responses:
NotFound:
description: resource requested does not exists
Forbidden:
description: request has been refused
Unauthorized:
description: authentication credentials are missing
InternalServerError:
description: internal server error
BadRequest:
description: request was invalid
schemas:
TimestampingService:
allOf:
- $ref: '#/components/schemas/TimestampingServiceUrl'
- $ref: '#/components/schemas/CostTypeProperty'
- $ref: '#/components/schemas/TimestampingServiceCertificate'
description: timestamping service
properties:
id:
description: unique identifier
example: 123
format: int32
readOnly: true
type: integer
timestamping_interval:
description: timestamping interval in seconds
example: 60
format: int32
type: integer
required:
- id
- timestamping_interval
type: object
CertificateFile:
description: certificate file
properties:
certificate:
description: the certificate file
format: binary
type: string
required:
- certificate
type: object
CertificateDetails:
description: certificate details for any kind of certificate (TLS, auth, sign)
properties:
hash:
description: certificate SHA-256 hash
example: 1234567890ABCDEF
format: text
maxLength: 64
minLength: 1
type: string
issuer_common_name:
description: certificate issuer common name
example: domain.com
format: text
maxLength: 255
minLength: 1
type: string
issuer_distinguished_name:
description: certificate issuer distinguished name
example: issuer123
format: text
maxLength: 255
minLength: 1
type: string
key_usages:
description: certificate key usage array
items:
$ref: '#/components/schemas/KeyUsage'
type: array
uniqueItems: false
not_after:
description: certificate validity not after
example: '2022-01-17T00:00:00.001Z'
format: date-time
maxLength: 24
minLength: 24
type: string
not_before:
description: certificate validity not before
example: '2022-01-17T00:00:00.001Z'
format: date-time
maxLength: 24
minLength: 24
type: string
public_key_algorithm:
description: certificate public key algorithm
example: sha256WithRSAEncryption
format: sha-256
maxLength: 255
minLength: 1
type: string
rsa_public_key_exponent:
description: RSA public key exponent (if RSA key) as an integer
example: 65537
format: int32
type: integer
rsa_public_key_modulus:
description: hex encoded RSA public key modulus (if RSA key)
example: c44421d601...
format: hex
maxLength: 1000
minLength: 1
type: string
ec_public_parameters:
description: EC public key named curve (if EC key)
example: secp256r1(1.2.840.10045.3.1.7)
format: text
maxLength: 255
minLength: 1
type: string
ec_public_key_point:
description: hex encoded EC public key point (if EC key)
example: c44421d601...
format: hex
maxLength: 1000
minLength: 1
type: string
serial:
description: serial number
example: '123456789'
format: text
maxLength: 255
minLength: 1
type: string
signature:
description: hex encoded certificate signature
example: 30af2fdc1780...
format: text
maxLength: 255
minLength: 1
type: string
signature_algorithm:
description: certificate signature algorithm
example: sha256WithRSAEncryption
format: sha-256
maxLength: 255
minLength: 1
type: string
subject_alternative_names:
description: certificate subject alternative names
example: DNS:*.example.org
format: text
maxLength: 1000
minLength: 1
type: string
subject_common_name:
description: certificate subject common name
example: domain.com
format: text
maxLength: 255
minLength: 1
type: string
subject_distinguished_name:
description: certificate subject distinguished name
example: subject123
format: text
maxLength: 255
minLength: 1
type: string
version:
description: version
example: 3
format: int32
type: integer
required:
- issuer_distinguished_name
- issuer_common_name
- subject_distinguished_name
- subject_common_name
- not_before
- not_after
- serial
- version
- signature_algorithm
- signature
- public_key_algorithm
- rsa_public_key_modulus
- rsa_public_key_exponent
- hash
- key_usages
- subject_alternative_names
type: object
KeyUsage:
description: certificate key usage
enum:
- DIGITAL_SIGNATURE
- NON_REPUDIATION
- KEY_ENCIPHERMENT
- DATA_ENCIPHERMENT
- KEY_AGREEMENT
- KEY_CERT_SIGN
- CRL_SIGN
- ENCIPHER_ONLY
- DECIPHER_ONLY
example: NON_REPUDIATION
type: string
CostType:
description: cost type for services like TSP-s and OCSP responders
enum:
- FREE
- PAID
- UNDEFINED
example: FREE
type: string
TimestampingServiceCertificate:
description: timestamping service certificate
properties:
certificate:
$ref: '#/components/schemas/CertificateDetails'
required:
- certificate
type: object
TimestampingServiceUrl:
description: timestamping service url
properties:
url:
description: url of the timestamping service
example: http://dev.xroad.rocks:8899
format: url
maxLength: 255
minLength: 1
type: string
required:
- url
type: object
CostTypeProperty:
type: object
description: Object containing cost_type field of CostType enum
properties:
cost_type:
$ref: '#/components/schemas/CostType'
required:
- cost_type
TimestampingService_2:
type: object
description: timestamping services
required:
- name
- url
- cost_type
properties:
name:
type: string
format: text
description: name of the time stamping service
example: X-Road Test TSA CN
minLength: 1
maxLength: 255
url:
type: string
format: url
description: url of the time stamping service
example: http://dev.xroad.rocks:123
minLength: 1
maxLength: 255
cost_type:
$ref: '#/components/schemas/CostType'
TimestampingService_3:
type: object
description: timestamping services
required:
- name
- url
- cost_type
properties:
name:
type: string
format: text
description: name of the time stamping service
example: X-Road Test TSA CN
minLength: 1
maxLength: 255
url:
type: string
format: url
description: url of the time stamping service
example: http://dev.xroad.rocks:123
minLength: 1
maxLength: 255
cost_type:
$ref: '#/components/schemas/CostType'
parameters:
TimestampingServiceIdParam:
in: path
name: timestamping_service_id
description: unique identifier of the timestamping service
required: true
schema:
format: int32
minLength: 1
type: integer
securitySchemes:
ApiKeyAuth:
description: X-Road-ApiKey token=<api key>
in: header
name: Authorization
type: apiKey
x-refined-from:
- central-server-admin-openapi.yaml
- security-server-admin-openapi.yaml
- x-road-global-central-server-admin-openapi.yml
- x-road-global-security-server-admin-openapi.yml