GET/api/v1/brain/sources
Llistar fonts del coneixement
L'índex del coneixement del clon (títol, tipus, paraules, estat). El text complet el dona el detall.
Paràmetres de consulta
starting_afterinteger
Cursor: retorna fonts amb id més gran que aquest.
source_typestring
Valors: youtube · text · pdf · video · website · instagram · vimeo
statusstring
Valors: pending · extracting · processing · ready · error
curl "https://www.clonify.com/api/v1/brain/sources" \
-H "Authorization: Bearer clk_live_…"
POST/api/v1/brain/sources
Entrenar el clon amb text
Crea una font de text, la trosseja, l'integra i l'enllaça a tots els teus clons. Igual que pujar-la pel panell. Consumeix quota de paraules del pla (403 words_quota_exceeded si no en queda).
Permís d'escriptura
Cos (JSON)
titlestring 2..200obligatori
contentstring 10..200000obligatori
content_dateYYYY-MM-DD
Data del contingut original (no de la pujada). Ometre = avui.
external_idstring
EL TEU identificador estable del contingut. Si ja has pujat un amb aquest id, es REEMPLAÇA (upsert idempotent per sincronitzar). La resposta porta replaced: true.
content_hashstring
La teva empremta del contingut original. Te la tornem en els llistats per detectar què ha canviat i tornar a pujar només allò.
curl -X POST "https://www.clonify.com/api/v1/brain/sources" \
-H "Authorization: Bearer clk_live_…" \
-H "Content-Type: application/json" \
-d '{"title":"…","content":"…"}'
{
"object": "brain_source",
"id": 12438,
"source_type": "text",
"title": "Guía de sentadilla",
"word_count": 210,
"status": "ready",
"chunk_count": 3,
"replaced": false,
"created_at": "2026-07-03T17:00:00.000Z",
"updated_at": "2026-07-03T17:00:04.000Z"
}
POST/api/v1/brain/sources/link
Entrenar el clon amb un enllaç
Una pàgina web (s'extreu el seu contingut net) o un vídeo de YouTube on parla NOMÉS el creador (s'utilitza la seva transcripció). Mateix pipeline i quota de paraules que el text. Un vídeo amb més veus necessita l'arxiu original al panell: 422 youtube_needs_file.
Permís d'escriptura
Cos (JSON)
urlstring (URL)obligatori
URL de la pàgina web o del vídeo de YouTube.
has_other_speakersboolean
Només vídeos: true si hi apareix una altra persona a més del creador (entrevista, podcast).
external_idstring
El TEU identificador estable del contingut. Si ja en vas pujar un amb aquest id, es REEMPLAÇA (upsert idempotent). L'extracció va ABANS del reemplaçament: un enllaç trencat no destrueix la font anterior.
content_hashstring
La teva empremta del contingut original. Te la tornem als llistats per detectar què ha canviat.
curl -X POST "https://www.clonify.com/api/v1/brain/sources/link" \
-H "Authorization: Bearer clk_live_…" \
-H "Content-Type: application/json" \
-d '{"url":"…"}'
{
"object": "brain_source",
"id": 12440,
"source_type": "website",
"title": "Guía completa de la sentadilla",
"word_count": 1480,
"status": "ready",
"chunk_count": 9,
"replaced": false,
"created_at": "2026-07-05T10:00:00.000Z",
"updated_at": "2026-07-05T10:00:21.000Z"
}
POST/api/v1/brain/sources/pdf
Entrenar el clon amb un PDF
Els bytes del PDF en base64, fins a ~3MB. Només PDFs amb text seleccionable: un escanejat (només imatges) retorna 422 pdf_no_text. Passa'l per OCR o envia el text amb POST /brain/sources. Mateixa quota de paraules que el text.
Permís d'escriptura
Cos (JSON)
titlestring 2..200obligatori
file_base64string (base64)obligatori
Els bytes del PDF codificats en base64 (sense prefix data:). Límit ~3MB de PDF. Per a més gran, el tauler.
content_dateYYYY-MM-DD
Data del contingut. Ometre = la data interna del PDF si en porta. Si no, avui.
external_idstring
El TEU identificador estable (p. ex. la ruta de l'arxiu). Si ja en vas pujar un amb aquest id, es REEMPLAÇA (upsert idempotent).
curl -X POST "https://www.clonify.com/api/v1/brain/sources/pdf" \
-H "Authorization: Bearer clk_live_…" \
-H "Content-Type: application/json" \
-d '{"title":"…","file_base64":"…"}'
GET/api/v1/brain/sources/{id}
Llegir una font
Una font amb el seu text complet (content_text). Pot pesar: el llistat no l'arrossega.
curl "https://www.clonify.com/api/v1/brain/sources/1" \
-H "Authorization: Bearer clk_live_…"
DELETE/api/v1/brain/sources/{id}
Esborrar una font
Esborra la font PERMANENTMENT, amb els seus fragments. ALLIBERA quota de paraules. És la peça del patró «treure i tornar a pujar» per sincronitzar contingut. No hi ha paperera.
Permís d'esborrat
curl -X DELETE "https://www.clonify.com/api/v1/brain/sources/1" \
-H "Authorization: Bearer clk_live_…" \
-H "Content-Type: application/json" \
-d '{}'
{ "id": 12438, "deleted": true }
DELETE/api/v1/brain/sources
Esborrar una font pel teu id
Igual que l'esborrat per id numèric, però usant el TEU external_id (el que vas passar en crear-la): la teva sincronització no necessita conèixer els nostres ids.
Permís d'esborrat
Paràmetres de consulta
external_idstringobligatori
El teu identificador estable de la font.
curl -X DELETE "https://www.clonify.com/api/v1/brain/sources" \
-H "Authorization: Bearer clk_live_…" \
-H "Content-Type: application/json" \
-d '{}'
{ "id": 12438, "external_id": "notion-doc-42", "deleted": true }
GET/api/v1/brain/folders
Llistar carpetes del coneixement
Les carpetes on s'organitza el material del clon, amb el seu id. És el que necessites per passar folder_id en pujar una font. Llista plana: cada carpeta indica de quina depèn a parent_id, i l'arbre el construeixes tu. Venen totes, sense paginar.
curl "https://www.clonify.com/api/v1/brain/folders" \
-H "Authorization: Bearer clk_live_…"
{
"object": "list",
"data": [{
"object": "brain_folder",
"id": 88,
"name": "Clases del curso",
"description": null,
"parent_id": null,
"product_id": 172,
"is_course": true,
"created_at": "2026-05-02T08:12:00.000Z",
"updated_at": "2026-07-19T11:40:00.000Z"
}],
"has_more": false,
"next_starting_after": null
}
POST/api/v1/brain/folders
Crear una carpeta
Crea una carpeta per arxivar el material que pugis. IDEMPOTENT: si ja n'hi ha una amb aquest nom al mateix nivell, et retorna la que existeix (created: false) en comptes de duplicar-la, així que una sincronització que s'executi cada nit no t'omple el coneixement de còpies.
Permís d'escriptura
Cos (JSON)
namestring 2..120obligatori
parent_idinteger
Carpeta de la qual depèn. Ometre = carpeta de primer nivell.
curl -X POST "https://www.clonify.com/api/v1/brain/folders" \
-H "Authorization: Bearer clk_live_…" \
-H "Content-Type: application/json" \
-d '{"name":"…"}'
{
"object": "brain_folder",
"id": 91,
"name": "Newsletter 2026",
"description": null,
"parent_id": null,
"product_id": null,
"is_course": false,
"created_at": "2026-07-30T10:00:00.000Z",
"updated_at": "2026-07-30T10:00:00.000Z",
"created": true
}
GET/api/v1/brain/guided-answers
Llistar respostes
Les preguntes freqüents del teu Coneixement (primer les fixades).
curl "https://www.clonify.com/api/v1/brain/guided-answers" \
-H "Authorization: Bearer clk_live_…"
POST/api/v1/brain/guided-answers
Crear resposta
Dos modes. AMB TEXT (amb answer): el clon es recolza en aquest text amb fidelitat quan la pregunta encaixi, dit amb la seva veu i llegint la conversa. LLIURE (sense answer): el clon parla lliure i es disparen les actions declarades.
Permís d'escriptura
Cos (JSON)
questionstring 3..300obligatori
UNA pregunta natural, tal com la escriuria un visitant (sense acumular-ne diverses amb «/»).
answerstring 1..4000
La resposta en la qual es recolza el clon. Buit = mode lliure (llavors actions és obligatori).
variantsstring[] (máx 10)
Altres maneres de preguntar EL MATEIX. Cadascuna amplia el match per significat.
actionsobject[]
Accions en disparar-se: {type: asset|product|external_link|video_embed|escalate_offer, …}.
curl -X POST "https://www.clonify.com/api/v1/brain/guided-answers" \
-H "Authorization: Bearer clk_live_…" \
-H "Content-Type: application/json" \
-d '{"question":"…"}'
DELETE/api/v1/brain/guided-answers/{id}
Esborrar resposta
Esborra la resposta PERMANENTMENT, amb les seves variants. No hi ha paperera.
Permís d'esborrat
curl -X DELETE "https://www.clonify.com/api/v1/brain/guided-answers/1" \
-H "Authorization: Bearer clk_live_…" \
-H "Content-Type: application/json" \
-d '{}'
{ "id": 204, "deleted": true }