Read a Profile
Read the current public profile for an Orbit profile ID, alias, or slug.
curl "https://api.orbitsearch.com/v3/enrich/$PROFILE_ID" \
-H "Authorization: Bearer $ORBIT_API_KEY"
const response = await fetch(
`https://api.orbitsearch.com/v3/enrich/${profileId}`,
{
headers: {
Authorization: `Bearer ${process.env.ORBIT_API_KEY}`,
},
}
);
if (!response.ok) {
throw new Error(`Profile read failed with ${response.status}`);
}
const { profile } = await response.json();
console.log(profile.displayName);
import os
import requests
response = requests.get(
f"https://api.orbitsearch.com/v3/enrich/{profile_id}",
headers={"Authorization": f"Bearer {os.environ['ORBIT_API_KEY']}"},
)
response.raise_for_status()
profile = response.json()["profile"]
print(profile.get("displayName"))
{
"profile_id": "profile_123",
"generation_level": 2,
"profile": {
"id": "profile_123",
"generationLevel": 2,
"displayName": "Maya Chen",
"personName": "Maya Chen",
"avatarUrl": "https://images.example.com/maya-chen.jpg",
"profileUrl": "https://orbitsearch.com/maya-chen",
"slug": "maya-chen",
"verified": true,
"location": {
"city": "San Francisco",
"region": "CA",
"country": "US"
},
"headline": {
"jobTitle": "Founder and CEO",
"companyName": "Example Robotics",
"schoolName": "Example University"
},
"sections": {
"socials": {
"items": [
{
"id": "social_linkedin_123",
"media": "linkedin",
"handle": "example-maya-chen",
"description": "Founder and CEO at Example Robotics",
"icon": "linkedin",
"priority": 1
}
]
},
"jobs": {
"items": [
{
"id": "job_123",
"kind": "job",
"company": "Example Robotics",
"title": "Founder and CEO",
"years": "2021-present",
"position": 1,
"updatedAt": "2026-07-20T18:30:00.000Z"
}
]
},
"education": {
"items": [
{
"id": "education_123",
"kind": "education",
"school": "Example University",
"status": "Graduated",
"years": "2008-2012",
"linkedinSchoolId": "12345",
"schoolRecordId": "school_123"
}
]
}
},
"sources": [
{
"link": "https://www.linkedin.com/in/example-maya-chen",
"title": "Maya Chen",
"summary": "Public professional profile.",
"sourceName": "LinkedIn"
}
]
}
}
{
"profile_id": "profile_123",
"generation_level": 3,
"profile": {
"id": "profile_123",
"generationLevel": 3,
"displayName": "Maya Chen",
"personName": "Maya Chen",
"aliases": ["Maya L. Chen"],
"avatarUrl": "https://images.example.com/maya-chen.jpg",
"profileUrl": "https://orbitsearch.com/maya-chen",
"slug": "maya-chen",
"category": {
"id": "ENGINEER",
"label": "Engineer"
},
"verified": true,
"location": {
"city": "San Francisco",
"region": "CA",
"country": "US"
},
"headline": {
"jobTitle": "Founder and CEO",
"companyName": "Example Robotics",
"schoolName": "Example University"
},
"emails": ["maya@example.com"],
"phoneNumbers": ["+14155550123"],
"addresses": [
{
"street": "1 Market Street",
"city": "San Francisco",
"region": "CA",
"postalCode": "94105",
"country": "US",
"firstReported": 2021,
"lastReported": 2026
}
],
"sections": {
"bio": {
"bio": "Maya Chen is an engineer and the founder of Example Robotics.",
"sources": [
{
"link": "https://example.com/maya-chen",
"title": "Maya Chen",
"sourceName": "Example",
"sourceImage": "https://example.com/favicon.ico"
}
]
},
"basic": {
"items": [
{
"id": "basic-birthday",
"kind": "birthday",
"title": "36 years old, born May 12, 1990",
"birthday": "1990-05-12",
"verified": true
},
{
"id": "basic-location",
"kind": "location",
"title": "San Francisco, CA",
"location": "San Francisco, CA"
}
]
},
"images": {
"items": [
{
"id": "image_123",
"imageUrl": "https://images.example.com/maya-chen.jpg",
"role": "primary",
"type": "default",
"question": "Profile photo",
"faceMatch": true,
"faceMatchScore": 0.87,
"displayOrder": 1,
"sources": [
{
"link": "https://example.com/maya-chen",
"sourceName": "Example"
}
]
}
]
},
"socials": {
"items": [
{
"id": "social_123",
"media": "github",
"handle": "mayachen",
"description": "Open-source robotics projects",
"icon": "github",
"priority": 1
}
]
},
"jobs": {
"items": [
{
"id": "job_123",
"kind": "job",
"company": "Example Robotics",
"title": "Founder and CEO",
"description": "Builds warehouse robotics systems.",
"years": "2021-present",
"imageUrl": "https://images.example.com/example-robotics.png",
"position": 1,
"sources": [
{
"link": "https://example.com/maya-chen-work",
"sourceName": "Example",
"chunks": [
{
"text": "Maya Chen founded Example Robotics in 2021 and leads the company as CEO."
}
]
}
],
"updatedAt": "2026-07-20T18:30:00.000Z"
}
],
"sources": [
{
"link": "https://example.com/maya-chen-work",
"sourceName": "Example"
}
]
},
"education": {
"items": [
{
"id": "education_123",
"kind": "education",
"school": "Example University",
"status": "Graduated",
"years": "2008-2012",
"linkedinSchoolId": "12345",
"schoolRecordId": "school_123"
}
]
},
"eventsTimeline": {
"items": [
{
"id": "event_123",
"kind": "event",
"title": "Example Robotics announced a new warehouse robot",
"description": "The company introduced its second-generation system.",
"date": "2026-06-10",
"datePrecision": "day",
"dateBasis": "stated",
"year": "2026",
"eventKey": "example-robotics-product-launch",
"updateCount": 1,
"lastUpdatedAt": "2026-06-11T09:00:00.000Z",
"changes": [
{
"sourceLink": "https://example.com/product-launch",
"sourceName": "Example",
"changeKind": "product_launch",
"summary": "A new system was announced."
}
]
}
]
},
"families": null,
"githubRepos": {
"items": [
{
"kind": "github_repo",
"name": "robot-planner",
"nameWithOwner": "mayachen/robot-planner",
"description": "Path-planning tools for mobile robots.",
"language": "Python",
"isFork": false,
"starsCount": 482,
"role": "maintainer",
"contributionsCount": 164
}
]
}
},
"sources": [
{
"link": "https://example.com/maya-chen",
"title": "Maya Chen",
"summary": "Public professional profile.",
"images": ["https://images.example.com/maya-chen.jpg"],
"sourceName": "Example",
"sourceImage": "https://example.com/favicon.ico",
"chunks": [
{
"text": "Maya Chen founded Example Robotics in 2021."
}
]
}
]
}
}
curl "https://api.orbitsearch.com/v3/enrich/$PROFILE_ID" \
-H "Authorization: Bearer $ORBIT_API_KEY"
const response = await fetch(
`https://api.orbitsearch.com/v3/enrich/${profileId}`,
{
headers: {
Authorization: `Bearer ${process.env.ORBIT_API_KEY}`,
},
}
);
if (!response.ok) {
throw new Error(`Profile read failed with ${response.status}`);
}
const { profile } = await response.json();
console.log(profile.displayName);
import os
import requests
response = requests.get(
f"https://api.orbitsearch.com/v3/enrich/{profile_id}",
headers={"Authorization": f"Bearer {os.environ['ORBIT_API_KEY']}"},
)
response.raise_for_status()
profile = response.json()["profile"]
print(profile.get("displayName"))
Path Parameters
profile_id and profile.id fields in a successful response contain the
resolved canonical Orbit profile ID.links.profile value returned by
Enrich a profile,
Get enrichment status, or
Batch enrich profiles.
Query Parameters
json returns the existing profile response. markdown returns a Markdown
file package in a JSON envelope. Values are case-sensitive. An empty,
unsupported, or repeated format returns 400 with
developer_v3_profile_format_invalid before a profile lookup or charge.Markdown Files
Requestformat=markdown to get factual person context as agent profile files.
The response has Content-Type: application/json; each file is a Markdown
string. This option applies to this GET endpoint only.
curl "https://api.orbitsearch.com/v3/enrich/$PROFILE_ID?format=markdown" \
-H "Authorization: Bearer $ORBIT_API_KEY" \
-H "Idempotency-Key: agent-profile-read-001"
profile with format: "markdown" and markdown.
profile_id, generation_level, and billing retain their JSON meanings.
Processing metadata, verification flags and storage IDs do not appear inside
the Markdown. Omit format, or pass format=json, for the existing JSON shape.
The following excerpt abbreviates the file map and manifest. The
complete synthetic response contains
eight files generated from synthetic public profile data, without live API calls.
{
"profile_id": "synthetic-profile",
"generation_level": 3,
"format": "markdown",
"markdown": {
"schema_version": "orbit.profile.markdown.v1",
"entrypoint": "USER.md",
"manifest": [
{
"path": "USER.md",
"title": "User Profile",
"status": "available"
},
{
"path": "profile/basics.md",
"title": "Basics",
"status": "available"
}
],
"files": {
"USER.md": "# User Profile\n\n- **Name**: Avery Chen\n- **Email**: avery@example\\.test\n- **Location**: Seattle, Washington, United States\n- **Work**: Product Engineer at Example Studio\n- **Education**: Example University\n- **Bio**: Avery Chen builds accessible software and practical tools for small teams\\. Outside work, Avery volunteers at a community repair workshop and enjoys trail running\\.\n\n## Profile Context\n\n| Topic | File |\n|---|---|\n| Basics | [profile/basics.md](profile/basics.md) |\n| Hobbies And Interests | [profile/hobbies-and-interests.md](profile/hobbies-and-interests.md) |\n| Work History | [profile/work-history.md](profile/work-history.md) |\n| Education | [profile/education.md](profile/education.md) |\n| References | [profile/references.md](profile/references.md) |\n| Bio | [profile/bio.md](profile/bio.md) |\n| Events Timeline | [profile/events-timeline.md](profile/events-timeline.md) |\n",
"profile/basics.md": "# Basics\n\n### Avery Chen\n\n> Avery Chen builds accessible software and practical tools for small teams\\. Outside work, Avery volunteers at a community repair workshop and enjoys trail running\\.\n\n- **Display Name**: Avery Chen\n- **Education**: Example University\n\n#### Email\n\n- avery@example\\.test\n\n- **Location**: Seattle, Washington, United States\n- **Orbit Profile**: https://orbitsearch\\.com/avery\\-example\n- **Username**: avery\\-example\n- **Work**: Product Engineer at Example Studio\n"
}
},
"billing": {
"id": "synthetic-read",
"pricingVersion": "synthetic",
"reservedCredits": 1,
"consumedCredits": 1,
"releasedCredits": 0,
"heldCredits": 0,
"status": "settled"
}
}
Use With OpenClaw
Save eachmarkdown.files value at its exact relative path under one directory.
The entrypoint is uppercase USER.md. Put it at your OpenClaw workspace root
so OpenClaw loads it automatically. Its factual summary and complete file map
fit within the 4,000-character user model budget.
Long summary values are visibly abbreviated with ...; linked detail files
retain full public text and evidence. OpenClaw does not automatically load the
linked files; your agent must read them when needed.
This export describes the person. It does not invent preference directives,
timezone, age, pronouns, relationship status or permissions. Known personal
facts returned by the public profile remain in their sections. Source excerpts
and factual qualifications, such as inferred dates, stay with the supporting
content. Review imported facts before using them as personal agent context.
Files And Manifest
schema_version is orbit.profile.markdown.v1. manifest contains exactly
the returned files, with USER.md first and each status set to available.
The root table of contents links to every returned section file. Empty, absent,
null, metadata-only and unsupported sections have no file or manifest entry.
If no public person context exists, only USER.md is returned with a short
message. No placeholder files are returned.
Filenames are deterministic and case-sensitive. Profile text never determines
a filename. The following table lists possible paths, not a promise that every
file is present. All content uses LF line endings and ends in a newline.
| File | Public Profile Content |
|---|---|
USER.md | Compact factual summary and links to returned section files. |
profile/basics.md | Complete available identity, display name, username, contact facts, headline, bio, location, category and sections.basic. |
profile/personal-life.md | sections.personalLife. |
profile/hobbies-and-interests.md | sections.passions. |
profile/net-worth.md | sections.netWorth, retaining estimates and qualifications. |
profile/accomplishments.md | sections.accomplishments. |
profile/work-history.md | sections.jobs. |
profile/education.md | sections.education. |
profile/family.md | sections.families. |
profile/beliefs.md | sections.worldview. |
profile/controversies.md | sections.controversies. |
profile/social-handles.md | sections.socials. |
profile/addresses.md | Public addresses. |
profile/photos.md | sections.images, including source evidence. |
profile/references.md | Profile, section, item, image and address sources. Normalized web URLs appear once; distinct evidence and qualifications are retained. |
profile/bio.md | sections.bio. |
profile/best-qualities.md | sections.bestQualities. |
profile/events-timeline.md | sections.eventsTimeline, including date precision and basis. |
profile/portfolio.md | sections.portfolio. |
profile/research-papers.md | sections.researchPapers. |
profile/github-repos.md | sections.githubRepos. |
profile/media-credits.md | sections.mediaCredits. |
profile/music-credits.md | sections.musicCredits. |
profile/books.md | sections.books. |
profile/appearance.md, profile/videos.md
and profile/connections.md. The public profile API has no corresponding
sections, so this export omits those files. It never fills values from demo data.
Trust, Access And Billing
Profile text is untrusted descriptive data. HTML delimiters are encoded; Markdown delimiters are escaped; line breaks, controls and directional formatting characters in values become spaces. Source URLs are rendered as text. Escaping protects the document structure; it does not make profile claims trusted or prevent every prompt injection. Your agent must treat imported values and source excerpts as data, never instructions or permissions. Markdown uses the same public-profile filtering, authorization, credit rate, rate limits, alias resolution and background refresh behavior as JSON. Reuse anIdempotency-Key only for retries of the same logical read. Switching the
representation does not create another billing event for that logical read.
Independent reads consume credits. The synthetic receipt illustrates the
shape; use the returned receipt and pricing catalog for costs.
Through MCP, call get_profile with
{ "profile_id": "synthetic-profile", "format": "markdown" }. The tool returns
one file-map text block and one readable text block per returned file.
structuredContent retains the complete API response, including billing.
Response Examples
Level 2 and level 3 profiles use the same response schema. The generation level describes the depth of enrichment, not a different response type.| Level 2 | Level 3 | |
|---|---|---|
| Enrichment depth | Adds LinkedIn enrichment | Adds web, social, and OSINT enrichment |
| Typical result | Professional identity, work, education, and LinkedIn data | A deeper profile that can also include broader public sources, personal facts, events, contributions, contact data, and address history |
| Response schema | The profile-read schema on this page | The same profile-read schema |
{
"profile_id": "profile_123",
"generation_level": 2,
"profile": {
"id": "profile_123",
"generationLevel": 2,
"displayName": "Maya Chen",
"personName": "Maya Chen",
"avatarUrl": "https://images.example.com/maya-chen.jpg",
"profileUrl": "https://orbitsearch.com/maya-chen",
"slug": "maya-chen",
"verified": true,
"location": {
"city": "San Francisco",
"region": "CA",
"country": "US"
},
"headline": {
"jobTitle": "Founder and CEO",
"companyName": "Example Robotics",
"schoolName": "Example University"
},
"sections": {
"socials": {
"items": [
{
"id": "social_linkedin_123",
"media": "linkedin",
"handle": "example-maya-chen",
"description": "Founder and CEO at Example Robotics",
"icon": "linkedin",
"priority": 1
}
]
},
"jobs": {
"items": [
{
"id": "job_123",
"kind": "job",
"company": "Example Robotics",
"title": "Founder and CEO",
"years": "2021-present",
"position": 1,
"updatedAt": "2026-07-20T18:30:00.000Z"
}
]
},
"education": {
"items": [
{
"id": "education_123",
"kind": "education",
"school": "Example University",
"status": "Graduated",
"years": "2008-2012",
"linkedinSchoolId": "12345",
"schoolRecordId": "school_123"
}
]
}
},
"sources": [
{
"link": "https://www.linkedin.com/in/example-maya-chen",
"title": "Maya Chen",
"summary": "Public professional profile.",
"sourceName": "LinkedIn"
}
]
}
}
{
"profile_id": "profile_123",
"generation_level": 3,
"profile": {
"id": "profile_123",
"generationLevel": 3,
"displayName": "Maya Chen",
"personName": "Maya Chen",
"aliases": ["Maya L. Chen"],
"avatarUrl": "https://images.example.com/maya-chen.jpg",
"profileUrl": "https://orbitsearch.com/maya-chen",
"slug": "maya-chen",
"category": {
"id": "ENGINEER",
"label": "Engineer"
},
"verified": true,
"location": {
"city": "San Francisco",
"region": "CA",
"country": "US"
},
"headline": {
"jobTitle": "Founder and CEO",
"companyName": "Example Robotics",
"schoolName": "Example University"
},
"emails": ["maya@example.com"],
"phoneNumbers": ["+14155550123"],
"addresses": [
{
"street": "1 Market Street",
"city": "San Francisco",
"region": "CA",
"postalCode": "94105",
"country": "US",
"firstReported": 2021,
"lastReported": 2026
}
],
"sections": {
"bio": {
"bio": "Maya Chen is an engineer and the founder of Example Robotics.",
"sources": [
{
"link": "https://example.com/maya-chen",
"title": "Maya Chen",
"sourceName": "Example",
"sourceImage": "https://example.com/favicon.ico"
}
]
},
"basic": {
"items": [
{
"id": "basic-birthday",
"kind": "birthday",
"title": "36 years old, born May 12, 1990",
"birthday": "1990-05-12",
"verified": true
},
{
"id": "basic-location",
"kind": "location",
"title": "San Francisco, CA",
"location": "San Francisco, CA"
}
]
},
"images": {
"items": [
{
"id": "image_123",
"imageUrl": "https://images.example.com/maya-chen.jpg",
"role": "primary",
"type": "default",
"question": "Profile photo",
"faceMatch": true,
"faceMatchScore": 0.87,
"displayOrder": 1,
"sources": [
{
"link": "https://example.com/maya-chen",
"sourceName": "Example"
}
]
}
]
},
"socials": {
"items": [
{
"id": "social_123",
"media": "github",
"handle": "mayachen",
"description": "Open-source robotics projects",
"icon": "github",
"priority": 1
}
]
},
"jobs": {
"items": [
{
"id": "job_123",
"kind": "job",
"company": "Example Robotics",
"title": "Founder and CEO",
"description": "Builds warehouse robotics systems.",
"years": "2021-present",
"imageUrl": "https://images.example.com/example-robotics.png",
"position": 1,
"sources": [
{
"link": "https://example.com/maya-chen-work",
"sourceName": "Example",
"chunks": [
{
"text": "Maya Chen founded Example Robotics in 2021 and leads the company as CEO."
}
]
}
],
"updatedAt": "2026-07-20T18:30:00.000Z"
}
],
"sources": [
{
"link": "https://example.com/maya-chen-work",
"sourceName": "Example"
}
]
},
"education": {
"items": [
{
"id": "education_123",
"kind": "education",
"school": "Example University",
"status": "Graduated",
"years": "2008-2012",
"linkedinSchoolId": "12345",
"schoolRecordId": "school_123"
}
]
},
"eventsTimeline": {
"items": [
{
"id": "event_123",
"kind": "event",
"title": "Example Robotics announced a new warehouse robot",
"description": "The company introduced its second-generation system.",
"date": "2026-06-10",
"datePrecision": "day",
"dateBasis": "stated",
"year": "2026",
"eventKey": "example-robotics-product-launch",
"updateCount": 1,
"lastUpdatedAt": "2026-06-11T09:00:00.000Z",
"changes": [
{
"sourceLink": "https://example.com/product-launch",
"sourceName": "Example",
"changeKind": "product_launch",
"summary": "A new system was announced."
}
]
}
]
},
"families": null,
"githubRepos": {
"items": [
{
"kind": "github_repo",
"name": "robot-planner",
"nameWithOwner": "mayachen/robot-planner",
"description": "Path-planning tools for mobile robots.",
"language": "Python",
"isFork": false,
"starsCount": 482,
"role": "maintainer",
"contributionsCount": 164
}
]
}
},
"sources": [
{
"link": "https://example.com/maya-chen",
"title": "Maya Chen",
"summary": "Public professional profile.",
"images": ["https://images.example.com/maya-chen.jpg"],
"sourceName": "Example",
"sourceImage": "https://example.com/favicon.ico",
"chunks": [
{
"text": "Maya Chen founded Example Robotics in 2021."
}
]
}
]
}
}
Response Object
profile.id. It can differ from
the path value when you read the profile through an alias ID or slug.profile.generationLevel.1contains Orbit identity data.2adds LinkedIn enrichment.3adds web, social, and OSINT enrichment.nullmeans a legacy profile has no stored generation level.
Profile Object
generation_level field.displayName. Omitted when
no public name is available.null means the profile has no public
image that is eligible for use as an avatar.profile_id in a
later profile read.id and a display-ready label. The field is omitted when
the profile category is unknown.All Profile Category IDs
All Profile Category IDs
VENTURE_CAPITALIST, ENTREPRENEUR, ENGINEER, FILM_MAKER, BANKER,
DESIGNER, MUSICIAN, ATHLETE, ACTOR, ACTRESS, CONTENT_CREATOR,
POLITICIAN, ENTERTAINER, ARTIST, GAMER, CHEF, DOCTOR, MODEL,
REAL_ESTATE_AGENT, REAL_ESTATE_DEVELOPER,
CAPITAL_MARKETS_EXECUTIVE, SCIENTIST, PROFESSOR, JOURNALIST,
AUTHOR, ACTIVIST, PHILANTHROPIST, LAWYER, COACH, ARCHITECT, and
ROYALTY.false when
the profile is not verified.firstReported value and the latest lastReported value.Show Properties
Show Properties
Field Availability
The response uses these availability rules:- Required fields are always present, even when their value is
nullor an empty array. - Most optional scalar fields, arrays, and objects are omitted when no public value is available.
- A section can be omitted when Orbit has no public content for it.
- Some sections can be
nullwhen the content is unavailable or intentionally hidden. profile.sections.socialsis always present. Itsitemsarray can be empty.profile.sourcesis always present. It can be an empty array.
null field as an empty string or zero.
Profile Sections
| Field | Type | Description |
|---|---|---|
bio | object, null, or omitted | Public profile summary. The object contains bio and optional sources. |
basic | object, null, or omitted | Basic facts such as birthday, school, and location. |
personalLife | object, null, or omitted | Public personal-life facts. |
images | object, null, or omitted | Public profile and social-media images. |
socials | object | Public social handles. Always present as { "items": [] } when empty. |
jobs | object or omitted | Public work history. |
education | object, null, or omitted | Public education history. |
passions | object, null, or omitted | Public interests and passions. |
worldview | object or omitted | Public worldview, cause, political, or religious information. |
accomplishments | object or omitted | Public accomplishments. |
controversies | object or omitted | Publicly reported controversies. |
bestQualities | object or omitted | Publicly described strengths or qualities. |
netWorth | object or omitted | Public net-worth range and related explanation. |
eventsTimeline | object or omitted | Dated public events and source-backed changes. |
portfolio | object or omitted | Public work samples. Can also contain a section-level summary. |
families | object or null | Public family relationships. null means no public family records are available. |
researchPapers | object or omitted | Public research-paper contributions. Contains at most 100 items. |
githubRepos | object or omitted | Public GitHub repository contributions. Contains at most 100 items. |
mediaCredits | object or omitted | Public film, television, and related media credits. Contains at most 100 items. |
musicCredits | object or omitted | Public music-release credits. Contains at most 100 items. |
books | object or omitted | Public authored-work contributions. Contains at most 100 items. |
{
"items": [],
"sources": []
}
items is required when the section object is present. sources is optional.
The images, socials, families, and contribution sections do not use the
generic source envelope.
Source evidence appears at two levels:
- The section-level
sourcesarray is the deduplicated union of the evidence for the whole section. - Each item can also carry its own
sourcesarray. It lists only the sources that support that specific item, and each source can include excerptchunksfrom the source text. Use the item-level array to map one item to its evidence. An item without attributed evidence omits the field.
chunks. An image source supports the item with the photo itself: the
supporting image arrives in images, chunks is empty, and link points to
the page the photo came from.
{
"link": "https://www.facebook.com/example/posts/123",
"sourceName": "facebook",
"images": ["https://images.example.com/cached-photo.jpg"],
"chunks": []
}
chunks and the
supporting image in images.
Section Fields
Unless a description says that a field is always present, the field is optional and is omitted when unavailable.Bio
Bio
| Field | Type | Description |
|---|---|---|
bio | string | Public profile summary. Always present when the bio section object is returned. |
sources | source[] | Public evidence for the profile summary. |
Common Fields
Common Fields
basic, personalLife, jobs, education, passions, worldview,
accomplishments, controversies, bestQualities, netWorth, and
portfolio use some or all of these fields. Fields that do not apply to an
item are omitted.| Field | Type | Description |
|---|---|---|
id | string | Public section-record ID. |
kind | string | Item discriminator, such as birthday, location, job, education, accomplishment, controversy, best_quality, or net_worth. |
title | string | Primary display text. |
description | string | Longer explanation or detail. |
birthday | string | Public birthday value, normally an ISO date when a full date is available. |
company | string | Company or employer name. |
school | string | School name. |
status | string | Education or item status. |
location | string | Location text for the item. |
imageUrl | string | Primary image or logo URL for the item. |
backgroundImageUrl | string | Background image URL, most often used by education records. |
years | string | Human-readable time span, such as 2021-present. |
position | number | Stored display-order hint. |
emoji | string | Display emoji when the section includes one. |
summary | string | Short item summary. |
range | string | Public range, most often used by net-worth records. |
rounds | string | Public rounds or repeated-event description. |
year | string or number | Year associated with the item. |
linkedinSchoolId | string | Public LinkedIn school identifier when available. |
schoolRecordId | string | Orbit’s normalized school-record identifier when available. |
verified | boolean | Whether Orbit has verified this item value. |
sources | source[] | Public evidence for this item only. Each source can include excerpt chunks that support the item. See Source object. |
sourceIds | string[] | IDs associated with the item’s normalized evidence records. |
updatedAt | string | Last-update timestamp, normally in ISO 8601 format. |
Images
Images
| Field | Type | Description |
|---|---|---|
id | string | Public image-record ID. |
imageUrl | string | Public image URL. Always present. |
role | primary or social_media | Always present. primary is eligible for the main profile image. social_media is a person-qualified image from the person’s public social content. |
type | string | Public image type when available. |
question | string | Public prompt or caption question associated with the image. |
faceMatch | boolean | The face model reads this image as the same person as the profile’s anchor face. Present on images the model judged. |
faceMatchScore | number | The highest face similarity measured for this image, from 0 to 1. Present on images the model judged. |
sources | source[] | Public evidence for the image. |
displayOrder | number | Public display-order hint. |
faceMatch and faceMatchScore carry that comparison, and faceMatchScore is a cosine similarity from 0 to 1. Orbit sets faceMatch to true above 0.3. The score lets you hold images to a stricter bar of your own.Socials
Socials
Events
Events
| Field | Type | Description |
|---|---|---|
date | string | Event date at its precision: YYYY-MM-DD for a day, YYYY-MM for a month, YYYY for a year. |
datePrecision | string | How much of date is known: day, month or year. |
dateBasis | string | Where the date comes from: stated (the source gives the date), published (the source’s publish or post date — show it as “Reported …”), or inferred (a year derived from context). |
eventKey | string | Normalized key used to group updates for the same event. |
updateCount | number | Number of updates merged into the event: new information or a new date. |
lastUpdatedAt | string | Timestamp of the latest update. |
changes | object[] | Source-backed changes that were merged into the event. |
changes[].sourceLink | string | Source URL for the change. |
changes[].sourceName | string | Human-readable source name. |
changes[].changeKind | string | Machine-readable change category. |
changes[].summary | string | Short description of the change. |
Family
Family
| Field | Type | Description |
|---|---|---|
id | string | Public family-record ID. |
kind | string | Always family_member. |
displayName | string | Family member’s public display name. |
relationship | string | Public relationship label. |
profilePicture | object | Public profile-picture record when available. |
profilePicture.id | string | Public picture-record ID. |
profilePicture.data.answer | string | Public picture answer, normally an image URL. |
profilePicture.data.question | string | Public picture question. |
profilePicture.data.type | string | Public picture type. |
Research
Research
| Field | Type | Description |
|---|---|---|
kind | string | Always research_paper. |
title | string | Public paper title. |
publicationDate | string | Publication date from the contribution record. |
summary | string | Public abstract or summary. |
isFirstAuthor | boolean | Whether the person is listed as first author. |
GitHub
GitHub
| Field | Type | Description |
|---|---|---|
kind | string | Always github_repo. |
name | string | Repository name. |
nameWithOwner | string | Repository name in owner/repository form. |
description | string | Public repository description. |
language | string | Primary programming language. |
isFork | boolean | Whether the repository is a fork. |
starsCount | number | Public GitHub star count. |
role | string | Person’s relationship to the repository. |
contributionsCount | number | Recorded contribution count for the person. |
Media
Media
| Field | Type | Description |
|---|---|---|
kind | string | Always media_credit. |
title | string | Film, television, or media title. |
imageUrl | string | Public cached artwork URL when available. |
mediaType | string | Media type, such as movie or television. |
releaseDate | string | Public release date. |
summary | string | Public title overview. |
roleType | string | Credit type, such as cast or crew. |
roleName | string | Role or character name. |
department | string | Production department. |
episodeCount | number | Number of credited episodes. |
Music
Music
| Field | Type | Description |
|---|---|---|
kind | string | Always music_credit. |
title | string | Public release title. |
imageUrl | string | Public cached artwork URL when available. |
releaseType | string | Primary release type, such as album or single. |
secondaryTypes | string[] | Additional release classifications. |
firstReleaseDate | string | First public release date. |
creditName | string | Name used in the release credit. |
role | string | Person’s role on the release. |
relationship | string | Relationship between the person and release. |
Books
Books
| Field | Type | Description |
|---|---|---|
kind | string | Always book_work. |
title | string | Public book or authored-work title. |
imageUrl | string | Public cached cover URL when available. |
firstPublishDate | string | First public publication date. |
description | string | Public work description. |
subjects | string[] | Public subject classifications. |
role | string | Person’s relationship to the work. |
Source Object
Profile-level sources, section sources, item sources, and image sources use the same sanitized shape. Internal IDs, model metadata, scores, and other internal fields are not returned.| Field | Type | Description |
|---|---|---|
link | string | Public source URL. Always present. |
title | string | Public page title or short source title. |
summary | string | Public summary of the source. |
caption | string | Public caption, such as the original caption for a social image. |
images | string[] | Public image URLs found on the source. For image-backed evidence, the first image is the photo that supports the item. |
sourceName | string | Human-readable publisher or platform name. |
sourceImage | string | Publisher logo or favicon URL. |
chunks | object[] | Public evidence text extracted from the source. |
chunks[].text | string | Evidence text. Always present when a chunk is returned. |
sources | source[] | Nested public sources when one source record contains additional sources. |
Authentication, Cost, and Limits
This endpoint requires theprofile:read scope. Successful reads consume
API credits. The default limit is 50 requests per second per API key, with a
burst capacity of 250 requests. Account-specific limits can differ. See
Rate limits.
Error Response
Errors use the common error envelope:{
"status": "failed",
"error": {
"code": "developer_profile_not_found",
"message": "Profile not found"
}
}
| Status | Code | Description |
|---|---|---|
400 | developer_v3_profile_format_invalid | format is empty, repeated, or not json or markdown. |
401 | missing_api_key | The request has no valid bearer API key. |
403 | invalid_api_key | The API key is malformed, expired, revoked, or unknown. |
403 | missing_api_key_scope | The API key does not have the profile:read scope. |
404 | developer_profile_not_found | The ID, alias, or slug does not resolve to a public Orbit profile. |
429 | developer_api_key_rate_limited | The API key exceeded the profile-read limit. Honor the Retry-After response header before retrying. |
POST /v3/enrich/{profile_id} when you need a higher generation level or a
fresh full profile.Authorizations
Use an Orbit API key from the Developer Dashboard.
Headers
A client-generated key for a safe retry. If the body omits request_id, Orbit can use this value as the request ID.
200Path Parameters
An Orbit profile ID or public profile slug. Profile reads also accept known alias IDs.
1Query Parameters
Response representation. Case-sensitive; empty, unsupported or repeated values return developer_v3_profile_format_invalid (400) before lookup or billing.
json, markdown Response
The current public profile as JSON or an opted-in Markdown file package.
- Option 1
- Option 2
1 <= x <= 3The public Orbit profile. Available fields depend on the profile generation level.
Show child attributes
Show child attributes
Credits charged for this read. A read settles at once: status is settled and consumedCredits is the full charge.
Show child attributes
Show child attributes
curl "https://api.orbitsearch.com/v3/enrich/$PROFILE_ID" \
-H "Authorization: Bearer $ORBIT_API_KEY"
const response = await fetch(
`https://api.orbitsearch.com/v3/enrich/${profileId}`,
{
headers: {
Authorization: `Bearer ${process.env.ORBIT_API_KEY}`,
},
}
);
if (!response.ok) {
throw new Error(`Profile read failed with ${response.status}`);
}
const { profile } = await response.json();
console.log(profile.displayName);
import os
import requests
response = requests.get(
f"https://api.orbitsearch.com/v3/enrich/{profile_id}",
headers={"Authorization": f"Bearer {os.environ['ORBIT_API_KEY']}"},
)
response.raise_for_status()
profile = response.json()["profile"]
print(profile.get("displayName"))
{
"profile_id": "profile_123",
"generation_level": 2,
"profile": {
"id": "profile_123",
"generationLevel": 2,
"displayName": "Maya Chen",
"personName": "Maya Chen",
"avatarUrl": "https://images.example.com/maya-chen.jpg",
"profileUrl": "https://orbitsearch.com/maya-chen",
"slug": "maya-chen",
"verified": true,
"location": {
"city": "San Francisco",
"region": "CA",
"country": "US"
},
"headline": {
"jobTitle": "Founder and CEO",
"companyName": "Example Robotics",
"schoolName": "Example University"
},
"sections": {
"socials": {
"items": [
{
"id": "social_linkedin_123",
"media": "linkedin",
"handle": "example-maya-chen",
"description": "Founder and CEO at Example Robotics",
"icon": "linkedin",
"priority": 1
}
]
},
"jobs": {
"items": [
{
"id": "job_123",
"kind": "job",
"company": "Example Robotics",
"title": "Founder and CEO",
"years": "2021-present",
"position": 1,
"updatedAt": "2026-07-20T18:30:00.000Z"
}
]
},
"education": {
"items": [
{
"id": "education_123",
"kind": "education",
"school": "Example University",
"status": "Graduated",
"years": "2008-2012",
"linkedinSchoolId": "12345",
"schoolRecordId": "school_123"
}
]
}
},
"sources": [
{
"link": "https://www.linkedin.com/in/example-maya-chen",
"title": "Maya Chen",
"summary": "Public professional profile.",
"sourceName": "LinkedIn"
}
]
}
}
{
"profile_id": "profile_123",
"generation_level": 3,
"profile": {
"id": "profile_123",
"generationLevel": 3,
"displayName": "Maya Chen",
"personName": "Maya Chen",
"aliases": ["Maya L. Chen"],
"avatarUrl": "https://images.example.com/maya-chen.jpg",
"profileUrl": "https://orbitsearch.com/maya-chen",
"slug": "maya-chen",
"category": {
"id": "ENGINEER",
"label": "Engineer"
},
"verified": true,
"location": {
"city": "San Francisco",
"region": "CA",
"country": "US"
},
"headline": {
"jobTitle": "Founder and CEO",
"companyName": "Example Robotics",
"schoolName": "Example University"
},
"emails": ["maya@example.com"],
"phoneNumbers": ["+14155550123"],
"addresses": [
{
"street": "1 Market Street",
"city": "San Francisco",
"region": "CA",
"postalCode": "94105",
"country": "US",
"firstReported": 2021,
"lastReported": 2026
}
],
"sections": {
"bio": {
"bio": "Maya Chen is an engineer and the founder of Example Robotics.",
"sources": [
{
"link": "https://example.com/maya-chen",
"title": "Maya Chen",
"sourceName": "Example",
"sourceImage": "https://example.com/favicon.ico"
}
]
},
"basic": {
"items": [
{
"id": "basic-birthday",
"kind": "birthday",
"title": "36 years old, born May 12, 1990",
"birthday": "1990-05-12",
"verified": true
},
{
"id": "basic-location",
"kind": "location",
"title": "San Francisco, CA",
"location": "San Francisco, CA"
}
]
},
"images": {
"items": [
{
"id": "image_123",
"imageUrl": "https://images.example.com/maya-chen.jpg",
"role": "primary",
"type": "default",
"question": "Profile photo",
"faceMatch": true,
"faceMatchScore": 0.87,
"displayOrder": 1,
"sources": [
{
"link": "https://example.com/maya-chen",
"sourceName": "Example"
}
]
}
]
},
"socials": {
"items": [
{
"id": "social_123",
"media": "github",
"handle": "mayachen",
"description": "Open-source robotics projects",
"icon": "github",
"priority": 1
}
]
},
"jobs": {
"items": [
{
"id": "job_123",
"kind": "job",
"company": "Example Robotics",
"title": "Founder and CEO",
"description": "Builds warehouse robotics systems.",
"years": "2021-present",
"imageUrl": "https://images.example.com/example-robotics.png",
"position": 1,
"sources": [
{
"link": "https://example.com/maya-chen-work",
"sourceName": "Example",
"chunks": [
{
"text": "Maya Chen founded Example Robotics in 2021 and leads the company as CEO."
}
]
}
],
"updatedAt": "2026-07-20T18:30:00.000Z"
}
],
"sources": [
{
"link": "https://example.com/maya-chen-work",
"sourceName": "Example"
}
]
},
"education": {
"items": [
{
"id": "education_123",
"kind": "education",
"school": "Example University",
"status": "Graduated",
"years": "2008-2012",
"linkedinSchoolId": "12345",
"schoolRecordId": "school_123"
}
]
},
"eventsTimeline": {
"items": [
{
"id": "event_123",
"kind": "event",
"title": "Example Robotics announced a new warehouse robot",
"description": "The company introduced its second-generation system.",
"date": "2026-06-10",
"datePrecision": "day",
"dateBasis": "stated",
"year": "2026",
"eventKey": "example-robotics-product-launch",
"updateCount": 1,
"lastUpdatedAt": "2026-06-11T09:00:00.000Z",
"changes": [
{
"sourceLink": "https://example.com/product-launch",
"sourceName": "Example",
"changeKind": "product_launch",
"summary": "A new system was announced."
}
]
}
]
},
"families": null,
"githubRepos": {
"items": [
{
"kind": "github_repo",
"name": "robot-planner",
"nameWithOwner": "mayachen/robot-planner",
"description": "Path-planning tools for mobile robots.",
"language": "Python",
"isFork": false,
"starsCount": 482,
"role": "maintainer",
"contributionsCount": 164
}
]
}
},
"sources": [
{
"link": "https://example.com/maya-chen",
"title": "Maya Chen",
"summary": "Public professional profile.",
"images": ["https://images.example.com/maya-chen.jpg"],
"sourceName": "Example",
"sourceImage": "https://example.com/favicon.ico",
"chunks": [
{
"text": "Maya Chen founded Example Robotics in 2021."
}
]
}
]
}
}

idhandlemediagithub.descriptioniconpriority