CSAF Validator Service

This is a service to validate documents against the CSAF standard.
More information: https://github.com/secvisogram/csaf-validator-service
Contact Info: secvisogram@bsi.bund.de
Version: 2.0.26
BasePath:
MIT
https://github.com/secvisogram/csaf-validator-service/blob/main/LICENSE

Access

Methods

[ Jump to Models ]

Table of Contents

Default

Default

Up
get /api/v1/tests
Retrieve all tests. (apiV1TestsGet)
This endpoint is intended to be used to discover all available tests. For each tests it lists the name as well as the preset the test belongs to.

Return type

array[_api_v1_tests_get_200_response_inner]

Example data

Content-Type: application/json
[ {
  "name" : "name",
  "preset" : "preset"
}, {
  "name" : "name",
  "preset" : "preset"
} ]

Produces

This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.

Responses

200

Default Response

Up
post /api/v1/validate
Validate document. (apiV1ValidatePost)
This endpoint is intended to validate a document against the specified tests. In the list of tests provide at least one object, where each object is used to run either a single test or an entire preset. For 'name' provide the test's or the preset's name, and as 'type' provide accordingly either 'test' or 'preset'. For the value of the property 'document' just provide the json of your CSAF document.

Consumes

This API call consumes the following media types via the Content-Type request header:

Request body

_api_v1_validate_post_request _api_v1_validate_post_request (required)
Body Parameter

Return type

_api_v1_validate_post_200_response

Example data

Content-Type: application/json
{
  "tests" : [ {
    "warnings" : [ {
      "instancePath" : "instancePath",
      "message" : "message"
    }, {
      "instancePath" : "instancePath",
      "message" : "message"
    } ],
    "isValid" : true,
    "name" : "name",
    "errors" : [ {
      "instancePath" : "instancePath",
      "message" : "message"
    }, {
      "instancePath" : "instancePath",
      "message" : "message"
    } ],
    "infos" : [ {
      "instancePath" : "instancePath",
      "message" : "message"
    }, {
      "instancePath" : "instancePath",
      "message" : "message"
    } ]
  }, {
    "warnings" : [ {
      "instancePath" : "instancePath",
      "message" : "message"
    }, {
      "instancePath" : "instancePath",
      "message" : "message"
    } ],
    "isValid" : true,
    "name" : "name",
    "errors" : [ {
      "instancePath" : "instancePath",
      "message" : "message"
    }, {
      "instancePath" : "instancePath",
      "message" : "message"
    } ],
    "infos" : [ {
      "instancePath" : "instancePath",
      "message" : "message"
    }, {
      "instancePath" : "instancePath",
      "message" : "message"
    } ]
  } ],
  "isValid" : true
}

Produces

This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.

Responses

200

Default Response _api_v1_validate_post_200_response

Models

[ Jump to Methods ]

Table of Contents

  1. _api_v1_tests_get_200_response_inner -
  2. _api_v1_validate_post_200_response -
  3. _api_v1_validate_post_200_response_tests_inner -
  4. _api_v1_validate_post_200_response_tests_inner_errors_inner -
  5. _api_v1_validate_post_200_response_tests_inner_warnings_inner -
  6. _api_v1_validate_post_request -
  7. _api_v1_validate_post_request_tests_inner -
  8. _api_v1_validate_post_request_tests_inner_oneOf -
  9. _api_v1_validate_post_request_tests_inner_oneOf_1 -

_api_v1_tests_get_200_response_inner - Up

name
preset

_api_v1_validate_post_200_response - Up

isValid
tests

_api_v1_validate_post_200_response_tests_inner - Up

errors
warnings
infos
isValid
name

_api_v1_validate_post_200_response_tests_inner_errors_inner - Up

instancePath
message (optional)

_api_v1_validate_post_200_response_tests_inner_warnings_inner - Up

instancePath
message

_api_v1_validate_post_request - Up

tests
document

_api_v1_validate_post_request_tests_inner - Up

name
Enum:
schema
mandatory
optional
informative
basic
extended
full
type
Enum:
test
preset

_api_v1_validate_post_request_tests_inner_oneOf - Up

name
Enum:
csaf_2_0
csaf_2_0_strict
mandatoryTest_6_1_1
mandatoryTest_6_1_10
mandatoryTest_6_1_11
mandatoryTest_6_1_12
mandatoryTest_6_1_13
mandatoryTest_6_1_14
mandatoryTest_6_1_15
mandatoryTest_6_1_16
mandatoryTest_6_1_17
mandatoryTest_6_1_18
mandatoryTest_6_1_19
mandatoryTest_6_1_2
mandatoryTest_6_1_20
mandatoryTest_6_1_21
mandatoryTest_6_1_22
mandatoryTest_6_1_23
mandatoryTest_6_1_24
mandatoryTest_6_1_25
mandatoryTest_6_1_26
mandatoryTest_6_1_27_1
mandatoryTest_6_1_27_10
mandatoryTest_6_1_27_11
mandatoryTest_6_1_27_2
mandatoryTest_6_1_27_3
mandatoryTest_6_1_27_4
mandatoryTest_6_1_27_5
mandatoryTest_6_1_27_6
mandatoryTest_6_1_27_7
mandatoryTest_6_1_27_8
mandatoryTest_6_1_27_9
mandatoryTest_6_1_28
mandatoryTest_6_1_29
mandatoryTest_6_1_3
mandatoryTest_6_1_30
mandatoryTest_6_1_31
mandatoryTest_6_1_32
mandatoryTest_6_1_33
mandatoryTest_6_1_4
mandatoryTest_6_1_5
mandatoryTest_6_1_6
mandatoryTest_6_1_7
mandatoryTest_6_1_8
mandatoryTest_6_1_9
optionalTest_6_2_1
optionalTest_6_2_10
optionalTest_6_2_11
optionalTest_6_2_12
optionalTest_6_2_13
optionalTest_6_2_14
optionalTest_6_2_15
optionalTest_6_2_16
optionalTest_6_2_17
optionalTest_6_2_18
optionalTest_6_2_19
optionalTest_6_2_2
optionalTest_6_2_20
optionalTest_6_2_3
optionalTest_6_2_4
optionalTest_6_2_5
optionalTest_6_2_6
optionalTest_6_2_7
optionalTest_6_2_8
optionalTest_6_2_9
informativeTest_6_3_1
informativeTest_6_3_10
informativeTest_6_3_11
informativeTest_6_3_2
informativeTest_6_3_3
informativeTest_6_3_4
informativeTest_6_3_5
informativeTest_6_3_6
informativeTest_6_3_7
informativeTest_6_3_8
informativeTest_6_3_9
type
Enum:
test

_api_v1_validate_post_request_tests_inner_oneOf_1 - Up

name
Enum:
schema
mandatory
optional
informative
basic
extended
full
type
Enum:
preset