Skip to main content

Declarative Function

  Korest Docs also supports declarative functions for API specification.

  Below is an example of how to define documentation using a declarative function.

documentation("identifier") {
request(HttpMethod.GET, "/example/{id}") {
pathVariable("id", "id", 1)
}

requestHeader {
header("Authorization", "Access Token", "Bearer access-token")
}

requestParameter {
queryParameter("param1", "parameter 1", "value1")
}

responseField {
field("code", "Response Code", ReturnCode.SUCCESS.code)
field("message", "Response Message", ReturnCode.SUCCESS.message)
field("data", "Response Data", data)
optionalField("data.message", "message", data.message)
field("data.userId", "User Id", data.userId)
}
}

  When using declarative functions to define APIs, we can focus solely on the specification itself, significantly improving code readability. These declarative functions support not only basic HTTP requests but also multipart requests.

  The following is an example of specifying a multipart request API using declarative functions.

documentation("junit-multipart-post-function") {
multipart(HttpMethod.POST, "/example")

requestPart {
part("images", "Images", image1)
part("images", "Images", image2)
}
}