curl --request GET \
--url https://openlens.com/api/visibility \
--header 'Authorization: Bearer <token>'import requests
url = "https://openlens.com/api/visibility"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://openlens.com/api/visibility', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://openlens.com/api/visibility",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://openlens.com/api/visibility"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://openlens.com/api/visibility")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://openlens.com/api/visibility")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"brandId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"brandName": "<string>",
"isOwn": true,
"overall": 123,
"byPlatform": {},
"avgPosition": 123,
"mentionCount": 123,
"totalPlatformResponses": 123,
"dominantSentiment": "positive",
"sentimentBreakdown": {
"positive": 123,
"neutral": 123,
"negative": 123
}
}
]{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Visibility scores for the latest usable or selected run
Default returns an array of VisibilityScore (one per brand). Pass runId to read a specific completed run. Use type=topics for a per-topic summary, type=attributes&topicId=… for a per-attribute breakdown, or topicId=… alone for a single topic’s scores.
curl --request GET \
--url https://openlens.com/api/visibility \
--header 'Authorization: Bearer <token>'import requests
url = "https://openlens.com/api/visibility"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://openlens.com/api/visibility', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://openlens.com/api/visibility",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://openlens.com/api/visibility"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://openlens.com/api/visibility")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://openlens.com/api/visibility")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"brandId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"brandName": "<string>",
"isOwn": true,
"overall": 123,
"byPlatform": {},
"avgPosition": 123,
"mentionCount": 123,
"totalPlatformResponses": 123,
"dominantSentiment": "positive",
"sentimentBreakdown": {
"positive": 123,
"neutral": 123,
"negative": 123
}
}
]{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Authorizations
Clerk API key. Create one from your account settings under API Keys.
Query Parameters
Project id. Required on all data endpoints.
Completed prompt run ID. Omit to use the project's latest usable run; use GET /prompts/runs to list historical run IDs.
overview, topics, attributes Comma-separated list of attribute filters. Accepts both built-in attributes (e.g. pricing, comparisons) and project-specific custom attributes.
Response
One of: array of VisibilityScore, array of TopicVisibilitySummary, TopicVisibility, or array of AttributeBreakdown depending on type.
- Option 1 · object[]
- Option 2 · object[]
- Option 3 · object
- Option 4 · object[]
Mention rate as a percentage (0–100).
Per-platform mention rate, keyed by platform id.
Show child attributes
Show child attributes
positive, neutral, negative Show child attributes
Show child attributes
Was this page helpful?