Oneprofile · Schema
AccountDetailReadSchema
One account as its page reads it: its list row, and every merge into it.
Sales OutreachAI ResearchEmail AutomationLinkedIn OutreachCRM Integration
Properties
| Name | Type | Description |
|---|---|---|
| bounced_count | integer | People here an email bounced from. |
| company_row_count | integer | How many company rows sit on it. |
| domain | object | |
| employee_count | object | The headcount as a number the list sorts by: a range's low end. |
| employees | object | The company's headcount as its page shows it: 35,000, or a range like 51-200. |
| has_activity | boolean | Whether anybody here was enrolled in a sequence or has a conversation. |
| id | string | The account's id, stable while its key stays the same. |
| in_sequence_count | integer | People here live in a sequence now. |
| industry | object | The company's industry, as its page shows it. |
| key | string | The account's key: its domain (acme.com), or its LinkedIn page (li-co:acme) until a row ties that page to a domain. |
| last_touch_at | object | When outreach last reached anybody here: the newest sequence step that went out or was done on a profile, or a reply, whichever is later. None when nobody was. |
| linkedin_page | object | The company's LinkedIn page key, if known. |
| logo_path | object | The company's logo, a path under this API's address that needs no credentials (`/accounts/logos/{name}/`). Null until one is found for its website: opening Accounts looks for the logos due in the back |
| merges | array | Each merge into this account, a merge into one merged into it too: the account merged in, the one it joined, who merged it and when, newest first. |
| name | string | |
| newest_row_at | string | When the newest row on it was made. |
| owner_email | object | The owner's email, if known. |
| owner_name | object | Who owns its company record in a connected CRM, as the CRM names them; null when no CRM record names an owner, or the CRM has not said who that is. |
| owner_tool | object | The CRM its owner comes from (Salesforce); set whenever a record names one. |
| people_count | integer | How many people sit on it, each counted once. |
| replied_count | integer | People here who replied, each counted once. |
| search_match | object | Why a search found it when its name and domain do not hold the search; null otherwise, and with no search. |
| table_count | integer | How many linked tables hold a row on it. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/getoneprofile-ai/json-schema/getoneprofile-ai-account-detail-read-schema-schema.json",
"title": "AccountDetailReadSchema",
"description": "One account as its page reads it: its list row, and every merge into it.",
"x-generated": "2026-11-10",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/getoneprofile-ai-accounts-api-openapi.yml#/components/schemas/AccountDetailReadSchema",
"properties": {
"bounced_count": {
"description": "People here an email bounced from.",
"title": "Bounced Count",
"type": "integer"
},
"company_row_count": {
"description": "How many company rows sit on it.",
"title": "Company Row Count",
"type": "integer"
},
"domain": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Domain"
},
"employee_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "The headcount as a number the list sorts by: a range's low end.",
"title": "Employee Count"
},
"employees": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The company's headcount as its page shows it: 35,000, or a range like 51-200.",
"title": "Employees"
},
"has_activity": {
"description": "Whether anybody here was enrolled in a sequence or has a conversation.",
"title": "Has Activity",
"type": "boolean"
},
"id": {
"description": "The account's id, stable while its key stays the same.",
"format": "uuid",
"title": "Id",
"type": "string"
},
"in_sequence_count": {
"description": "People here live in a sequence now.",
"title": "In Sequence Count",
"type": "integer"
},
"industry": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The company's industry, as its page shows it.",
"title": "Industry"
},
"key": {
"description": "The account's key: its domain (acme.com), or its LinkedIn page (li-co:acme) until a row ties that page to a domain.",
"title": "Key",
"type": "string"
},
"last_touch_at": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"description": "When outreach last reached anybody here: the newest sequence step that went out or was done on a profile, or a reply, whichever is later. None when nobody was.",
"title": "Last Touch At"
},
"linkedin_page": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The company's LinkedIn page key, if known.",
"title": "Linkedin Page"
},
"logo_path": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The company's logo, a path under this API's address that needs no credentials (`/accounts/logos/{name}/`). Null until one is found for its website: opening Accounts looks for the logos due in the background.",
"title": "Logo Path"
},
"merges": {
"description": "Each merge into this account, a merge into one merged into it too: the account merged in, the one it joined, who merged it and when, newest first.",
"items": {
"$ref": "#/$defs/AccountMergeReadSchema"
},
"title": "Merges",
"type": "array"
},
"name": {
"title": "Name",
"type": "string"
},
"newest_row_at": {
"description": "When the newest row on it was made.",
"format": "date-time",
"title": "Newest Row At",
"type": "string"
},
"owner_email": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The owner's email, if known.",
"title": "Owner Email"
},
"owner_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Who owns its company record in a connected CRM, as the CRM names them; null when no CRM record names an owner, or the CRM has not said who that is.",
"title": "Owner Name"
},
"owner_tool": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The CRM its owner comes from (Salesforce); set whenever a record names one.",
"title": "Owner Tool"
},
"people_count": {
"description": "How many people sit on it, each counted once.",
"title": "People Count",
"type": "integer"
},
"replied_count": {
"description": "People here who replied, each counted once.",
"title": "Replied Count",
"type": "integer"
},
"search_match": {
"anyOf": [
{
"$ref": "#/$defs/AccountSearchMatchReadSchema"
},
{
"type": "null"
}
],
"description": "Why a search found it when its name and domain do not hold the search; null otherwise, and with no search."
},
"table_count": {
"description": "How many linked tables hold a row on it.",
"title": "Table Count",
"type": "integer"
}
},
"required": [
"id",
"key",
"name",
"domain",
"linkedin_page",
"table_count",
"company_row_count",
"people_count",
"has_activity",
"newest_row_at",
"last_touch_at",
"replied_count",
"bounced_count",
"in_sequence_count",
"industry",
"employees",
"employee_count",
"merges"
],
"type": "object",
"$defs": {
"AccountMergeReadSchema": {
"description": "One merge a person made: every row of the first account shows on the second.",
"properties": {
"created_at": {
"format": "date-time",
"title": "Created At",
"type": "string"
},
"created_by_user_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Created By User Id"
},
"from_key": {
"title": "From Key",
"type": "string"
},
"to_key": {
"title": "To Key",
"type": "string"
}
},
"required": [
"from_key",
"to_key",
"created_by_user_id",
"created_at"
],
"title": "AccountMergeReadSchema",
"type": "object"
},
"AccountSearchMatchKind": {
"description": "Why the list's search found an account its own name and key do not hold (review AC-26).",
"enum": [
"person",
"merged_account",
"row_name"
],
"title": "AccountSearchMatchKind",
"type": "string"
},
"AccountSearchMatchReadSchema": {
"description": "Why the list's search found an account its own name and key do not hold (review AC-26).",
"properties": {
"kind": {
"$ref": "#/$defs/AccountSearchMatchKind",
"description": "`person`: a person on it is named so; `merged_account`: an account merged into it has this website or LinkedIn page; `row_name`: another row names the company so."
},
"value": {
"description": "The person's name, the merged account's website, or the name.",
"title": "Value",
"type": "string"
}
},
"required": [
"kind",
"value"
],
"title": "AccountSearchMatchReadSchema",
"type": "object"
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/getoneprofile-ai-account-detail-read-schema"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.