GET
/
v1
/
teams
/
{teamId}
/
social-accounts
/
{id}
TypeScript client
import { OctosparkClient } from '@octospark/sdk'

const client = new OctosparkClient({
  token: process.env.OCTOSPARK_TOKEN
})

const response = await client.social.getSocialAccount({
  teamId: process.env.OCTOSPARK_TEAM_ID ?? "teamId",
  id: process.env.OCTOSPARK_ID ?? "id",
})
import os
from octospark_sdk import OctosparkClient

client = OctosparkClient(token=os.environ["OCTOSPARK_TOKEN"])

response = client.social.get_social_account(
teamId=os.environ.get("OCTOSPARK_TEAM_ID", "teamId"),
id=os.environ.get("OCTOSPARK_ID", "id")
)
octospark accounts get \
--request '{"path":{"teamId":"teamId","id":"id"}}'
use reqwest::Client;
use std::env;

#[tokio::main]
async fn main() -> Result<(), reqwest::Error> {
let client = Client::new();
let base_url = env::var("OCTOSPARK_API_URL").unwrap_or_else(|_| "https://api.octospark.ai".to_string());
let team_id = env::var("OCTOSPARK_TEAM_ID").unwrap_or_else(|_| "teamId".to_string());
let id = env::var("OCTOSPARK_ID").unwrap_or_else(|_| "id".to_string());
let url = format!("{}/v1/teams/{}/social-accounts/{}", base_url.trim_end_matches('/'), team_id, id);
let token = env::var("OCTOSPARK_TOKEN").expect("OCTOSPARK_TOKEN");
let mut request = client.get(url).bearer_auth(token);
let response = request.send().await?;
println!("{}", response.text().await?);
Ok(())
}
import 'dart:convert';
import 'dart:io';
import 'package:http/http.dart' as http;

Future<void> main() async {
final baseUrl = Platform.environment['OCTOSPARK_API_URL'] ?? 'https://api.octospark.ai';
final token = Platform.environment['OCTOSPARK_TOKEN'];
final teamId = Platform.environment['OCTOSPARK_TEAM_ID'] ?? 'teamId';
final id = Platform.environment['OCTOSPARK_ID'] ?? 'id';
final url = '${baseUrl.replaceFirst(RegExp(r'/$'), '')}/v1/teams/$teamId/social-accounts/$id';
final uri = Uri.parse(url);
final headers = {
'Authorization': 'Bearer $token',
};
final response = await http.get(
uri,
headers: headers,
);
print(response.body);
}
curl --request GET \
--url https://api.octospark.ai/v1/teams/{teamId}/social-accounts/{id} \
--header 'Authorization: Bearer <token>'
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://api.octospark.ai/v1/teams/{teamId}/social-accounts/{id}",
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.octospark.ai/v1/teams/{teamId}/social-accounts/{id}"

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.octospark.ai/v1/teams/{teamId}/social-accounts/{id}")
.header("Authorization", "Bearer <token>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.octospark.ai/v1/teams/{teamId}/social-accounts/{id}")

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
$headers=@{}
$headers.Add("Authorization", "Bearer <token>")
$response = Invoke-WebRequest -Uri 'https://api.octospark.ai/v1/teams/{teamId}/social-accounts/{id}' -Method GET -Headers $headers
import Foundation

let url = URL(string: "https://api.octospark.ai/v1/teams/{teamId}/social-accounts/{id}")!
var request = URLRequest(url: url)
request.httpMethod = "GET"
request.timeoutInterval = 10
request.allHTTPHeaderFields = ["Authorization": "Bearer <token>"]

let (data, _) = try await URLSession.shared.data(for: request)
print(String(decoding: data, as: UTF8.self))
using RestSharp;


var options = new RestClientOptions("https://api.octospark.ai/v1/teams/{teamId}/social-accounts/{id}");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);

Console.WriteLine("{0}", response.Content);
using RestSharp;


var options = new RestClientOptions("https://api.octospark.ai/v1/teams/{teamId}/social-accounts/{id}");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);

Console.WriteLine("{0}", response.Content);
CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout);
curl_easy_setopt(hnd, CURLOPT_URL, "https://api.octospark.ai/v1/teams/{teamId}/social-accounts/{id}");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer <token>");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);
CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout);
curl_easy_setopt(hnd, CURLOPT_URL, "https://api.octospark.ai/v1/teams/{teamId}/social-accounts/{id}");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer <token>");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);
val client = OkHttpClient()

val request = Request.Builder()
.url("https://api.octospark.ai/v1/teams/{teamId}/social-accounts/{id}")
.get()
.addHeader("Authorization", "Bearer <token>")
.build()

val response = client.newCall(request).execute()
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "teamId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "providerAccountId": "<string>",
  "displayName": "<string>",
  "profileHandle": "<string>",
  "profileImageUrl": "<string>",
  "accountSubType": "<string>",
  "scopes": [
    "<string>"
  ],
  "providerSettings": {},
  "capabilities": {},
  "connectedAt": "<string>",
  "disconnectedAt": "<string>",
  "createdAt": "<string>",
  "updatedAt": "<string>",
  "accountHealthMessage": "<string>",
  "accountHealthSince": "<string>"
}
{
"issues": [
{
"path": [
"<string>"
],
"message": "<string>"
}
],
"message": "<string>",
"_tag": "HttpApiDecodeError"
}
{
"message": "<string>",
"_tag": "Unauthorized"
}
{
"message": "<string>",
"_tag": "PaymentRequired"
}
{
"message": "<string>",
"_tag": "Forbidden"
}
{
"message": "<string>",
"_tag": "NotFound"
}
{
"message": "<string>",
"_tag": "Conflict"
}
{
"message": "<string>",
"_tag": "TooManyRequests"
}
{
"message": "<string>",
"_tag": "InternalError"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

teamId
string
required

Team (workspace) id (UUID). Discover ids via the list teams endpoint or the agent context.

id
string
required

Connected social account id (UUID), as returned by the list social accounts endpoint.

Response

Success

id
string<uuid>
required

a Universally Unique Identifier

Pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
teamId
string<uuid>
required

a Universally Unique Identifier

Pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
provider
enum<string>
required

Social platform identifier: x, tiktok, instagram, facebook, youtube, linkedin, or threads.

Available options:
x,
tiktok,
instagram,
facebook,
youtube,
linkedin,
threads
Example:

"x"

providerAccountId
string
required
displayName
string
required
profileHandle
string | null
required
profileImageUrl
string | null
required
accountSubType
string | null
required
status
enum<string>
required

Connection state of a social account: connected (usable), disabled, refresh_needed (token expired, reconnect required), or disconnected.

Available options:
connected,
disabled,
refresh_needed,
disconnected
Example:

"connected"

scopes
string[]
required
providerSettings
object
required
capabilities
object
required
connectedAt
string
required
disconnectedAt
string | null
required
createdAt
string
required
updatedAt
string
required
accountHealthIssue
enum<string> | null
required
Available options:
verification_required,
auth_failed,
rate_limited
accountHealthMessage
string | null
required
accountHealthSince
string | null
required