Skip to content

Status API

Philip Helger edited this page Sep 10, 2021 · 9 revisions

The status API was introduced in v5.0.6 upon request #73. It adds the relative URL /smp-status/ to the SMP server to query certain configuration settings. It MUST be accessed with HTTP GET and the trailing slash is important. The optional URL parameter disable-long-running of type boolean (since v5.4.0) can be used to explicitly disable the execution of all long running actions in the status determination (such as the database connection status). The response is a UTF-8 encoded JSON document with MIME type application/json.

The status API can be disabled via the Configuration parameter smp.status.enabled. If it is disabled, still a JSON is returned but with the constant output { "status.enabled": false }.

The SQL specific elements of the status API can be disabled via the Configuration parameter smp.status.sql.enabled.

Example output

Here's example output from a development configuration:

{
    "status.datetime": "2019-01-01T18:55:22.933Z",
    "version.smp": "5.1.0-SNAPSHOT",
    "build.timestamp": "2019-01-01T16:48:31+0000",
    "version.java": "1.8.0_152",
    "global.debug": true,
    "global.production": false,
    "smp.backend": "xml",
    "smp.mode": "test",
    "smp.resttype": "peppol",
    "smp.identifiertype": "simple",
    "smp.id": "TEST-SMP-ID1",
    "smp.writable-rest-api.enabled": true,
    "smp.publicurl": "http://smp.example.org",
    "smp.forceroot": true,
    "smp.sml.enabled": false,
    "smp.sml.needed": true,
    "smp.sml.url": "https://acc.edelivery.tech.ec.europa.eu/edelivery-sml/manageparticipantidentifier",
    "smp.pd.enabled": true,
    "smp.pd.needed": true,
    "smp.pd.auto-update": true,
    "smp.pd.hostname": "https://directory.peppol.eu",
    "smp.certificate.configuration-valid": true,
    "smp.certificate.issuer": "CN=PEPPOL SERVICE METADATA PUBLISHER TEST CA,OU=FOR TEST PURPOSES ONLY,O=NATIONAL IT AND TELECOM AGENCY,C=DK",
    "smp.certificate.subject": "CN=SMP_2000000309,O=Bundesrechenzentrum GmbH,C=AT",
    "smp.certificate.expired": false,
    "proxy.http.configured": false,
    "proxy.https.configured": false,
    "proxy.username.configured": false
}

MongoDB backend specific properties

Currently no such properties exist

SQL backend specific properties

  • smp.sql.target-database (since 5.3.0-RC5) - the configured database system (MySQL, PostgreSQL, ...)
  • smp.sql.db.connection-possible (since 5.4.0) - true if the database connection can currently be established, false if not

XML backend specific properties

Currently no such properties exist