@arbidocs/client 0.4.64 → 0.4.66

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1819,6 +1819,56 @@ interface paths {
1819
1819
  patch?: never;
1820
1820
  trace?: never;
1821
1821
  };
1822
+ '/v1/document/{document_ext_id}/markup': {
1823
+ parameters: {
1824
+ query?: never;
1825
+ header?: never;
1826
+ path?: never;
1827
+ cookie?: never;
1828
+ };
1829
+ /**
1830
+ * Get Document Markup
1831
+ * @description The version's marks and their revision (0 = no markup yet). Anyone who can see the document
1832
+ * can read them; ``can_edit`` says whether the caller may save.
1833
+ */
1834
+ get: operations['get_document_markup'];
1835
+ /**
1836
+ * Save Document Markup
1837
+ * @description Save the version's whole layer, overwriting its markup in place.
1838
+ *
1839
+ * Optimistic concurrency: the save must name the revision it started from (``If-Match`` or
1840
+ * ``base_revision``). When someone saved in between, nothing is written and the 409 carries the
1841
+ * latest revision: the client re-reads it, merges by annotation id and saves again.
1842
+ */
1843
+ put: operations['save_document_markup'];
1844
+ post?: never;
1845
+ delete?: never;
1846
+ options?: never;
1847
+ head?: never;
1848
+ patch?: never;
1849
+ trace?: never;
1850
+ };
1851
+ '/v1/document/{document_ext_id}/markup/pdf': {
1852
+ parameters: {
1853
+ query?: never;
1854
+ header?: never;
1855
+ path?: never;
1856
+ cookie?: never;
1857
+ };
1858
+ /**
1859
+ * Download Document Markup
1860
+ * @description "Download with markup": the version's PDF with its annotations as native PDF annotations
1861
+ * (Acrobat, Preview and other viewers show them). The plain download serves the original.
1862
+ */
1863
+ get: operations['download_document_markup'];
1864
+ put?: never;
1865
+ post?: never;
1866
+ delete?: never;
1867
+ options?: never;
1868
+ head?: never;
1869
+ patch?: never;
1870
+ trace?: never;
1871
+ };
1822
1872
  '/v1/conversation/list': {
1823
1873
  parameters: {
1824
1874
  query?: never;
@@ -5404,7 +5454,7 @@ interface components {
5404
5454
  * @default {
5405
5455
  * "API_TYPE": "remote",
5406
5456
  * "ENABLE_THINKING": false,
5407
- * "MODEL_NAME": "Fast",
5457
+ * "MODEL_NAME": "dummy",
5408
5458
  * "SYSTEM_INSTRUCTION": "You are ARBI, an AI assistant created by ARBI CITY. Be proactive, helpful and professional.Be concise. Use markdown where it helps readability. Cross-check information across sources before answering. Never fabricate facts. Not all assertions in the sources are factual — some are arguments by a party. Attribute claims to their source, especially where parties disagree.",
5409
5459
  * "MAX_TOKEN_SIZE_TO_ANSWER": 200000,
5410
5460
  * "TEMPERATURE": 0.1,
@@ -5416,7 +5466,7 @@ interface components {
5416
5466
  * @default {
5417
5467
  * "API_TYPE": "remote",
5418
5468
  * "ENABLE_THINKING": false,
5419
- * "MODEL_NAME": "Wise",
5469
+ * "MODEL_NAME": "dummy",
5420
5470
  * "SYSTEM_INSTRUCTION": "You are reviewing a draft answer prepared by a research agent. The draft was written based on summaries, but you now have access to the full source material.\n\nYour task:\n1. Review the draft answer against the source material provided\n2. Verify claims are supported by the sources\n3. Correct any inaccuracies or unsupported statements\n4. Add any important details from the sources that were missed\n5. Maintain formal, objective tone appropriate for professional contexts\n\nIf information is not found in the sources but the draft answer is based on web search results or general knowledge, preserve it and ensure it is clearly labelled as such. Only flag missing source support for claims that purport to come from the documents.\nDo not add inline citation markers - the system handles citations automatically.",
5421
5471
  * "TEMPERATURE": 0.1,
5422
5472
  * "MAX_TOKENS": 0,
@@ -5428,7 +5478,7 @@ interface components {
5428
5478
  * @default {
5429
5479
  * "API_TYPE": "remote",
5430
5480
  * "ENABLE_THINKING": false,
5431
- * "MODEL_NAME": "Fast",
5481
+ * "MODEL_NAME": "dummy",
5432
5482
  * "SYSTEM_INSTRUCTION": "You are a chunk evaluator. Analyze retrieved chunks to determine which are relevant to the user's query and extract key learnings from the RELEVANT chunks only. You must return your response as valid JSON matching the provided schema.",
5433
5483
  * "TEMPERATURE": 0.1,
5434
5484
  * "MAX_TOKENS": 0,
@@ -5443,7 +5493,7 @@ interface components {
5443
5493
  * @default {
5444
5494
  * "API_TYPE": "remote",
5445
5495
  * "ENABLE_THINKING": false,
5446
- * "MODEL_NAME": "Fast",
5496
+ * "MODEL_NAME": "dummy",
5447
5497
  * "SYSTEM_INSTRUCTION": "You are a title generator that creates concise, descriptive titles.\n\nOutput the title as plain text only. Do not use Markdown or any other formatting. Specifically:\n- Do not bold, italicize, or otherwise emphasize any part of the title.\n- Do not include asterisks (*), underscores (_), backticks (`), or other Markdown markers.\n- Do not prefix the title with bullets, dashes (-), or numbered/lettered enumeration (e.g. \"1.\", \"a)\").\n- Do not wrap the title in quotes or brackets.",
5448
5498
  * "MAX_TOKEN_SIZE_TO_ANSWER": 20,
5449
5499
  * "TEMPERATURE": 0.3,
@@ -5455,7 +5505,7 @@ interface components {
5455
5505
  * @default {
5456
5506
  * "API_TYPE": "remote",
5457
5507
  * "ENABLE_THINKING": false,
5458
- * "MODEL_NAME": "Wise",
5508
+ * "MODEL_NAME": "dummy",
5459
5509
  * "SYSTEM_INSTRUCTION": "You are a conversation summariser. Condense the conversation history into a concise summary that preserves:\n- Key decisions and conclusions reached\n- Specific names, dates, numbers, and document references\n- Open questions and unresolved items\n- The user's goals and constraints\n\nWrite in past tense, third person. Be specific, not vague. Do not omit important details in favour of brevity.",
5460
5510
  * "TEMPERATURE": 0.1,
5461
5511
  * "MAX_TOKENS": 0,
@@ -5469,7 +5519,7 @@ interface components {
5469
5519
  * @default {
5470
5520
  * "API_TYPE": "remote",
5471
5521
  * "ENABLE_THINKING": false,
5472
- * "MODEL_NAME": "Fast",
5522
+ * "MODEL_NAME": "dummy",
5473
5523
  * "SYSTEM_INSTRUCTION": "You are a document analysis assistant. Answer questions based on the document content.\n\nYour answers are displayed directly as cell values in a table, so keep every answer as short as possible.\n\nGuidelines:\n- Answer with the value only — never a full sentence. Do not restate the question or add lead-ins such as \"This document is...\" or \"The document describes...\". Good: \"German\". Bad: \"This document is written in German.\"\n- When an answer has multiple values, put each value on its own line: separate values with a newline character. Do not separate them with commas, bullets, dashes, numbering, or by writing them as a sentence.\n- Answer from the document. Reasonable inferences are fine; if the document gives no basis for an answer, the value is null and sources is empty.\n- Follow the format instructions exactly for each answer.\n- Output answers as plain text only. Do not use Markdown or any other formatting: no bold, italics, asterisks (*), underscores (_), backticks (`), bullets, or numbered/lettered enumeration.\n- Passages may be preceded by markers like [p3.2]: not document content. Cite them in \"sources\", never in a value.",
5474
5524
  * "MAX_TOKEN_CONTEXT_TO_ANSWER": 200000,
5475
5525
  * "TEMPERATURE": 0.1,
@@ -5530,7 +5580,7 @@ interface components {
5530
5580
  * @default {
5531
5581
  * "API_TYPE": "remote",
5532
5582
  * "ENABLE_THINKING": false,
5533
- * "MODEL_NAME": "Wise",
5583
+ * "MODEL_NAME": "dummy",
5534
5584
  * "TEMPERATURE": 0.3,
5535
5585
  * "MAX_TOKENS": 0,
5536
5586
  * "MAX_TOKEN_CONTEXT": 200000,
@@ -5542,7 +5592,7 @@ interface components {
5542
5592
  * @default {
5543
5593
  * "API_TYPE": "remote",
5544
5594
  * "ENABLE_THINKING": true,
5545
- * "MODEL_NAME": "Wise",
5595
+ * "MODEL_NAME": "dummy",
5546
5596
  * "SYSTEM_INSTRUCTION": "You are a research planning assistant. Your job is to analyze a user query and produce a concise, numbered research plan.\n\nYou have access to a workspace of documents. The available tools for executing the plan are:\n- search_inside_documents: Search workspace documents for relevant passages (semantic, keyword, or hybrid). Use digest=true to extract learnings.\n- read_document: Read page ranges or entire documents. Use digest=true to extract learnings with citations.\n- get_table_of_contents: Get document headings with page references\n\nConsider:\n- What information is needed to answer the query\n- Which documents are likely relevant based on the document index\n- What search queries and document passages to examine\n- What order of operations will be most efficient\n- Whether parallel searches can be used for different aspects\n\nRespond with ONLY the plan (numbered steps). Do not execute any steps.",
5547
5597
  * "TEMPERATURE": 0.3,
5548
5598
  * "MAX_TOKENS": 0,
@@ -5555,7 +5605,7 @@ interface components {
5555
5605
  * @default {
5556
5606
  * "API_TYPE": "remote",
5557
5607
  * "ENABLE_THINKING": false,
5558
- * "MODEL_NAME": "Fast",
5608
+ * "MODEL_NAME": "dummy",
5559
5609
  * "SYSTEM_INSTRUCTION": "You are a context selector. Given a user's query, conversation history, and a table of available documents, determine the user's goal and select relevant context.\n\n## Instructions\n\n1. **goal**: 1-2 concise sentences describing the user's intent AND your filtering rationale. Explain what documents are needed and why. Examples:\n - \"The user is greeting the assistant. No documents are needed.\"\n - \"The user wants to find force majeure clauses. Only the three contracts are relevant, so I will keep only those.\"\n - \"The user wants a full timeline of the case. Most documents are relevant, so I will drop only the unrelated procedural orders.\"\n\n2. **doc_filter_mode** and **doc_ids**: Select which documents the agent needs.\n - `\"keep\"` mode: `doc_ids` lists the ONLY docs to keep. Everything else is dropped.\n - `\"drop\"` mode: `doc_ids` lists the ONLY docs to drop. Everything else is kept.\n - Pick whichever mode produces the **shorter `doc_ids` list**.\n - Doc IDs are in the **Id** column of the Available Documents table (e.g. `\"doc-abc12345\"`). Copy them **exactly** from the table — do not invent, guess, or modify IDs.\n\n | Scenario | doc_filter_mode | doc_ids |\n |----------|----------------|---------|\n | Need ALL docs | `\"drop\"` | `[]` |\n | Need NO docs | `\"keep\"` | `[]` |\n | Need 3 of 100 docs | `\"keep\"` | `[\"id1\",\"id2\",\"id3\"]` |\n | Drop 3 of 100 docs | `\"drop\"` | `[\"id1\",\"id2\",\"id3\"]` |\n\n3. **chat_range_start** and **chat_range_end**: 0-based inclusive range of earlier history messages that provide relevant context. The last 3 messages are always included automatically. Set both to -1 if no earlier history is needed.\n\n## Rules\n\n- **Never repeat a doc ID.** Each ID must appear at most once.\n- Before writing `doc_ids`, count how many you would keep vs drop, then pick the shorter list.\n- Greetings or meta-questions about the assistant (e.g. \"hello\", \"who are you?\", \"what can you do?\"): the agent does NOT need any documents → `\"keep\"` with `[]`.\n- Ambiguous references like \"the document\" or \"this contract\" without specifying which: keep all → `\"drop\"` with `[]`.\n- For follow-up questions, include history messages that establish the topic.\n- Always return valid JSON matching the schema.",
5560
5610
  * "TEMPERATURE": 0,
5561
5611
  * "MAX_TOKENS": 0
@@ -5566,7 +5616,7 @@ interface components {
5566
5616
  * @default {
5567
5617
  * "API_TYPE": "remote",
5568
5618
  * "ENABLE_THINKING": false,
5569
- * "MODEL_NAME": "Fast",
5619
+ * "MODEL_NAME": "dummy",
5570
5620
  * "TEMPERATURE": 0.1,
5571
5621
  * "MAX_TOKENS": 0,
5572
5622
  * "MAX_PAGES_PER_CALL": 5,
@@ -5587,7 +5637,7 @@ interface components {
5587
5637
  * @default {
5588
5638
  * "API_TYPE": "remote",
5589
5639
  * "ENABLE_THINKING": true,
5590
- * "MODEL_NAME": "Premium",
5640
+ * "MODEL_NAME": "",
5591
5641
  * "SYSTEM_INSTRUCTION": "You are a code execution agent. You write and run code to accomplish tasks.\n\nYou have access to an execute_code tool that runs code in a sandboxed Docker container.\n\nThe sandbox has:\n- Python 3.12 with numpy, pandas, matplotlib, requests, beautifulsoup4,\n httpx, pillow, sympy, pyyaml (plus uv for installing more)\n- Node.js 22 with TypeScript (ts-node) and npm\n- Bash with git, curl, wget, jq, sqlite3, build-essential\n- Network access (can pip/npm install additional packages)\n\nInstructions:\n1. Write clean, correct code to accomplish the user's task\n2. Always call execute_code to run your code — never guess the output\n3. If execution errors, analyze the traceback, fix the code, and retry\n4. Once you have the correct output, respond with ONLY the final result\n\nKeep code simple and direct. Prefer Python unless the task specifically requires another language.",
5592
5642
  * "TEMPERATURE": 0.2,
5593
5643
  * "MAX_TOKENS": 0
@@ -5657,7 +5707,7 @@ interface components {
5657
5707
  * },
5658
5708
  * "MAX_CONCURRENT_REQUESTS": 256,
5659
5709
  * "MODEL_NAME": "Qwen/Qwen3-Reranker-0.6B",
5660
- * "API_TYPE": "remote",
5710
+ * "API_TYPE": "local",
5661
5711
  * "RETRIEVAL_INSTRUCTION": "Judge whether the passage contains the specific facts, figures, names, or references mentioned in the query. Only answer yes if the passage directly contains these details"
5662
5712
  * }
5663
5713
  */
@@ -5678,7 +5728,7 @@ interface components {
5678
5728
  /**
5679
5729
  * @default {
5680
5730
  * "MODEL_NAME": "Qwen/Qwen3-Embedding-0.6B",
5681
- * "API_TYPE": "remote",
5731
+ * "API_TYPE": "local",
5682
5732
  * "BATCH_SIZE": 128,
5683
5733
  * "MAX_CONCURRENT_REQUESTS": 256,
5684
5734
  * "DOCUMENT_PREFIX": "",
@@ -6111,6 +6161,29 @@ interface components {
6111
6161
  /** Audio */
6112
6162
  audio: string;
6113
6163
  };
6164
+ /** BoxMark */
6165
+ BoxMark: {
6166
+ /** Id */
6167
+ id: string;
6168
+ /** Page */
6169
+ page: number;
6170
+ /** Author */
6171
+ author: string;
6172
+ /** Createdat */
6173
+ createdAt: string;
6174
+ /** Updatedat */
6175
+ updatedAt: string;
6176
+ /**
6177
+ * @description discriminator enum property added by openapi-typescript
6178
+ * @enum {string}
6179
+ */
6180
+ kind: 'box';
6181
+ rect: components['schemas']['MarkupRect'];
6182
+ /** Color */
6183
+ color: string;
6184
+ /** Strokewidth */
6185
+ strokeWidth: number;
6186
+ };
6114
6187
  /**
6115
6188
  * CalendarRead
6116
6189
  * @description A selectable calendar in the picker.
@@ -6432,7 +6505,7 @@ interface components {
6432
6505
  /**
6433
6506
  * Model Name
6434
6507
  * @description Model for code generation. Should be a strong coding model.
6435
- * @default Premium
6508
+ * @default
6436
6509
  */
6437
6510
  MODEL_NAME: string;
6438
6511
  /**
@@ -6519,6 +6592,34 @@ interface components {
6519
6592
  /** Commands */
6520
6593
  commands: components['schemas']['CommandDescriptorResponse'][];
6521
6594
  };
6595
+ /** CommentMark */
6596
+ CommentMark: {
6597
+ /** Id */
6598
+ id: string;
6599
+ /** Page */
6600
+ page: number;
6601
+ /** Author */
6602
+ author: string;
6603
+ /** Createdat */
6604
+ createdAt: string;
6605
+ /** Updatedat */
6606
+ updatedAt: string;
6607
+ /**
6608
+ * @description discriminator enum property added by openapi-typescript
6609
+ * @enum {string}
6610
+ */
6611
+ kind: 'comment';
6612
+ rect: components['schemas']['MarkupRect'];
6613
+ /** Body */
6614
+ body: string;
6615
+ /** Replies */
6616
+ replies?: components['schemas']['MarkupReply'][];
6617
+ /**
6618
+ * Resolved
6619
+ * @default false
6620
+ */
6621
+ resolved: boolean;
6622
+ };
6522
6623
  /**
6523
6624
  * CompactionEvent
6524
6625
  * @description Emitted when the thread was compacted this turn.
@@ -7862,6 +7963,16 @@ interface components {
7862
7963
  * @default false
7863
7964
  */
7864
7965
  is_current: boolean;
7966
+ /**
7967
+ * Markup Revision
7968
+ * @default 0
7969
+ */
7970
+ markup_revision: number;
7971
+ /**
7972
+ * Markup Count
7973
+ * @default 0
7974
+ */
7975
+ markup_count: number;
7865
7976
  };
7866
7977
  /**
7867
7978
  * DoctagLLMConfig
@@ -7884,7 +7995,7 @@ interface components {
7884
7995
  /**
7885
7996
  * Model Name
7886
7997
  * @description The name of the non-reasoning model to be used.
7887
- * @default Fast
7998
+ * @default dummy
7888
7999
  */
7889
8000
  MODEL_NAME: string;
7890
8001
  /**
@@ -8182,7 +8293,7 @@ interface components {
8182
8293
  /**
8183
8294
  * Api Type
8184
8295
  * @description The inference type (local or remote).
8185
- * @default remote
8296
+ * @default local
8186
8297
  * @enum {string}
8187
8298
  */
8188
8299
  API_TYPE: 'local' | 'remote';
@@ -8327,7 +8438,7 @@ interface components {
8327
8438
  /**
8328
8439
  * Model Name
8329
8440
  * @description The name of the non-reasoning model to be used.
8330
- * @default Fast
8441
+ * @default dummy
8331
8442
  */
8332
8443
  MODEL_NAME: string;
8333
8444
  /**
@@ -8376,7 +8487,8 @@ interface components {
8376
8487
  /**
8377
8488
  * ExportFile
8378
8489
  * @description One file of a download: fetch ``/v1/document/{doc_ext_id}/download?version={version}`` and store
8379
- * it at ``path``.
8490
+ * it at ``path`` — or, for ``markup``, the version's markup PDF from
8491
+ * ``/v1/document/{doc_ext_id}/markup/pdf?version={version}``.
8380
8492
  */
8381
8493
  ExportFile: {
8382
8494
  /** Doc Ext Id */
@@ -8393,6 +8505,11 @@ interface components {
8393
8505
  * @default true
8394
8506
  */
8395
8507
  is_current: boolean;
8508
+ /**
8509
+ * Markup
8510
+ * @default false
8511
+ */
8512
+ markup: boolean;
8396
8513
  };
8397
8514
  /** FactDeleteResponse */
8398
8515
  FactDeleteResponse: {
@@ -8609,7 +8726,7 @@ interface components {
8609
8726
  /**
8610
8727
  * Model Name
8611
8728
  * @description The name of the non-reasoning model to be used.
8612
- * @default Fast
8729
+ * @default dummy
8613
8730
  */
8614
8731
  MODEL_NAME: string;
8615
8732
  /**
@@ -8912,6 +9029,30 @@ interface components {
8912
9029
  /** Detail */
8913
9030
  detail?: components['schemas']['ValidationError'][];
8914
9031
  };
9032
+ /** HighlightMark */
9033
+ HighlightMark: {
9034
+ /** Id */
9035
+ id: string;
9036
+ /** Page */
9037
+ page: number;
9038
+ /** Author */
9039
+ author: string;
9040
+ /** Createdat */
9041
+ createdAt: string;
9042
+ /** Updatedat */
9043
+ updatedAt: string;
9044
+ /**
9045
+ * @description discriminator enum property added by openapi-typescript
9046
+ * @enum {string}
9047
+ */
9048
+ kind: 'highlight';
9049
+ /** Rects */
9050
+ rects: components['schemas']['MarkupRect'][];
9051
+ /** Color */
9052
+ color: string;
9053
+ /** Text */
9054
+ text?: string | null;
9055
+ };
8915
9056
  /**
8916
9057
  * ImageGenConfig
8917
9058
  * @description Configuration for ImageGen — conversational text→image / image editing.
@@ -9454,6 +9595,67 @@ interface components {
9454
9595
  /** Last Sync At */
9455
9596
  last_sync_at?: string | null;
9456
9597
  };
9598
+ /**
9599
+ * MarkupConflict
9600
+ * @description The 409 body: someone saved first. Re-read, merge by annotation id, save again.
9601
+ */
9602
+ MarkupConflict: {
9603
+ /** Detail */
9604
+ detail: string;
9605
+ /** Revision */
9606
+ revision: number;
9607
+ };
9608
+ /**
9609
+ * MarkupLayerResponse
9610
+ * @description ``GET /v1/document/{id}/markup``: the version's marks and the revision they are at.
9611
+ */
9612
+ MarkupLayerResponse: {
9613
+ /** Doc Ext Id */
9614
+ doc_ext_id: string;
9615
+ /** Version */
9616
+ version: number;
9617
+ /**
9618
+ * Revision
9619
+ * @default 0
9620
+ */
9621
+ revision: number;
9622
+ /** Annotations */
9623
+ annotations?: (components['schemas']['HighlightMark'] | components['schemas']['BoxMark'] | components['schemas']['CommentMark'] | components['schemas']['StampMark'] | components['schemas']['RedactionMark'])[];
9624
+ /** Updated At */
9625
+ updated_at?: string | null;
9626
+ /** Updated By Ext Id */
9627
+ updated_by_ext_id?: string | null;
9628
+ /**
9629
+ * Can Edit
9630
+ * @default false
9631
+ */
9632
+ can_edit: boolean;
9633
+ };
9634
+ /**
9635
+ * MarkupRect
9636
+ * @description A rectangle in fractions of the displayed page, origin top-left.
9637
+ */
9638
+ MarkupRect: {
9639
+ /** X */
9640
+ x: number;
9641
+ /** Y */
9642
+ y: number;
9643
+ /** W */
9644
+ w: number;
9645
+ /** H */
9646
+ h: number;
9647
+ };
9648
+ /** MarkupReply */
9649
+ MarkupReply: {
9650
+ /** Id */
9651
+ id: string;
9652
+ /** Author */
9653
+ author: string;
9654
+ /** Createdat */
9655
+ createdAt: string;
9656
+ /** Body */
9657
+ body: string;
9658
+ };
9457
9659
  /** McpToolInfo */
9458
9660
  McpToolInfo: {
9459
9661
  /** Name */
@@ -9499,7 +9701,7 @@ interface components {
9499
9701
  /**
9500
9702
  * Model Name
9501
9703
  * @description The model for note consolidation. Defaults to reasoning model.
9502
- * @default Wise
9704
+ * @default dummy
9503
9705
  */
9504
9706
  MODEL_NAME: string;
9505
9707
  /**
@@ -10393,7 +10595,7 @@ interface components {
10393
10595
  /**
10394
10596
  * Model Name
10395
10597
  * @description The model for plan generation. Defaults to reasoning model.
10396
- * @default Wise
10598
+ * @default dummy
10397
10599
  */
10398
10600
  MODEL_NAME: string;
10399
10601
  /**
@@ -10854,7 +11056,7 @@ interface components {
10854
11056
  /**
10855
11057
  * Model Name
10856
11058
  * @description The model for query answering.
10857
- * @default Fast
11059
+ * @default dummy
10858
11060
  */
10859
11061
  MODEL_NAME: string;
10860
11062
  /**
@@ -10987,6 +11189,40 @@ interface components {
10987
11189
  /** @description ARBI agent-trace extension (non-standard). */
10988
11190
  arbi?: components['schemas']['ArbiItemMeta'] | null;
10989
11191
  };
11192
+ /** RedactionMark */
11193
+ RedactionMark: {
11194
+ /** Id */
11195
+ id: string;
11196
+ /** Page */
11197
+ page: number;
11198
+ /** Author */
11199
+ author: string;
11200
+ /** Createdat */
11201
+ createdAt: string;
11202
+ /** Updatedat */
11203
+ updatedAt: string;
11204
+ /**
11205
+ * @description discriminator enum property added by openapi-typescript
11206
+ * @enum {string}
11207
+ */
11208
+ kind: 'redaction';
11209
+ /** Rects */
11210
+ rects: components['schemas']['MarkupRect'][];
11211
+ /** Reason */
11212
+ reason: string;
11213
+ /** Text */
11214
+ text?: string | null;
11215
+ /**
11216
+ * Status
11217
+ * @default pending
11218
+ * @enum {string}
11219
+ */
11220
+ status: 'pending' | 'approved' | 'rejected';
11221
+ /** Reviewedby */
11222
+ reviewedBy?: string | null;
11223
+ /** Reviewedat */
11224
+ reviewedAt?: string | null;
11225
+ };
10990
11226
  /**
10991
11227
  * ReferencedDocuments
10992
11228
  * @description What to do with a document a note / conversation / automation cites but the scope does not include.
@@ -11185,7 +11421,7 @@ interface components {
11185
11421
  /**
11186
11422
  * Api Type
11187
11423
  * @description The inference type (local or remote).
11188
- * @default remote
11424
+ * @default local
11189
11425
  * @enum {string}
11190
11426
  */
11191
11427
  API_TYPE: 'local' | 'remote';
@@ -11970,7 +12206,7 @@ interface components {
11970
12206
  /**
11971
12207
  * Model Name
11972
12208
  * @description The model for reviewing agent draft answers. Defaults to reasoning model.
11973
- * @default Wise
12209
+ * @default dummy
11974
12210
  */
11975
12211
  MODEL_NAME: string;
11976
12212
  /**
@@ -12183,6 +12419,29 @@ interface components {
12183
12419
  /** State */
12184
12420
  state?: string | null;
12185
12421
  };
12422
+ /**
12423
+ * SaveMarkupRequest
12424
+ * @description ``PUT /v1/document/{id}/markup``: the whole layer, and the revision the client started from.
12425
+ *
12426
+ * The ``If-Match`` header, when present, takes precedence over ``base_revision``.
12427
+ */
12428
+ SaveMarkupRequest: {
12429
+ /** Base Revision */
12430
+ base_revision?: number | null;
12431
+ /** Annotations */
12432
+ annotations?: (components['schemas']['HighlightMark'] | components['schemas']['BoxMark'] | components['schemas']['CommentMark'] | components['schemas']['StampMark'] | components['schemas']['RedactionMark'])[];
12433
+ };
12434
+ /** SaveMarkupResponse */
12435
+ SaveMarkupResponse: {
12436
+ /** Doc Ext Id */
12437
+ doc_ext_id: string;
12438
+ /** Version */
12439
+ version: number;
12440
+ /** Revision */
12441
+ revision: number;
12442
+ /** Count */
12443
+ count: number;
12444
+ };
12186
12445
  /**
12187
12446
  * SaveSkillDetail
12188
12447
  * @description Detail for a save_skill tool call.
@@ -12679,6 +12938,29 @@ interface components {
12679
12938
  */
12680
12939
  task_length: number;
12681
12940
  };
12941
+ /** StampMark */
12942
+ StampMark: {
12943
+ /** Id */
12944
+ id: string;
12945
+ /** Page */
12946
+ page: number;
12947
+ /** Author */
12948
+ author: string;
12949
+ /** Createdat */
12950
+ createdAt: string;
12951
+ /** Updatedat */
12952
+ updatedAt: string;
12953
+ /**
12954
+ * @description discriminator enum property added by openapi-typescript
12955
+ * @enum {string}
12956
+ */
12957
+ kind: 'stamp';
12958
+ rect: components['schemas']['MarkupRect'];
12959
+ /** Label */
12960
+ label: string;
12961
+ /** Color */
12962
+ color: string;
12963
+ };
12682
12964
  /**
12683
12965
  * StepUsage
12684
12966
  * @description Per-step token usage from a single LLM call.
@@ -12793,7 +13075,7 @@ interface components {
12793
13075
  /**
12794
13076
  * Model Name
12795
13077
  * @description The model for conversation summarisation. Defaults to reasoning model.
12796
- * @default Wise
13078
+ * @default dummy
12797
13079
  */
12798
13080
  MODEL_NAME: string;
12799
13081
  /**
@@ -13142,7 +13424,7 @@ interface components {
13142
13424
  /**
13143
13425
  * Model Name
13144
13426
  * @description The name of the non-reasoning model to be used.
13145
- * @default Fast
13427
+ * @default dummy
13146
13428
  */
13147
13429
  MODEL_NAME: string;
13148
13430
  /**
@@ -14309,7 +14591,7 @@ interface components {
14309
14591
  /**
14310
14592
  * Model Name
14311
14593
  * @description The vision-capable model name (must support image inputs).
14312
- * @default Fast
14594
+ * @default dummy
14313
14595
  */
14314
14596
  MODEL_NAME: string;
14315
14597
  /**
@@ -17533,6 +17815,139 @@ interface operations {
17533
17815
  };
17534
17816
  };
17535
17817
  };
17818
+ get_document_markup: {
17819
+ parameters: {
17820
+ query?: {
17821
+ /** @description Document version (default: the current one) */
17822
+ version?: number | null;
17823
+ };
17824
+ header?: {
17825
+ 'if-none-match'?: string | null;
17826
+ };
17827
+ path: {
17828
+ document_ext_id: string;
17829
+ };
17830
+ cookie?: never;
17831
+ };
17832
+ requestBody?: never;
17833
+ responses: {
17834
+ /** @description Successful Response */
17835
+ 200: {
17836
+ headers: {
17837
+ [name: string]: unknown;
17838
+ };
17839
+ content: {
17840
+ 'application/json': components['schemas']['MarkupLayerResponse'];
17841
+ };
17842
+ };
17843
+ /** @description Unchanged since the revision in If-None-Match */
17844
+ 304: {
17845
+ headers: {
17846
+ [name: string]: unknown;
17847
+ };
17848
+ content?: never;
17849
+ };
17850
+ /** @description Validation Error */
17851
+ 422: {
17852
+ headers: {
17853
+ [name: string]: unknown;
17854
+ };
17855
+ content: {
17856
+ 'application/json': components['schemas']['HTTPValidationError'];
17857
+ };
17858
+ };
17859
+ };
17860
+ };
17861
+ save_document_markup: {
17862
+ parameters: {
17863
+ query?: {
17864
+ /** @description Document version (default: the current one) */
17865
+ version?: number | null;
17866
+ };
17867
+ header?: {
17868
+ 'if-match'?: string | null;
17869
+ };
17870
+ path: {
17871
+ document_ext_id: string;
17872
+ };
17873
+ cookie?: never;
17874
+ };
17875
+ requestBody: {
17876
+ content: {
17877
+ 'application/json': components['schemas']['SaveMarkupRequest'];
17878
+ };
17879
+ };
17880
+ responses: {
17881
+ /** @description Successful Response */
17882
+ 200: {
17883
+ headers: {
17884
+ [name: string]: unknown;
17885
+ };
17886
+ content: {
17887
+ 'application/json': components['schemas']['SaveMarkupResponse'];
17888
+ };
17889
+ };
17890
+ /** @description Saved by someone else first; re-read and merge */
17891
+ 409: {
17892
+ headers: {
17893
+ [name: string]: unknown;
17894
+ };
17895
+ content: {
17896
+ 'application/json': components['schemas']['MarkupConflict'];
17897
+ };
17898
+ };
17899
+ /** @description Validation Error */
17900
+ 422: {
17901
+ headers: {
17902
+ [name: string]: unknown;
17903
+ };
17904
+ content: {
17905
+ 'application/json': components['schemas']['HTTPValidationError'];
17906
+ };
17907
+ };
17908
+ };
17909
+ };
17910
+ download_document_markup: {
17911
+ parameters: {
17912
+ query?: {
17913
+ /** @description Document version (default: the current one) */
17914
+ version?: number | null;
17915
+ };
17916
+ header?: never;
17917
+ path: {
17918
+ document_ext_id: string;
17919
+ };
17920
+ cookie?: never;
17921
+ };
17922
+ requestBody?: never;
17923
+ responses: {
17924
+ /** @description Successful Response */
17925
+ 200: {
17926
+ headers: {
17927
+ [name: string]: unknown;
17928
+ };
17929
+ content: {
17930
+ 'application/pdf': unknown;
17931
+ };
17932
+ };
17933
+ /** @description This version has no markup */
17934
+ 404: {
17935
+ headers: {
17936
+ [name: string]: unknown;
17937
+ };
17938
+ content?: never;
17939
+ };
17940
+ /** @description Validation Error */
17941
+ 422: {
17942
+ headers: {
17943
+ [name: string]: unknown;
17944
+ };
17945
+ content: {
17946
+ 'application/json': components['schemas']['HTTPValidationError'];
17947
+ };
17948
+ };
17949
+ };
17950
+ };
17536
17951
  list_conversations: {
17537
17952
  parameters: {
17538
17953
  query?: never;