curl --request GET \
--url https://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/', 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://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/",
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://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/"
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://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/")
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<string>{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>",
"issues": [
{
"input": "<string>",
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}Stream a sender's LinkedIn changes
Server-sent event stream of everything that moves on a sender’s LinkedIn tab: a browser connecting or disconnecting, the approval setting changing, and steps being queued, skipped or cancelled, including when the person did it in the extension or in another window.
Every frame is a wake-up, never a source of truth: the client re-reads the sender’s state on hello and on each signal, so a dropped frame costs one round trip and nothing more. This is the dashboard half of the channel the extension already has over /linkedin/agent/events/; the two carry the same signals.
The server closes the stream after a few minutes with a reconnect frame; open a fresh one. Comment heartbeats keep intermediaries from dropping an idle connection.
Requires Clerk authentication; API keys are rejected.
curl --request GET \
--url https://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/', 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://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/",
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://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/"
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://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getoneprofile.ai/sender-profiles/{profile_id}/linkedin/events/")
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<string>{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>",
"issues": [
{
"input": "<string>",
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Response
A stream of change events; each SSE frame's data is one event.
One frame of the sender's live stream, as the documentation describes it.
The stream is a wake-up channel, not a data channel: every frame names what
changed and the client re-reads. kind is the SSE event: field:
hello, resync, reconnect, or one of the account signals
(state_changed, disconnected, action_queued, action_cancelled).
Was this page helpful?