المعرفة
كل عملية في هذه المجموعة: ما تقبله وما تُرجعه والأخطاء التي قد تردّ بها.
العمليات
The workspace knowledge base: notes, files and web pages the AI uses when it writes replies, drafts email and answers in the assistant. Each item sits at one level. A scope is empty for the whole workspace, @ and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.
Files are read into text in the background, PDFs, Office and OpenDocument files, spreadsheets, CSV, HTML, XML, Markdown, text and images among them. Text is encrypted at rest, and search runs over the meaning of the text as well as its words.
/knowledge/knowledge/levels/knowledge/usage/knowledge/search/knowledge/notes/knowledge/links/knowledge/files/knowledge/{id}/knowledge/{id}/knowledge/{id}/knowledge/{id}/refresh/knowledge/stats/knowledge/suggestions/knowledge/suggestions/{id}/accept/knowledge/suggestions/{id}/dismiss/knowledge/flags/knowledge/flags/{id}/dismiss/knowledge/connectors/knowledge/connectors/knowledge/connectors/{id}/knowledge/connectors/{id}/knowledge/connectors/{id}/knowledge/connectors/{id}/sync/knowledge/drafts
GET/knowledge
List knowledge items
Newest first. Every filter is optional. q matches titles, file names and links. A key or an app limited to particular addresses sees the whole-workspace items and the items at its addresses and their domains.
Requires the knowledge:read scope.
معلمات الاستعلام
scopestringOnly the items at exactly this level. A
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.levelstringOnly items at this kind of level.
أحد"workspace""domain""address"kindstringKeeps one kind of item:
note,fileorlink.أحد"note""file""link"statusstringKeeps one status:
queued,processing,readyorfailed.أحد"queued""processing""ready""failed"pinnedstringtruekeeps the pinned notes andfalseeverything else.أحد"true""false"qstringWords in the title, file name or link.
limitintegerRows per page, 1 to 100.
على الأقل 1على الأكثر 100الافتراضي25cursorstringThe previous page's
nextCursor, passed back as it came. It is opaque: it holds where the last row sat in this list's order, so a row deleted or edited between pages never breaks the walk, and the next page starts at the first row that sorts after it. A value this list did not hand out is a 400invalid_cursor.
يُرجع
A page of items.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
GET/knowledge/levels
List knowledge levels
The whole workspace, each domain and each address the caller can see, how many items each holds and whether the caller may change items there.
Requires the knowledge:read scope.
يُرجع
Every level the caller can see.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
- TypeScript
knowledge.levels()- Python
knowledge.levels()- Ruby
knowledge.levels- PHP
knowledge->levels- CLI
openemail knowledge levels- MCP
listKnowledgeLevels
GET/knowledge/usage
Read knowledge base usage
How many items and characters of text the workspace holds, against what its plan allows.
Requires the knowledge:read scope.
يُرجع
The usage and the limits.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
- TypeScript
knowledge.usage()- Python
knowledge.usage()- Ruby
knowledge.usage- PHP
knowledge->usage- CLI
openemail knowledge usage- MCP
getKnowledgeUsage
POST/knowledge/search
Search the knowledge base
The passages that best answer query, by meaning and by words, the way the AI finds them. With address, the levels the AI uses for that address: the address, its domain and the whole workspace, the most specific ranked a little higher. With scope, that one level. With neither, every level the caller can see.
Requires the knowledge:read scope.
متن الطلب
querystringمطلوبWhat to look for, in plain words, up to 500 characters.
من 1 إلى 500 من الأحرفaddressstringAn address of the workspace, to search the levels the AI uses when it writes as that address.
حتى 320 من الأحرفscopestringOne level to search: an empty string for the whole workspace,
@and a domain, or one address.حتى 320 من الأحرفlimitintegerHow many passages, from 1 to 25. The server defaults to 8.
على الأقل 1على الأكثر 25rerankbooleanWhen true, the AI reads the best 25 passages and puts them in the order that best answers
query, leaving out the ones that do not help. It adds a second or two and counts as one AI action. When it cannot finish, the passages keep their usual order andrerankedis false.
يُرجع
The passages, best first.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
- TypeScript
knowledge.search()- Python
knowledge.search()- Ruby
knowledge.search- PHP
knowledge->search- CLI
openemail knowledge search- MCP
searchKnowledge
POST/knowledge/notes
Add a note
Up to 20,000 characters of text, in Markdown if you like. A note is usually ready for the AI in a second or two. Changing an item needs reach over every address its level covers: the whole workspace needs every address, a domain needs the whole domain, and an address needs that address. A key or an app limited to particular addresses can change items only at those addresses, or at domains it holds whole.
Requires the knowledge:write scope.
متن الطلب
scopestringThe level: an empty string, or left out, for the whole workspace,
@and a domain such as@acme.com, or one address such as[email protected].حتى 320 من الأحرفالافتراضي""titlestringمطلوبA short name for the note, at most 200 characters.
من 1 إلى 200 من الأحرفbodystringمطلوبThe text, up to 20,000 characters, in Markdown if you like.
من 1 إلى 20000 من الأحرفpinnedbooleanPuts the note into every prompt at its level. Left out, false.
threadIdstringThe conversation the note comes from, such as one
POST /knowledge/draftsdrafted it from.من 1 إلى 200 من الأحرف
يُرجع
The note.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
POST/knowledge/links
Add a link
A public web page, at most 2048 characters long. It is fetched and read in the background, so the item starts queued. Without a title, the page's own title is used. Changing an item needs reach over every address its level covers: the whole workspace needs every address, a domain needs the whole domain, and an address needs that address. A key or an app limited to particular addresses can change items only at those addresses, or at domains it holds whole.
Requires the knowledge:write scope.
متن الطلب
scopestringThe level: an empty string, or left out, for the whole workspace,
@and a domain such as@acme.com, or one address such as[email protected].حتى 320 من الأحرفالافتراضي""urlstringمطلوبThe page, a public
httporhttpsaddress of at most 2,048 characters.من 1 إلى 2048 من الأحرفtitlestringA name for the item, at most 200 characters. Left out, the page's own title once it has been read.
حتى 200 من الأحرفrefreshDaysintegerRead the page again every this many days (1, 7, 30), so changes reach the AI on their own. Left out or null, it is read again only when you ask.
يمكن أن يكون nullأكثر من 0
يُرجع
The link, queued to be read.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
POST/knowledge/files
Upload a file
Send the file itself as the request body, with its Content-Type, and name it with filename or an X-Filename header. At most 20 MB for a document and 10 MB for an image. The text is read in the background, so the item starts queued. Changing an item needs reach over every address its level covers: the whole workspace needs every address, a domain needs the whole domain, and an address needs that address. A key or an app limited to particular addresses can change items only at those addresses, or at domains it holds whole.
Requires the knowledge:write scope.
معلمات الاستعلام
scopestringA
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.filenamestringThe file name. Its extension tells the kind of file when the
Content-Typeis generic.titlestringLeft out, the file name without its extension.
حتى 200 من الأحرف
متن الطلب
نوع المحتوىapplication/octet-stream
يُرجع
The file, queued to be read.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
GET/knowledge/{id}
Get a knowledge item
The item with its text: a note's body, or the first 20,000 characters read from a file or a page.
Requires the knowledge:read scope.
معلمات المسار
idstringمطلوبThe id of a knowledge item, as
GET /knowledgereturns it.
يُرجع
The item and its text.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
- TypeScript
knowledge.get()- Python
knowledge.get()- Ruby
knowledge.get- PHP
knowledge->get- CLI
openemail knowledge get- MCP
getKnowledge
PATCH/knowledge/{id}
Change a knowledge item
Give at least one field. body and pinned are for notes, url and refreshDays are for links. A changed title, body or link is indexed again, and an item moved to another level keeps its index. Changing an item needs reach over every address its level covers: the whole workspace needs every address, a domain needs the whole domain, and an address needs that address. A key or an app limited to particular addresses can change items only at those addresses, or at domains it holds whole. Moving an item needs that reach at both levels.
Requires the knowledge:write scope.
معلمات المسار
idstringمطلوبThe id of a knowledge item, as
GET /knowledgereturns it.
متن الطلب
titlestringA new name, at most 200 characters.
من 1 إلى 200 من الأحرفbodystringNotes only.
من 1 إلى 20000 من الأحرفscopestringA
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.pinnedbooleanNotes only.
urlstringLinks only.
من 1 إلى 2048 من الأحرفrefreshDaysintegerLinks only: read the page again every this many days. Null stops that.
يمكن أن يكون nullأحد1730
يُرجع
The item as it is now.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
- TypeScript
knowledge.update()- Python
knowledge.update()- Ruby
knowledge.update- PHP
knowledge->update- CLI
openemail knowledge update- MCP
updateKnowledge
DELETE/knowledge/{id}
Delete a knowledge item
Gone for good, with its file and its passages. The AI stops using it at once.
Requires the knowledge:write scope.
معلمات المسار
idstringمطلوبThe id of a knowledge item, as
GET /knowledgereturns it.
يُرجع
Deleted.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
- TypeScript
knowledge.delete()- Python
knowledge.delete()- Ruby
knowledge.delete- PHP
knowledge->delete- CLI
openemail knowledge delete- MCP
deleteKnowledge
POST/knowledge/{id}/refresh
Read a knowledge item again
Fetches a link again, reads a file again, or indexes a note again, and clears a failure. The previous text stays in use until the new one is ready.
Requires the knowledge:write scope.
معلمات المسار
idstringمطلوبThe id of a knowledge item, as
GET /knowledgereturns it.
يُرجع
The item, queued to be read again.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
- TypeScript
knowledge.refresh()- Python
knowledge.refresh()- Ruby
knowledge.refresh- PHP
knowledge->refresh- CLI
openemail knowledge refresh- MCP
refreshKnowledge
GET/knowledge/stats
Read knowledge base stats
How the AI used the knowledge base over the last days days, 30 unless you say. uses counts the times a reply suggestion, a draft, the assistant or a search found something in it and empty the times it looked and found nothing, for the whole workspace, with bySurface splitting uses by where. topItems, unusedItems, the waiting suggestions and questions and the open flags count only what the caller can see.
Requires the knowledge:read scope.
معلمات الاستعلام
daysintegerHow many days back to count, today included.
على الأقل 1على الأكثر 90الافتراضي30
يُرجع
The stats.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
- TypeScript
knowledge.stats()- Python
knowledge.stats()- Ruby
knowledge.stats- PHP
knowledge->stats- CLI
openemail knowledge stats- MCP
getKnowledgeStats
GET/knowledge/suggestions
List knowledge suggestions
Notes the AI suggests and questions nothing in the knowledge base answers, the most recent first, pending ones unless you ask for another status. A learned suggestion comes from a reply sent from the workspace in a conversation: the AI reads the message the reply answers and the reply, and keeps up to three facts that would hold for other people too, at the level of the domain the reply was sent from, or the whole workspace when that domain is not one of its own. Facts the knowledge base already holds are left out, and at most 100 replies a day are read. A question comes from an incoming message: when the AI suggests replies to it, it notes up to 3 things the sender asked about the business that neither the conversation nor the knowledge base answers, at the level of the domain the message arrived at, chosen the same way. The same fact or question again counts up occurrences, and one that was dismissed is not suggested again. Both stop while the workspace setting knowledgeLearning is off.
Requires the knowledge:read scope.
معلمات الاستعلام
kindstringKeeps one kind:
learnedfor notes drawn from sent replies, orquestionfor questions nothing answers.أحد"learned""question"statusstringKeeps one status:
pending,acceptedordismissed. Left out,pending.أحد"pending""accepted""dismissed"الافتراضي"pending"limitintegerRows per page, 1 to 100.
على الأقل 1على الأكثر 100الافتراضي25cursorstringThe previous page's
nextCursor, passed back as it came. It is opaque: it holds where the last row sat in this list's order, so a row deleted or edited between pages never breaks the walk, and the next page starts at the first row that sorts after it. A value this list did not hand out is a 400invalid_cursor.
يُرجع
A page of suggestions and questions.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
- TypeScript
knowledge.listSuggestions()knowledge.listAllSuggestions()knowledge.iterateSuggestions()- Python
knowledge.list_suggestions()knowledge.list_all_suggestions()knowledge.iterate_suggestions()- Ruby
knowledge.list_suggestionsknowledge.list_all_suggestionsknowledge.iterate_suggestions- PHP
knowledge->listSuggestionsknowledge->listAllSuggestionsknowledge->iterateSuggestions- CLI
openemail knowledge list-suggestions- MCP
listKnowledgeSuggestions
POST/knowledge/suggestions/{id}/accept
Accept a knowledge suggestion
Saves the suggestion as a note, with any field you send in place of the suggested one, and marks it accepted. A question needs its answer in body, and its title stays the question unless you send one. Changing an item needs reach over every address its level covers: the whole workspace needs every address, a domain needs the whole domain, and an address needs that address. A key or an app limited to particular addresses can change items only at those addresses, or at domains it holds whole.
Requires the knowledge:write scope.
معلمات المسار
idstringمطلوبThe id of a suggestion or question, as
GET /knowledge/suggestionsreturns it.
متن الطلب
titlestringLeft out, the suggested title or the question.
من 1 إلى 200 من الأحرفbodystringLeft out, the suggested note. A question needs it: the answer.
من 1 إلى 20000 من الأحرفscopestringLeft out, the suggested level. A
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.pinnedbooleanPut the note into every prompt at its level.
يُرجع
The suggestion and the note made from it.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
POST/knowledge/suggestions/{id}/dismiss
Dismiss a knowledge suggestion
Marks the suggestion or question dismissed, so it leaves the pending list and is not suggested again. Nothing is added to the knowledge base. Changing an item needs reach over every address its level covers: the whole workspace needs every address, a domain needs the whole domain, and an address needs that address. A key or an app limited to particular addresses can change items only at those addresses, or at domains it holds whole.
Requires the knowledge:write scope.
معلمات المسار
idstringمطلوبThe id of a suggestion or question, as
GET /knowledge/suggestionsreturns it.
يُرجع
The suggestion, dismissed.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
GET/knowledge/flags
List knowledge flags
Open warnings about pairs of items, newest first. Each item is compared with the closest items at every level when it is indexed, and again whenever it changes. duplicate means two items say nearly the same thing. conflict means the AI found that two closely related items disagree on a fact, such as a price or a deadline, and detail says how. Conflicts are looked for while the workspace setting knowledgeLearning is on, at most 200 times a day. A flag shows only to a caller who can see both items. With itemId, only the flags that name that item.
Requires the knowledge:read scope.
معلمات الاستعلام
itemIdstringOnly the flags that name this knowledge item.
limitintegerHow many flags, from 1 to 100. The server defaults to 50.
على الأقل 1على الأكثر 100الافتراضي50
يُرجع
The open flags.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
POST/knowledge/flags/{id}/dismiss
Dismiss a knowledge flag
Marks the flag dismissed, and the same two items are not flagged for the same reason again. To settle a real duplicate or conflict instead, change or delete one of the items. It needs the reach to change items at the levels of both.
Requires the knowledge:write scope.
معلمات المسار
idstringمطلوبThe id of a flag, as
GET /knowledge/flagsreturns it.
يُرجع
The flag, dismissed.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
GET/knowledge/connectors
List knowledge connectors
Every connector at a level the caller can see, newest first.
Requires the knowledge:read scope.
يُرجع
The connectors.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
POST/knowledge/connectors
Add a knowledge connector
Keeps many web pages from one source in the knowledge base, each page as a link item at the connector's level. site reads the page at url and follows its links to pages on the same host under the same path, leaving out what the site's robots.txt disallows. sitemap reads a sitemap, or a sitemap index and up to 5 of its sitemaps. feed reads an RSS or Atom feed. zendesk reads the published articles of a Zendesk help center, from its address such as https://example.zendesk.com. It keeps at most pageLimit pages, 25 unless you say. The first sync starts within a minute, and it syncs again every refreshDays days, 7 unless you say: new pages are added, changed ones are read again and pages that are gone are removed. A page already in the knowledge base as a link at the same level is left to that item. Its items count toward the plan allowance, and a sync stops adding pages once that is reached. Changing an item needs reach over every address its level covers: the whole workspace needs every address, a domain needs the whole domain, and an address needs that address. A key or an app limited to particular addresses can change items only at those addresses, or at domains it holds whole.
Requires the knowledge:write scope.
متن الطلب
kindstringمطلوبA site it crawls, a sitemap, an RSS or Atom feed, or a Zendesk help center.
أحد"site""sitemap""feed""zendesk"urlstringمطلوبA public https address: the page a site crawl starts from, the sitemap, the feed, or the address of the help center.
من 1 إلى 2048 من الأحرفscopestringA
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.الافتراضي""titlestringLeft out, the host and the kind.
حتى 200 من الأحرفrefreshDaysintegerSync again every this many days, 7 when left out. Null syncs only when you ask.
يمكن أن يكون nullأحد1730pageLimitintegerThe most pages to keep.
على الأقل 1على الأكثر 200الافتراضي25
يُرجع
The connector, queued for its first sync.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
GET/knowledge/connectors/{id}
Get a knowledge connector
The connector, how many items it keeps and when it syncs next.
Requires the knowledge:read scope.
معلمات المسار
idstringمطلوبThe id of a connector, as
GET /knowledge/connectorsreturns it.
يُرجع
The connector.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
PATCH/knowledge/connectors/{id}
Change a knowledge connector
Give at least one field. Moving it to another level moves its items with it, and they are indexed again there. Changing an item needs reach over every address its level covers: the whole workspace needs every address, a domain needs the whole domain, and an address needs that address. A key or an app limited to particular addresses can change items only at those addresses, or at domains it holds whole. Moving it needs that reach at both levels.
Requires the knowledge:write scope.
معلمات المسار
idstringمطلوبThe id of a connector, as
GET /knowledge/connectorsreturns it.
متن الطلب
titlestringA new name, at most 200 characters.
من 1 إلى 200 من الأحرفscopestringA
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.refreshDaysintegerSync again every this many days. Null syncs only when you ask.
يمكن أن يكون nullأحد1730pageLimitintegerThe most pages to keep, from 1 to 200.
على الأقل 1على الأكثر 200
يُرجع
The connector as it is now.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
DELETE/knowledge/connectors/{id}
Delete a knowledge connector
Gone for good, with every item it added to the knowledge base. The AI stops using them at once.
Requires the knowledge:write scope.
معلمات المسار
idstringمطلوبThe id of a connector, as
GET /knowledge/connectorsreturns it.
يُرجع
Deleted.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
POST/knowledge/connectors/{id}/sync
Sync a knowledge connector now
Queues a sync that starts within a minute, whatever the schedule says, and clears a failure.
Requires the knowledge:write scope.
معلمات المسار
idstringمطلوبThe id of a connector, as
GET /knowledge/connectorsreturns it.
يُرجع
The connector, queued to sync.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
POST/knowledge/drafts
Draft a note from a conversation
The AI reads the conversation and writes one note of the facts in it that the team will need again, leaving out personal details and what matters only to that conversation. Nothing is saved: send the draft, changed as you like, to POST /knowledge/notes with the same threadId to keep it. scope suggests a level: the domain the conversation arrived at when the caller may add items there, otherwise the whole workspace or the address. It counts as one AI action.
Requires the knowledge:write and threads:read scopes.
متن الطلب
threadIdstringمطلوبThe conversation, by the id the thread endpoints give it.
من 1 إلى 200 من الأحرف
يُرجع
The draft note.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
الكائنات
DeletedKnowledgeConnectorobject
objectstring- أحد
"knowledge_connector" idstringdeletedboolean- أحد
true
DeletedKnowledgeItemobject
objectstring- أحد
"knowledge_item" idstringdeletedboolean- أحد
true
KnowledgeConnectorobject
objectstringمطلوب- أحد
"knowledge_connector" idstringمطلوبkindstringمطلوبA site it crawls, a sitemap, an RSS or Atom feed, or a Zendesk help center.
أحد"site""sitemap""feed""zendesk"scopestringمطلوبA
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.levelstringمطلوب- أحد
"workspace""domain""address" titlestringمطلوب- حتى 200 من الأحرف
urlstringمطلوبrefreshDaysintegerمطلوبIt syncs again every this many days. Null when it syncs only when you ask.
يمكن أن يكون nullأحد1730pageLimitintegerمطلوبThe most pages it keeps.
statusstringمطلوبqueueduntil a sync starts,syncingwhile it reads the source,readyonce its pages are items,failedwhen the source could not be read after several tries.أحد"queued""syncing""ready""failed"failurestringمطلوب- يمكن أن يكون nullأحد
"unsupported""empty""too_large""fetch_failed""blocked_url""conversion_failed""index_failed""over_allowance""missing_file" itemsintegerمطلوبHow many items it keeps in the knowledge base.
lastSyncAtstringمطلوب- يمكن أن يكون nullالتنسيق
date-time nextSyncAtstringمطلوب- يمكن أن يكون nullالتنسيق
date-time createdAtstringمطلوب- التنسيق
date-time updatedAtstringمطلوب- التنسيق
date-time
KnowledgeConnectorListobject
objectstring- أحد
"list"
KnowledgeDraftobject
objectstringمطلوب- أحد
"knowledge_draft" titlestringمطلوبbodystringمطلوبThe note, in Markdown.
scopestringمطلوبThe suggested level. A
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.threadIdstringمطلوب
KnowledgeFlagobject
objectstringمطلوب- أحد
"knowledge_flag" idstringمطلوبkindstringمطلوبduplicatewhen the two items say nearly the same thing,conflictwhen they disagree on a fact.أحد"duplicate""conflict"statusstringمطلوب- أحد
"open""dismissed" sourceIdstringمطلوبsourceTitlestringمطلوبotherSourceIdstringمطلوبotherSourceTitlestringمطلوبdetailstringمطلوبFor a conflict, one sentence on the facts that disagree. Null for a duplicate.
يمكن أن يكون nullscorenumberمطلوبHow close in meaning the two items are, from 0 to 1.
createdAtstringمطلوب- التنسيق
date-time
KnowledgeFlagListobject
objectstring- أحد
"list" dataKnowledgeFlag[]
KnowledgeItemobject
objectstringمطلوب- أحد
"knowledge_item" idstringمطلوبkindstringمطلوبA note written in place, an uploaded file, or a web page fetched from a link.
أحد"note""file""link"scopestringمطلوبA
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.levelstringمطلوب- أحد
"workspace""domain""address" titlestringمطلوب- حتى 200 من الأحرف
urlstringمطلوبThe page a link item reads. Null for notes and files.
يمكن أن يكون nullfileNamestringمطلوب- يمكن أن يكون null
mimeTypestringمطلوب- يمكن أن يكون null
sizeBytesintegerمطلوب- يمكن أن يكون null
pinnedbooleanمطلوبA pinned note goes into every AI prompt at its level, not only when it matches.
statusstringمطلوبqueuedandprocessingwhile the text is read and indexed,readyonce the AI can use it,failedwhen it could not be read. A changed item goes back toqueued, and its previous text stays in use until the new one is ready.أحد"queued""processing""ready""failed"failurestringمطلوب- يمكن أن يكون nullأحد
"unsupported""empty""too_large""fetch_failed""blocked_url""conversion_failed""index_failed""over_allowance""missing_file" chunksintegerمطلوبHow many passages the text was split into for search.
charsintegerمطلوبCharacters of text, which count toward the plan allowance.
originstringمطلوب- أحد
"app""api""assistant""mcp" createdBystringمطلوب- يمكن أن يكون null
createdAtstringمطلوب- التنسيق
date-time updatedAtstringمطلوب- التنسيق
date-time indexedAtstringمطلوب- يمكن أن يكون nullالتنسيق
date-time refreshDaysintegerمطلوبLinks only: the page is read again every this many days, and changes reach the AI on their own. Null when it is read only when you ask.
يمكن أن يكون nullأحد1730nextRefreshAtstringمطلوبWhen the page is next read again. Null when it is not scheduled.
يمكن أن يكون nullالتنسيقdate-timeconnectorIdstringمطلوبThe connector that keeps this item in step with its source, or null for an item added by hand.
يمكن أن يكون nullthreadIdstringمطلوبThe conversation the note was saved from, or null.
يمكن أن يكون nullusesintegerمطلوبHow many times it came up in a reply suggestion, a draft, the assistant or a search.
lastUsedAtstringمطلوب- يمكن أن يكون nullالتنسيق
date-time flagsintegerمطلوبHow many open duplicate or conflict flags name it. Lists and
GET /knowledge/{id}count them, and the answer to a change says 0.
KnowledgeItemDetailobject
objectstring- أحد
"knowledge_item" idstringkindstringA note written in place, an uploaded file, or a web page fetched from a link.
أحد"note""file""link"scopestringA
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.levelstring- أحد
"workspace""domain""address" titlestring- حتى 200 من الأحرف
urlstringThe page a link item reads. Null for notes and files.
يمكن أن يكون nullfileNamestring- يمكن أن يكون null
mimeTypestring- يمكن أن يكون null
sizeBytesinteger- يمكن أن يكون null
pinnedbooleanA pinned note goes into every AI prompt at its level, not only when it matches.
statusstringqueuedandprocessingwhile the text is read and indexed,readyonce the AI can use it,failedwhen it could not be read. A changed item goes back toqueued, and its previous text stays in use until the new one is ready.أحد"queued""processing""ready""failed"failurestring- يمكن أن يكون nullأحد
"unsupported""empty""too_large""fetch_failed""blocked_url""conversion_failed""index_failed""over_allowance""missing_file" chunksintegerHow many passages the text was split into for search.
charsintegerCharacters of text, which count toward the plan allowance.
originstring- أحد
"app""api""assistant""mcp" createdBystring- يمكن أن يكون null
createdAtstring- التنسيق
date-time updatedAtstring- التنسيق
date-time indexedAtstring- يمكن أن يكون nullالتنسيق
date-time refreshDaysintegerLinks only: the page is read again every this many days, and changes reach the AI on their own. Null when it is read only when you ask.
يمكن أن يكون nullأحد1730nextRefreshAtstringWhen the page is next read again. Null when it is not scheduled.
يمكن أن يكون nullالتنسيقdate-timeconnectorIdstringThe connector that keeps this item in step with its source, or null for an item added by hand.
يمكن أن يكون nullthreadIdstringThe conversation the note was saved from, or null.
يمكن أن يكون nullusesintegerHow many times it came up in a reply suggestion, a draft, the assistant or a search.
lastUsedAtstring- يمكن أن يكون nullالتنسيق
date-time flagsintegerHow many open duplicate or conflict flags name it. Lists and
GET /knowledge/{id}count them, and the answer to a change says 0.bodystringThe text of a note. Null for files and links.
يمكن أن يكون nullpreviewstringThe text the AI reads, from the start. Null while a file or page has not been read yet.
يمكن أن يكون nullpreviewTruncatedbooleanTrue when the text goes on past the preview.
KnowledgeItemListobject
objectstring- أحد
"list" dataKnowledgeItem[]hasMorebooleanTrue when another page follows. Pass
nextCursorback ascursorto read it.nextCursorstringAn opaque cursor for the next page, or null on the last page. Pass it back unchanged.
يمكن أن يكون null
KnowledgeLevelobject
objectstring- أحد
"knowledge_level" scopestringA
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.levelstring- أحد
"workspace""domain""address" writablebooleanWhether the caller may add and change items here.
itemsinteger
KnowledgeLevelListobject
objectstring- أحد
"list" dataKnowledgeLevel[]
KnowledgeSearchHitobject
sourceIdstringThe item the passage comes from.
titlestringkindstring- أحد
"note""file""link" scopestringlevelstring- أحد
"workspace""domain""address" urlstring- يمكن أن يكون null
headingstringThe headings the passage sits under, joined with
>.textstringscorenumberHigher is a better match. Only the order means anything.
KnowledgeSearchResultobject
objectstring- أحد
"knowledge_search" querystringrerankedbooleanTrue when the AI put the passages in order, as
rerankasks.
KnowledgeStatsobject
objectstring- أحد
"knowledge_stats" daysintegerusesintegerTimes the AI found something in the knowledge base.
emptyintegerTimes it looked and found nothing.
coveragenumberuses divided by uses and empty together, from 0 to 1. 0 when it never looked.
bySurfaceRecord<string, integer>usesby where they happened:compose,reply,chat,tool,search.seriesobject[]One entry per day, oldest first, days with nothing included.
daystring- التنسيق
date usesintegeremptyinteger
topItemsobject[]The items used most, ever.
idstringtitlestringkindstring- أحد
"note""file""link" scopestringusesintegerlastUsedAtstring- يمكن أن يكون nullالتنسيق
date-time
unusedItemsintegerReady items the AI has never used.
pendingSuggestionsintegeropenQuestionsintegeropenFlagsinteger
KnowledgeSuggestionobject
objectstringمطلوب- أحد
"knowledge_suggestion" idstringمطلوبkindstringمطلوبlearnedis a fact the AI found in a reply sent from the workspace.questionis something a sender asked that nothing in the knowledge base answers.أحد"learned""question"statusstringمطلوب- أحد
"pending""accepted""dismissed" scopestringمطلوبA
scopeis empty for the whole workspace,@and a domain for everything on that domain (@acme.com), or one address ([email protected]). The AI working for an address reads that address, then its domain, then the whole workspace, the most specific first.levelstringمطلوب- أحد
"workspace""domain""address" titlestringمطلوبThe suggested title, or the question.
bodystringمطلوبThe suggested note. Null for a question, which needs its answer when it is accepted.
يمكن أن يكون nulloccurrencesintegerمطلوبHow many times the same fact or question came up.
threadIdstringمطلوبThe conversation it came from most recently.
يمكن أن يكون nullsourceIdstringمطلوبThe note made from it, once it is accepted.
يمكن أن يكون nullcreatedAtstringمطلوب- التنسيق
date-time updatedAtstringمطلوب- التنسيق
date-time decidedAtstringمطلوب- يمكن أن يكون nullالتنسيق
date-time
KnowledgeSuggestionAcceptedobject
objectstringمطلوب- أحد
"knowledge_suggestion_accepted" suggestionKnowledgeSuggestionمطلوبitemKnowledgeItemمطلوب
KnowledgeSuggestionListobject
objectstring- أحد
"list" hasMorebooleanTrue when another page follows. Pass
nextCursorback ascursorto read it.nextCursorstringAn opaque cursor for the next page, or null on the last page. Pass it back unchanged.
يمكن أن يكون null
KnowledgeUsageobject
objectstring- أحد
"knowledge_usage" planstring- أحد
"free""starter""business""enterprise" sourcesintegerItems held.
charsintegerCharacters of text held.
limitsobjectsourcesintegercharsinteger