Readability scores (Flesch reading ease, grade level) and reading time
Calculates Flesch reading ease, Flesch-Kincaid grade level and Gunning Fog index, a plain-English difficulty level, and estimated reading and speaking time.
Request
JSON object. Required: text.
Request Body
Edit the values below to test different scenarios.
Parameters and body structure are inherited from this endpoint's definition. Changes here only apply to this test run.
1curl --request POST \
2 --url https://text-analysis.p.apihiver.com/v1/readability \
3 --header 'Accept: application/json' \
4 --header 'Content-Type: application/json' \
5 --header 'X-API-Key: YOUR_API_KEY' \
6 --data '{
7 "text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."
8}'Readability scores (Flesch reading ease, grade level) and reading time: Text Analysis API reference
Calculates Flesch reading ease, Flesch-Kincaid grade level and Gunning Fog index, a plain-English difficulty level, and estimated reading and speaking time. This endpoint is part of the Text Analysis API: Sentiment, keywords, extractive summaries, readability scores and text statistics for English text — one simple JSON call each.
Readability scores (Flesch reading ease, grade level) and reading time: example requests in every language
POST /v1/readability in Shell (cURL)
curl --request POST \
--url https://text-analysis.p.apihiver.com/v1/readability \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--data '{
"text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."
}'POST /v1/readability in Shell (HTTPie)
echo '{
"text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."
}' | \
http POST https://text-analysis.p.apihiver.com/v1/readability \
Accept:application/json \
Content-Type:application/json \
X-API-Key:YOUR_API_KEYPOST /v1/readability in Shell (Wget)
wget --quiet \
--method POST \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--body-data '{\n "text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."\n}' \
--output-document \
- https://text-analysis.p.apihiver.com/v1/readabilityPOST /v1/readability in Node.js (http)
const http = require('https');
const options = {
method: 'POST',
hostname: 'text-analysis.p.apihiver.com',
port: null,
path: '/v1/readability',
headers: {
'Content-Type': 'application/json',
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on('data', function (chunk) {
chunks.push(chunk);
});
res.on('end', function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({
text: 'APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.'
}));
req.end();POST /v1/readability in Node.js (Request)
const request = require('request');
const options = {
method: 'POST',
url: 'https://text-analysis.p.apihiver.com/v1/readability',
headers: {
'Content-Type': 'application/json',
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
},
body: {
text: 'APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.'
},
json: true
};
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});POST /v1/readability in Node.js (Unirest)
const unirest = require('unirest');
const req = unirest('POST', 'https://text-analysis.p.apihiver.com/v1/readability');
req.headers({
'Content-Type': 'application/json',
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
});
req.type('json');
req.send({
text: 'APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.'
});
req.end(function (res) {
if (res.error) throw new Error(res.error);
console.log(res.body);
});POST /v1/readability in Node.js (Axios)
const axios = require('axios').default;
const options = {
method: 'POST',
url: 'https://text-analysis.p.apihiver.com/v1/readability',
headers: {
'Content-Type': 'application/json',
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
},
data: {
text: 'APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.'
}
};
try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}POST /v1/readability in Node.js (Fetch)
const fetch = require('node-fetch');
const url = 'https://text-analysis.p.apihiver.com/v1/readability';
const options = {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
},
body: '{"text":"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."}'
};
try {
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}POST /v1/readability in JavaScript (XMLHttpRequest)
const data = JSON.stringify({
text: 'APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.'
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener('readystatechange', function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open('POST', 'https://text-analysis.p.apihiver.com/v1/readability');
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.setRequestHeader('Accept', 'application/json');
xhr.setRequestHeader('X-API-Key', 'YOUR_API_KEY');
xhr.send(data);POST /v1/readability in JavaScript (Axios)
import axios from 'axios';
const options = {
method: 'POST',
url: 'https://text-analysis.p.apihiver.com/v1/readability',
headers: {
'Content-Type': 'application/json',
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
},
data: {
text: 'APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.'
}
};
try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}POST /v1/readability in JavaScript (Fetch)
const url = 'https://text-analysis.p.apihiver.com/v1/readability';
const options = {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
},
body: '{"text":"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."}'
};
try {
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}POST /v1/readability in JavaScript (jQuery)
const settings = {
async: true,
crossDomain: true,
url: 'https://text-analysis.p.apihiver.com/v1/readability',
method: 'POST',
headers: {
'Content-Type': 'application/json',
Accept: 'application/json',
'X-API-Key': 'YOUR_API_KEY'
},
processData: false,
data: '{\n "text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."\n}'
};
$.ajax(settings).done(function (response) {
console.log(response);
});POST /v1/readability in Python (http.client)
import http.client
conn = http.client.HTTPSConnection("text-analysis.p.apihiver.com")
payload = "{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'X-API-Key': "YOUR_API_KEY"
}
conn.request("POST", "/v1/readability", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))POST /v1/readability in Python (Requests)
import requests
url = "https://text-analysis.p.apihiver.com/v1/readability"
payload = { "text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is." }
headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"X-API-Key": "YOUR_API_KEY"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())POST /v1/readability in PHP (cURL)
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://text-analysis.p.apihiver.com/v1/readability",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'text' => 'APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.'
]),
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Content-Type: application/json",
"X-API-Key: YOUR_API_KEY"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}POST /v1/readability in PHP (Guzzle)
<?php
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://text-analysis.p.apihiver.com/v1/readability', [
'body' => '{
"text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."
}',
'headers' => [
'Accept' => 'application/json',
'Content-Type' => 'application/json',
'X-API-Key' => 'YOUR_API_KEY',
],
]);
echo $response->getBody();POST /v1/readability in PHP (PECL HTTP v1)
<?php
$request = new HttpRequest();
$request->setUrl('https://text-analysis.p.apihiver.com/v1/readability');
$request->setMethod(HTTP_METH_POST);
$request->setHeaders([
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'X-API-Key' => 'YOUR_API_KEY'
]);
$request->setContentType('application/json');
$request->setBody(json_encode([
'text' => 'APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.'
]));
try {
$response = $request->send();
echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}POST /v1/readability in PHP (PECL HTTP v2)
<?php
$client = new http\Client;
$request = new http\Client\Request;
$body = new http\Message\Body;
$body->append(json_encode([
'text' => 'APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.'
]));
$request->setRequestUrl('https://text-analysis.p.apihiver.com/v1/readability');
$request->setRequestMethod('POST');
$request->setBody($body);
$request->setHeaders([
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'X-API-Key' => 'YOUR_API_KEY'
]);
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();POST /v1/readability in Java (AsyncHttp)
AsyncHttpClient client = new DefaultAsyncHttpClient();
client.prepare("POST", "https://text-analysis.p.apihiver.com/v1/readability")
.setHeader("Content-Type", "application/json")
.setHeader("Accept", "application/json")
.setHeader("X-API-Key", "YOUR_API_KEY")
.setBody("{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}")
.execute()
.toCompletableFuture()
.thenAccept(System.out::println)
.join();
client.close();POST /v1/readability in Java (java.net.http)
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://text-analysis.p.apihiver.com/v1/readability"))
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("X-API-Key", "YOUR_API_KEY")
.method("POST", HttpRequest.BodyPublishers.ofString("{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}"))
.build();
HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());POST /v1/readability in Java (OkHttp)
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}");
Request request = new Request.Builder()
.url("https://text-analysis.p.apihiver.com/v1/readability")
.post(body)
.addHeader("Content-Type", "application/json")
.addHeader("Accept", "application/json")
.addHeader("X-API-Key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();POST /v1/readability in Java (Unirest)
HttpResponse<String> response = Unirest.post("https://text-analysis.p.apihiver.com/v1/readability")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("X-API-Key", "YOUR_API_KEY")
.body("{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}")
.asString();POST /v1/readability in C# (HttpClient)
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://text-analysis.p.apihiver.com/v1/readability"),
Headers =
{
{ "Accept", "application/json" },
{ "X-API-Key", "YOUR_API_KEY" },
},
Content = new StringContent("{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}POST /v1/readability in C# (RestSharp)
var client = new RestClient("https://text-analysis.p.apihiver.com/v1/readability");
var request = new RestRequest("", Method.Post);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Accept", "application/json");
request.AddHeader("X-API-Key", "YOUR_API_KEY");
request.AddParameter("application/json", "{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}", ParameterType.RequestBody);
var response = client.Execute(request);POST /v1/readability in Go (NewRequest)
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://text-analysis.p.apihiver.com/v1/readability"
payload := strings.NewReader("{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Accept", "application/json")
req.Header.Add("X-API-Key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}POST /v1/readability in Ruby (net::http)
require 'uri'
require 'net/http'
url = URI("https://text-analysis.p.apihiver.com/v1/readability")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["X-API-Key"] = 'YOUR_API_KEY'
request.body = "{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}"
response = http.request(request)
puts response.read_bodyPOST /v1/readability in Swift (NSURLSession)
import Foundation
let headers = [
"Content-Type": "application/json",
"Accept": "application/json",
"X-API-Key": "YOUR_API_KEY"
]
let parameters = ["text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."] as [String : Any]
let postData = JSONSerialization.data(withJSONObject: parameters, options: [])
let request = NSMutableURLRequest(url: NSURL(string: "https://text-analysis.p.apihiver.com/v1/readability")! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error as Any)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()POST /v1/readability in Objective-C (NSURLSession)
#import <Foundation/Foundation.h>
NSDictionary *headers = @{ @"Content-Type": @"application/json",
@"Accept": @"application/json",
@"X-API-Key": @"YOUR_API_KEY" };
NSDictionary *parameters = @{ @"text": @"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is." };
NSData *postData = [NSJSONSerialization dataWithJSONObject:parameters options:0 error:nil];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://text-analysis.p.apihiver.com/v1/readability"]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:10.0];
[request setHTTPMethod:@"POST"];
[request setAllHTTPHeaderFields:headers];
[request setHTTPBody:postData];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"%@", error);
} else {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
NSLog(@"%@", httpResponse);
}
}];
[dataTask resume];POST /v1/readability in Kotlin (OkHttp)
val client = OkHttpClient()
val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}")
val request = Request.Builder()
.url("https://text-analysis.p.apihiver.com/v1/readability")
.post(body)
.addHeader("Content-Type", "application/json")
.addHeader("Accept", "application/json")
.addHeader("X-API-Key", "YOUR_API_KEY")
.build()
val response = client.newCall(request).execute()POST /v1/readability in C (libcurl)
CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "https://text-analysis.p.apihiver.com/v1/readability");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Content-Type: application/json");
headers = curl_slist_append(headers, "Accept: application/json");
headers = curl_slist_append(headers, "X-API-Key: YOUR_API_KEY");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}");
CURLcode ret = curl_easy_perform(hnd);POST /v1/readability in Clojure (clj-http)
(require '[clj-http.client :as client])
(client/post "https://text-analysis.p.apihiver.com/v1/readability" {:headers {:X-API-Key "YOUR_API_KEY"}
:content-type :json
:form-params {:text "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."}
:accept :json})POST /v1/readability in OCaml (CoHTTP)
open Cohttp_lwt_unix
open Cohttp
open Lwt
let uri = Uri.of_string "https://text-analysis.p.apihiver.com/v1/readability" in
let headers = Header.add_list (Header.init ()) [
("Content-Type", "application/json");
("Accept", "application/json");
("X-API-Key", "YOUR_API_KEY");
] in
let body = Cohttp_lwt_body.of_string "{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}" in
Client.call ~headers ~body `POST uri
>>= fun (res, body_stream) ->
(* Do stuff with the result *)POST /v1/readability in R (httr)
library(httr)
url <- "https://text-analysis.p.apihiver.com/v1/readability"
payload <- "{\n \"text\": \"APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is.\"\n}"
encode <- "json"
response <- VERB("POST", url, body = payload, add_headers('X-API-Key' = 'YOUR_API_KEY'), content_type("application/json"), accept("application/json"), encode = encode)
content(response, "text")POST /v1/readability in PowerShell (Invoke-WebRequest)
$headers=@{}
$headers.Add("Content-Type", "application/json")
$headers.Add("Accept", "application/json")
$headers.Add("X-API-Key", "YOUR_API_KEY")
$response = Invoke-WebRequest -Uri 'https://text-analysis.p.apihiver.com/v1/readability' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
"text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."
}'POST /v1/readability in PowerShell (Invoke-RestMethod)
$headers=@{}
$headers.Add("Content-Type", "application/json")
$headers.Add("Accept", "application/json")
$headers.Add("X-API-Key", "YOUR_API_KEY")
$response = Invoke-RestMethod -Uri 'https://text-analysis.p.apihiver.com/v1/readability' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
"text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."
}'POST /v1/readability in HTTP (HTTP/1.1)
POST /v1/readability HTTP/1.1
Content-Type: application/json
Accept: application/json
X-Api-Key: YOUR_API_KEY
Host: text-analysis.p.apihiver.com
Content-Length: 303
{
"text": "APIHiver is a marketplace where developers discover, test and subscribe to APIs. Providers publish their APIs with documentation and pricing plans. The platform handles keys, billing and analytics so that developers can focus on building great products. Many teams love how simple it is."
}Example response (200, application/json)
Success.
1{
2 "level": "difficult",
3 "gunning_fog": 11.7,
4 "flesch_reading_ease": 43.8,
5 "flesch_kincaid_grade": 9.9,
6 "reading_time_seconds": 11,
7 "speaking_time_seconds": 18
8}Errors
- 400 — A required parameter is missing or a value has the wrong format.
1{ 2 "error": { 3 "code": "INVALID_INPUT", 4 "message": "text: Field required" 5 } 6}
Gateway errors (missing key, no subscription, rate limits) are listed in Error codes.