Scala AI detector quickstart
Send at least 150 characters for a more reliable signal. The response score ranges from 0 (more likely human-written) to 1 (more likely AI-generated); use it as evidence, not proof.
No language-specific SDK is required. The example uses a standard or commonly used HTTP client to call Sapling's JSON API.
Scala
/api/v1/aidetect
This example uses the HTTP client included with Java 11 and newer.
import java.net.URI
import java.net.http.{HttpClient, HttpRequest, HttpResponse}
object Main {
def main(args: Array[String]): Unit = {
val apiKey = Option(System.getenv("SAPLING_API_KEY"))
.filter(_.nonEmpty)
.getOrElse(throw new IllegalStateException("Set SAPLING_API_KEY first."))
val payload =
"""{
| "text": "I am an artificial intelligence system designed to help people solve complex problems. My capabilities include natural language processing, machine learning, and predictive analytics.",
| "sent_scores": true
|}""".stripMargin
val request = HttpRequest.newBuilder()
.uri(URI.create("https://api.sapling.ai/api/v1/aidetect"))
.header("Authorization", s"Bearer $apiKey")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build()
val response = HttpClient.newHttpClient().send(
request,
HttpResponse.BodyHandlers.ofString()
)
if (response.statusCode() < 200 || response.statusCode() >= 300) {
throw new IllegalStateException(
s"Sapling API error ${response.statusCode()}: ${response.body()}"
)
}
println(response.body())
}
}
Example response
application/json
{
"score": 0.9989,
"sentence_scores": [
{
"score": 0.9764,
"sentence": "I am an artificial intelligence system designed to help people solve complex problems."
},
{
"score": 0.9812,
"sentence": "My capabilities include natural language processing, machine learning, and predictive analytics."
}
],
"text": "I am an artificial intelligence system designed to help people solve complex problems. My capabilities include natural language processing, machine learning, and predictive analytics."
}
The overall score and sentence scores use different methods and may not match exactly. Choose thresholds based on the false-positive and false-negative costs of your use case.
About Scala
Scala is a programming language designed to run on the JVM, supporting both functional and object-oriented programming patterns. It is designed to be more concise than Java.