Documentation Index Fetch the complete documentation index at: https://docs.orbitsearch.com/llms.txt
Use this file to discover all available pages before exploring further.
The profile read endpoint returns a stable, public profile object for a given Orbit user. You get the profile ID from the userId field in smart search results, then call this endpoint to retrieve structured data including display name, location, headline, and profile sections. Each successful read costs 1 credit. Reads that return a not-found response or fail for other reasons are automatically refunded.
Authentication
Include your developer API key in every request. The key must have the profile:read scope.
Authorization: Bearer sk_orb_...
Request
GET /v2/developer/profiles/:id
Path parameters
The profile ID to fetch. This is the userId value returned in the payload.users array from a Smart Search response.
Response
200 Success
{
"status" : "success" ,
"payload" : {
"id" : "usr_a1b2c3d4e5f6" ,
"orbitId" : "orbit-profile-id" ,
"displayName" : "Ada Lovelace" ,
"avatarUrl" : "https://..." ,
"profileUrl" : "https://orbitsearch.com/ada" ,
"verified" : true ,
"location" : {
"city" : "San Francisco, CA, US"
},
"headline" : {
"jobTitle" : "Founder" ,
"companyName" : "Example Co" ,
"schoolName" : "Example University"
},
"sections" : {
"basic" : { "school" : "Example University" , "location" : "San Francisco" },
"personalLife" : null ,
"jobs" : null ,
"education" : null ,
"passions" : null ,
"worldview" : null ,
"accomplishments" : null ,
"controversies" : null ,
"bestQualities" : null ,
"netWorth" : null ,
"portfolio" : null ,
"families" : null
}
}
}
Always "success" for a 200 response.
The profile ID that was requested. This is the same value you passed in the :id path parameter.
The stable Orbit profile identifier. Use this to correlate profiles across Orbit surfaces.
The user’s public display name.
URL of the user’s public avatar image. May be null if the user has not set a profile photo.
The canonical public URL of the user’s Orbit profile page.
Whether the profile has been verified by Orbit.
The user’s public location information. City, region, and country string as entered by the user. Example: "San Francisco, CA, US".
The user’s professional headline, drawn from their current role or education. payload.headline.jobTitle
The user’s current job title. May be null.
payload.headline.companyName
The user’s current employer. May be null.
payload.headline.schoolName
The user’s most recent school, shown when no job title is present. May be null.
Structured profile sections. Each section is either an object with section-specific fields or null when the user has not filled it out. Basic profile information including school and location as entered by the user.
payload.sections.personalLife
Personal life information shared by the user.
Work history shared by the user.
payload.sections.education
Education history shared by the user.
payload.sections.passions
Interests and passions shared by the user.
payload.sections.worldview
Worldview or values shared by the user.
payload.sections.accomplishments
Notable accomplishments shared by the user.
payload.sections.controversies
Public controversies associated with the user.
payload.sections.bestQualities
Best qualities highlighted by the user.
payload.sections.netWorth
Net worth information where publicly available.
payload.sections.portfolio
Portfolio or work samples shared by the user.
payload.sections.families
Family information shared by the user.
The profile DTO is an allowlisted public shape. It does not expose raw contact details, phone numbers, full enrichment records, internal moderation or admin metadata, raw profile-owner widgets, or profile-owner-only progress fields.
Credits
Each successful profile read costs 1 credit . Reads that return developer_profile_not_found or fail for other reasons are automatically refunded — you are only charged for profiles that are successfully returned.
Rate limits
120 requests per 60 seconds per API key. Rate limits are tracked per key, not per IP address. A 429 response does not consume credits.
Error responses
Status Code Description 401missing_api_keyNo Authorization: Bearer sk_orb_... header was provided 402developer_api_credits_insufficientYour remaining credits are lower than the cost of a profile read 403invalid_api_keyThe key is malformed, revoked, expired, or unknown 403missing_api_key_scopeThe key does not have the profile:read scope 404developer_profile_not_foundThe profile ID does not resolve to a public Orbit profile. The read is refunded. 429developer_api_key_rate_limitedYou have exceeded 120 requests per 60 seconds for this API key
Code example
The example below shows the full search-to-profile-read flow: run a smart search, extract the first profile ID from the response, then fetch the full profile.
SEARCH_RESPONSE =$(
curl -s -X POST " $API_BASE /v2/social/profiles/searches/smart" \
-H "Authorization: Bearer sk_orb_REDACTED" \
-H "Content-Type: application/json" \
-d '{"query":"founders in sf","numUsers":10}'
)
PROFILE_ID =$( echo " $SEARCH_RESPONSE " | jq -r '.payload.users[0].userId' )
curl " $API_BASE /v2/developer/profiles/ $PROFILE_ID " \
-H "Authorization: Bearer sk_orb_REDACTED"