siyuan/API_ja_JP.md
Ikko Eltociear Ashimine d7e5ade487
🧑‍💻 Add Japanese API document (#16886)
2026-01-25 12:09:10 +08:00

35 KiB
Raw Blame History

English | 中文


仕様

パラメータと戻り値

  • エンドポイント: http://127.0.0.1:6806

  • すべてPOSTメソッドを使用

  • パラメータを持つインターフェースでは、パラメータはJSON文字列としてbodyに配置し、ヘッダーのContent-Typeはapplication/jsonとする

  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {}
    }
    
    • code: 0以外は例外を示す
    • msg: 通常は空文字列、異常時にはエラーテキストが返される
    • data: インターフェースによって{}[]、またはNULLとなる

認証

設定 - このアプリケーションについてでAPIトークンを確認し、リクエストヘッダーに Authorization: Token xxx を設定

ノートブック

ノートブック一覧を取得

  • /api/notebook/lsNotebooks

  • パラメータなし

  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "notebooks": [
          {
            "id": "20210817205410-2kvfpfn",
            "name": "テスト用ノートブック",
            "icon": "1f41b",
            "sort": 0,
            "closed": false
          },
          {
            "id": "20210808180117-czj9bvb",
            "name": "SiYuanユーザーガイド",
            "icon": "1f4d4",
            "sort": 1,
            "closed": false
          }
        ]
      }
    }
    

ノートブックを開く

  • /api/notebook/openNotebook

  • パラメータ

    {
      "notebook": "20210831090520-7dvbdv0"
    }
    
    • notebook: ートブックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ノートブックを閉じる

  • /api/notebook/closeNotebook

  • パラメータ

    {
      "notebook": "20210831090520-7dvbdv0"
    }
    
    • notebook: ートブックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ノートブックの名前を変更

  • /api/notebook/renameNotebook

  • パラメータ

    {
      "notebook": "20210831090520-7dvbdv0",
      "name": "ノートブックの新しい名前"
    }
    
    • notebook: ートブックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ノートブックを作成

  • /api/notebook/createNotebook

  • パラメータ

    {
      "name": "ノートブック名"
    }
    
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "notebook": {
          "id": "20220126215949-r1wvoch",
          "name": "ノートブック名",
          "icon": "",
          "sort": 0,
          "closed": false
        }
      }
    }
    

ノートブックを削除

  • /api/notebook/removeNotebook

  • パラメータ

    {
      "notebook": "20210831090520-7dvbdv0"
    }
    
    • notebook: ートブックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ノートブック設定を取得

  • /api/notebook/getNotebookConf

  • パラメータ

    {
      "notebook": "20210817205410-2kvfpfn"
    }
    
    • notebook: ートブックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "box": "20210817205410-2kvfpfn",
        "conf": {
          "name": "テスト用ノートブック",
          "closed": false,
          "refCreateSavePath": "",
          "createDocNameTemplate": "",
          "dailyNoteSavePath": "/daily note/{{now | date \"2006/01\"}}/{{now | date \"2006-01-02\"}}",
          "dailyNoteTemplatePath": ""
        },
        "name": "テスト用ノートブック"
      }
    }
    

ノートブック設定を保存

  • /api/notebook/setNotebookConf

  • パラメータ

    {
      "notebook": "20210817205410-2kvfpfn",
      "conf": {
          "name": "テスト用ノートブック",
          "closed": false,
          "refCreateSavePath": "",
          "createDocNameTemplate": "",
          "dailyNoteSavePath": "/daily note/{{now | date \"2006/01\"}}/{{now | date \"2006-01-02\"}}",
          "dailyNoteTemplatePath": ""
        }
    }
    
    • notebook: ートブックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "name": "テスト用ノートブック",
        "closed": false,
        "refCreateSavePath": "",
        "createDocNameTemplate": "",
        "dailyNoteSavePath": "/daily note/{{now | date \"2006/01\"}}/{{now | date \"2006-01-02\"}}",
        "dailyNoteTemplatePath": ""
      }
    }
    

ドキュメント

Markdownでドキュメントを作成

  • /api/filetree/createDocWithMd

  • パラメータ

    {
      "notebook": "20210817205410-2kvfpfn",
      "path": "/foo/bar",
      "markdown": ""
    }
    
    • notebook: ートブックID
    • path: ドキュメントパス、/で始まり/で階層を区切るこのpathはデータベースのhpathフィールドに対応
    • markdown: GFM Markdownコンテンツ
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": "20210914223645-oj2vnx2"
    }
    
    • data: 作成されたドキュメントID
    • 同じpathでこのインターフェースを繰り返し呼び出しても、既存のドキュメントは上書きされない

ドキュメントの名前を変更

  • /api/filetree/renameDoc

  • パラメータ

    {
      "notebook": "20210831090520-7dvbdv0",
      "path": "/20210902210113-0avi12f.sy",
      "title": "新しいドキュメントタイトル"
    }
    
    • notebook: ートブックID
    • path: ドキュメントパス
    • title: 新しいドキュメントタイトル
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

idでドキュメントの名前を変更:

  • /api/filetree/renameDocByID

  • パラメータ

    {
      "id": "20210902210113-0avi12f",
      "title": "新しいドキュメントタイトル"
    }
    
    • id: ドキュメントID
    • title: 新しいドキュメントタイトル
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ドキュメントを削除

  • /api/filetree/removeDoc

  • パラメータ

    {
      "notebook": "20210831090520-7dvbdv0",
      "path": "/20210902210113-0avi12f.sy"
    }
    
    • notebook: ートブックID
    • path: ドキュメントパス
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

idでドキュメントを削除:

  • /api/filetree/removeDocByID

  • パラメータ

    {
      "id": "20210902210113-0avi12f"
    }
    
    • id: ドキュメントID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ドキュメントを移動

  • /api/filetree/moveDocs

  • パラメータ

    {
      "fromPaths": ["/20210917220056-yxtyl7i.sy"],
      "toNotebook": "20210817205410-2kvfpfn",
      "toPath": "/"
    }
    
    • fromPaths: 移動元パス
    • toNotebook: 移動先ートブックID
    • toPath: 移動先パス
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

idでドキュメントを移動:

  • /api/filetree/moveDocsByID

  • パラメータ

    {
      "fromIDs": ["20210917220056-yxtyl7i"],
      "toID": "20210817205410-2kvfpfn"
    }
    
    • fromIDs: 移動元ドキュメントのID
    • toID: 移動先の親ドキュメントIDまたはートブックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

パスから人間が読めるパスを取得

  • /api/filetree/getHPathByPath

  • パラメータ

    {
      "notebook": "20210831090520-7dvbdv0",
      "path": "/20210917220500-sz588nq/20210917220056-yxtyl7i.sy"
    }
    
    • notebook: ートブックID
    • path: ドキュメントパス
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": "/foo/bar"
    }
    

IDから人間が読めるパスを取得

  • /api/filetree/getHPathByID

  • パラメータ

    {
      "id": "20210917220056-yxtyl7i"
    }
    
    • id: ブロックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": "/foo/bar"
    }
    

IDからストレージパスを取得

  • /api/filetree/getPathByID

  • パラメータ

    {
      "id": "20210808180320-fqgskfj"
    }
    
    • id: ブロックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
      "notebook": "20210808180117-czj9bvb",
      "path": "/20200812220555-lj3enxa/20210808180320-fqgskfj.sy"
      }
    }
    

人間が読めるパスからIDを取得

  • /api/filetree/getIDsByHPath

  • パラメータ

    {
      "path": "/foo/bar",
      "notebook": "20210808180117-czj9bvb"
    }
    
    • path: 人間が読めるパス
    • notebook: ートブックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": [
          "20200813004931-q4cu8na"
      ]
    }
    

アセット

アセットをアップロード

  • /api/asset/upload

  • パラメータはHTTP Multipartフォーム

    • assetsDirPath: アセットが保存されるフォルダパス、dataフォルダをルートパスとする、例:

      • "/assets/": workspace/data/assets/ フォルダ
      • "/assets/sub/": workspace/data/assets/sub/ フォルダ

      通常は最初の方法を推奨、ワークスペースのassetsフォルダに保存される。サブディレクトリに配置すると副作用があるため、ユーザーガイドのアセットの章を参照。

    • file[]: アップロードするファイルリスト

  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "errFiles": [""],
        "succMap": {
          "foo.png": "assets/foo-20210719092549-9j5y79r.png"
        }
      }
    }
    
    • errFiles: アップロード処理でエラーが発生したファイル名のリスト
    • succMap: 正常に処理されたファイル、キーはアップロード時のファイル名、値はassets/foo-id.pngで、既存のMarkdownコンテンツ内のアセットリンクアドレスをアップロードされたアドレスに置き換えるために使用

ブロック

ブロックを挿入

  • /api/block/insertBlock

  • パラメータ

    {
      "dataType": "markdown",
      "data": "foo**bar**{: style=\"color: var(--b3-font-color8);\"}baz",
      "nextID": "",
      "previousID": "20211229114650-vrek5x6",
      "parentID": ""
    }
    
    • dataType: 挿入するデータ型、markdownまたはdom
    • data: 挿入するデータ
    • nextID: 次のブロックのID、挿入位置を固定するために使用
    • previousID: 前のブロックのID、挿入位置を固定するために使用
    • parentID: 親ブロックのID、挿入位置を固定するために使用

    nextIDpreviousIDparentIDのうち少なくとも1つは値が必要、優先順位: nextID > previousID > parentID

  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": [
        {
          "doOperations": [
            {
              "action": "insert",
              "data": "<div data-node-id=\"20211230115020-g02dfx0\" data-node-index=\"1\" data-type=\"NodeParagraph\" class=\"p\"><div contenteditable=\"true\" spellcheck=\"false\">foo<strong style=\"color: var(--b3-font-color8);\">bar</strong>baz</div><div class=\"protyle-attr\" contenteditable=\"false\"></div></div>",
              "id": "20211230115020-g02dfx0",
              "parentID": "",
              "previousID": "20211229114650-vrek5x6",
              "retData": null
            }
          ],
          "undoOperations": null
        }
      ]
    }
    
    • action.data: 新しく挿入されたブロックによって生成されたDOM
    • action.id: 新しく挿入されたブロックのID

ブロックを先頭に挿入

  • /api/block/prependBlock

  • パラメータ

    {
      "data": "foo**bar**{: style=\"color: var(--b3-font-color8);\"}baz",
      "dataType": "markdown",
      "parentID": "20220107173950-7f9m1nb"
    }
    
    • dataType: 挿入するデータ型、markdownまたはdom
    • data: 挿入するデータ
    • parentID: 親ブロックのID、挿入位置を固定するために使用
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": [
        {
          "doOperations": [
            {
              "action": "insert",
              "data": "<div data-node-id=\"20220108003710-hm0x9sc\" data-node-index=\"1\" data-type=\"NodeParagraph\" class=\"p\"><div contenteditable=\"true\" spellcheck=\"false\">foo<strong style=\"color: var(--b3-font-color8);\">bar</strong>baz</div><div class=\"protyle-attr\" contenteditable=\"false\"></div></div>",
              "id": "20220108003710-hm0x9sc",
              "parentID": "20220107173950-7f9m1nb",
              "previousID": "",
              "retData": null
            }
          ],
          "undoOperations": null
        }
      ]
    }
    
    • action.data: 新しく挿入されたブロックによって生成されたDOM
    • action.id: 新しく挿入されたブロックのID

ブロックを末尾に追加

  • /api/block/appendBlock

  • パラメータ

    {
      "data": "foo**bar**{: style=\"color: var(--b3-font-color8);\"}baz",
      "dataType": "markdown",
      "parentID": "20220107173950-7f9m1nb"
    }
    
    • dataType: 挿入するデータ型、markdownまたはdom
    • data: 挿入するデータ
    • parentID: 親ブロックのID、挿入位置を固定するために使用
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": [
        {
          "doOperations": [
            {
              "action": "insert",
              "data": "<div data-node-id=\"20220108003642-y2wmpcv\" data-node-index=\"1\" data-type=\"NodeParagraph\" class=\"p\"><div contenteditable=\"true\" spellcheck=\"false\">foo<strong style=\"color: var(--b3-font-color8);\">bar</strong>baz</div><div class=\"protyle-attr\" contenteditable=\"false\"></div></div>",
              "id": "20220108003642-y2wmpcv",
              "parentID": "20220107173950-7f9m1nb",
              "previousID": "20220108003615-7rk41t1",
              "retData": null
            }
          ],
          "undoOperations": null
        }
      ]
    }
    
    • action.data: 新しく挿入されたブロックによって生成されたDOM
    • action.id: 新しく挿入されたブロックのID

ブロックを更新

  • /api/block/updateBlock

  • パラメータ

    {
      "dataType": "markdown",
      "data": "foobarbaz",
      "id": "20211230161520-querkps"
    }
    
    • dataType: 更新するデータ型、markdownまたはdom
    • data: 更新するデータ
    • id: 更新するブロックのID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": [
        {
          "doOperations": [
            {
              "action": "update",
              "data": "<div data-node-id=\"20211230161520-querkps\" data-node-index=\"1\" data-type=\"NodeParagraph\" class=\"p\"><div contenteditable=\"true\" spellcheck=\"false\">foo<strong>bar</strong>baz</div><div class=\"protyle-attr\" contenteditable=\"false\"></div></div>",
              "id": "20211230161520-querkps",
              "parentID": "",
              "previousID": "",
              "retData": null
              }
            ],
          "undoOperations": null
        }
      ]
    }
    
    • action.data: 更新されたブロックによって生成されたDOM

ブロックを削除

  • /api/block/deleteBlock

  • パラメータ

    {
      "id": "20211230161520-querkps"
    }
    
    • id: 削除するブロックのID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": [
        {
          "doOperations": [
            {
              "action": "delete",
              "data": null,
              "id": "20211230162439-vtm09qo",
              "parentID": "",
              "previousID": "",
              "retData": null
            }
          ],
         "undoOperations": null
        }
      ]
    }
    

ブロックを移動

  • /api/block/moveBlock

  • パラメータ

    {
      "id": "20230406180530-3o1rqkc",
      "previousID": "20230406152734-if5kyx6",
      "parentID": "20230404183855-woe52ko"
    }
    
    • id: 移動するブロックID
    • previousID: 前のブロックのID、挿入位置を固定するために使用
    • parentID: 親ブロックのID、挿入位置を固定するために使用、previousIDparentIDは同時に空にできない、両方存在する場合はpreviousIDが優先
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": [
          {
              "doOperations": [
                  {
                      "action": "move",
                      "data": null,
                      "id": "20230406180530-3o1rqkc",
                      "parentID": "20230404183855-woe52ko",
                      "previousID": "20230406152734-if5kyx6",
                      "nextID": "",
                      "retData": null,
                      "srcIDs": null,
                      "name": "",
                      "type": ""
                  }
              ],
              "undoOperations": null
          }
      ]
    }
    

ブロックを折りたたむ

  • /api/block/foldBlock

  • パラメータ

    {
      "id": "20231224160424-2f5680o"
    }
    
    • id: 折りたたむブロックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ブロックを展開

  • /api/block/unfoldBlock

  • パラメータ

    {
      "id": "20231224160424-2f5680o"
    }
    
    • id: 展開するブロックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ブロックのkramdownを取得

  • /api/block/getBlockKramdown

  • パラメータ

    {
      "id": "20201225220954-dlgzk1o"
    }
    
    • id: 取得するブロックのID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "id": "20201225220954-dlgzk1o",
        "kramdown": "* {: id=\"20201225220954-e913snx\"}Create a new notebook, create a new document under the notebook\n  {: id=\"20210131161940-kfs31q6\"}\n* {: id=\"20201225220954-ygz217h\"}Enter <kbd>/</kbd> in the editor to trigger the function menu\n  {: id=\"20210131161940-eo0riwq\"}\n* {: id=\"20201225220954-875yybt\"}((20200924101200-gss5vee \"Navigate in the content block\")) and ((20200924100906-0u4zfq3 \"Window and tab\"))\n  {: id=\"20210131161940-b5uow2h\"}"
      }
    }
    

子ブロックを取得

  • /api/block/getChildBlocks

  • パラメータ

    {
      "id": "20230506212712-vt9ajwj"
    }
    
    • id: 親ブロックID
    • 見出しの下のブロックも子ブロックとしてカウントされる
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": [
        {
          "id": "20230512083858-mjdwkbn",
          "type": "h",
          "subType": "h1"
        },
        {
          "id": "20230513213727-thswvfd",
          "type": "s"
        },
        {
          "id": "20230513213633-9lsj4ew",
          "type": "l",
          "subType": "u"
        }
      ]
    }
    

ブロック参照を移行

  • /api/block/transferBlockRef

  • パラメータ

    {
      "fromID": "20230612160235-mv6rrh1",
      "toID": "20230613093045-uwcomng",
      "refIDs": ["20230613092230-cpyimmd"]
    }
    
    • fromID: 定義ブロックID
    • toID: ターゲットブロックID
    • refIDs: 定義ブロックIDを指す参照ブロックID、オプション、指定しない場合はすべての参照ブロックIDが移行される
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

属性

ブロック属性を設定

  • /api/attr/setBlockAttrs

  • パラメータ

    {
      "id": "20210912214605-uhi5gco",
      "attrs": {
        "custom-attr1": "line1\nline2"
      }
    }
    
    • id: ブロックID
    • attrs: ブロック属性、カスタム属性はcustom-プレフィックスが必要
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ブロック属性を取得

  • /api/attr/getBlockAttrs

  • パラメータ

    {
      "id": "20210912214605-uhi5gco"
    }
    
    • id: ブロックID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "custom-attr1": "line1\nline2",
        "id": "20210912214605-uhi5gco",
        "title": "PDF Annotation Demo",
        "type": "doc",
        "updated": "20210916120715"
      }
    }
    

SQL

SQLクエリを実行

  • /api/query/sql

  • パラメータ

    {
      "stmt": "SELECT * FROM blocks WHERE content LIKE'%content%' LIMIT 7"
    }
    
    • stmt: SQL文
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": [
        { "col": "val" }
      ]
    }
    

トランザクションをフラッシュ

  • /api/sqlite/flushTransaction

  • パラメータなし

  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

テンプレート

テンプレートをレンダリング

  • /api/template/render

  • パラメータ

    {
      "id": "20220724223548-j6g0o87",
      "path": "F:\\SiYuan\\data\\templates\\foo.md"
    }
    
    • id: レンダリングが呼び出されるドキュメントのID
    • path: テンプレートファイルの絶対パス
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "content": "<div data-node-id=\"20220729234848-dlgsah7\" data-node-index=\"1\" data-type=\"NodeParagraph\" class=\"p\" updated=\"20220729234840\"><div contenteditable=\"true\" spellcheck=\"false\">foo</div><div class=\"protyle-attr\" contenteditable=\"false\"></div></div>",
        "path": "F:\\SiYuan\\data\\templates\\foo.md"
      }
    }
    

Sprigをレンダリング

  • /api/template/renderSprig

  • パラメータ

    {
      "template": "/daily note/{{now | date \"2006/01\"}}/{{now | date \"2006-01-02\"}}"
    }
    
    • template: テンプレートコンテンツ
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": "/daily note/2023/03/2023-03-24"
    }
    

ファイル

ファイルを取得

  • /api/file/getFile

  • パラメータ

    json { "path": "/data/20210808180117-6v0mkxr/20200923234011-ieuun1p.sy" }

    • path: ワークスペースパス配下のファイルパス
  • 戻り値

    • レスポンスステータスコード 200: ファイルコンテンツ

    • レスポンスステータスコード 202: 例外情報

      {
        "code": 404,
        "msg": "",
        "data": null
      }
      
      • code: 0以外は例外

        • -1: パラメータ解析エラー
        • 403: アクセス拒否(ファイルがワークスペース内にない)
        • 404: 見つからない(ファイルが存在しない)
        • 405: メソッド不許可(ディレクトリである)
        • 500: サーバーエラーファイルのstat失敗 / ファイルの読み取り失敗)
      • msg: エラーを説明するテキスト

ファイルを配置

  • /api/file/putFile

  • パラメータはHTTP Multipartフォーム

    • path: ワークスペースパス配下のファイルパス
    • isDir: フォルダを作成するかどうか、trueの場合はフォルダのみ作成し、fileを無視
    • modTime: 最終アクセス・更新時刻、Unix時間
    • file: アップロードするファイル
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ファイルを削除

  • /api/file/removeFile

  • パラメータ

    {
      "path": "/data/20210808180117-6v0mkxr/20200923234011-ieuun1p.sy"
    }
    
    • path: ワークスペースパス配下のファイルパス
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ファイルの名前を変更

  • /api/file/renameFile

  • パラメータ

    {
      "path": "/data/assets/image-20230523085812-k3o9t32.png",
      "newPath": "/data/assets/test-20230523085812-k3o9t32.png"
    }
    
    • path: ワークスペースパス配下のファイルパス
    • newPath: ワークスペースパス配下の新しいファイルパス
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": null
    }
    

ファイル一覧を取得

  • /api/file/readDir

  • パラメータ

    {
      "path": "/data/20210808180117-6v0mkxr/20200923234011-ieuun1p"
    }
    
    • path: ワークスペースパス配下のディレクトリパス
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": [
        {
          "isDir": true,
          "isSymlink": false,
          "name": "20210808180303-6yi0dv5",
          "updated": 1691467624
        },
        {
          "isDir": false,
          "isSymlink": false,
          "name": "20210808180303-6yi0dv5.sy",
          "updated": 1663298365
        }
      ]
    }
    

エクスポート

Markdownをエクスポート

  • /api/export/exportMdContent

  • パラメータ

    {
      "id": ""
    }
    
    • id: エクスポートするドキュメントブロックのID
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "hPath": "/Please Start Here",
        "content": "## 🍫 Content Block\n\nIn SiYuan, the only important core concept is..."
      }
    }
    
    • hPath: 人間が読めるパス
    • content: Markdownコンテンツ

ファイルとフォルダをエクスポート

  • /api/export/exportResources

  • パラメータ

    {
      "paths": [
        "/conf/appearance/boot",
        "/conf/appearance/langs",
        "/conf/appearance/emojis/conf.json",
        "/conf/appearance/icons/index.html"
      ],
      "name": "zip-file-name"
    }
    
    • paths: エクスポートするファイルまたはフォルダパスのリスト、同じファイル名/フォルダ名は上書きされる
    • name: (オプション)エクスポートするファイル名、設定しない場合はデフォルトでexport-YYYY-MM-DD_hh-mm-ss.zip
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "path": "temp/export/zip-file-name.zip"
      }
    }
    
    • path: 作成された*.zipファイルのパス
      • zip-file-name.zip内のディレクトリ構造は以下の通り:
        • zip-file-name
          • boot
          • langs
          • conf.json
          • index.html

変換

Pandoc

  • /api/convert/pandoc

  • 作業ディレクトリ

    • pandocコマンドの実行時、作業ディレクトリはworkspace/temp/convert/pandoc/${dir}に設定される
    • API ファイルを配置を使用して、変換するファイルをこのディレクトリに先に書き込むことができる
    • その後、APIを呼び出して変換し、変換されたファイルもこのディレクトリに書き込まれる
    • 最後に、API ファイルを取得を呼び出して変換されたファイルを取得
  • パラメータ

    {
      "dir": "test",
      "args": [
        "--to", "markdown_strict-raw_html",
        "foo.epub",
        "-o", "foo.md"
     ]
    }
    
    • args: Pandocコマンドラインパラメータ
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
         "path": "/temp/convert/pandoc/test"
      }
    }
    
    • path: ワークスペース配下のパス

通知

メッセージをプッシュ

  • /api/notification/pushMsg

  • パラメータ

    {
      "msg": "test",
      "timeout": 7000
    }
    
    • timeout: メッセージ表示時間ミリ秒。このフィールドは省略可能、デフォルトは7000ミリ秒
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
          "id": "62jtmqi"
      }
    }
    
    • id: メッセージID

エラーメッセージをプッシュ

  • /api/notification/pushErrMsg

  • パラメータ

    {
      "msg": "test",
      "timeout": 7000
    }
    
    • timeout: メッセージ表示時間ミリ秒。このフィールドは省略可能、デフォルトは7000ミリ秒
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
          "id": "qc9znut"
      }
    }
    
    • id: メッセージID

ネットワーク

フォワードプロキシ

  • /api/network/forwardProxy

  • パラメータ

    {
      "url": "https://b3log.org/siyuan/",
      "method": "GET",
      "timeout": 7000,
      "contentType": "text/html",
      "headers": [
          {
              "Cookie": ""
          }
      ],
      "payload": {},
      "payloadEncoding": "text",
      "responseEncoding": "text"
    }
    
    • url: 転送するURL

    • method: HTTPメソッド、デフォルトはPOST

    • timeout: タイムアウト(ミリ秒)、デフォルトは7000

    • contentType: Content-Type、デフォルトはapplication/json

    • headers: HTTPヘッダー

    • payload: HTTPペイロード、オブジェクトまたは文字列

    • payloadEncoding: payloadで使用されるエンコーディングスキーム、デフォルトはtext、選択可能な値は以下の通り

      • text
      • base64 | base64-std
      • base64-url
      • base32 | base32-std
      • base32-hex
      • hex
    • responseEncoding: レスポンスデータのbodyで使用されるエンコーディングスキーム、デフォルトはtext、選択可能な値は以下の通り

      • text
      • base64 | base64-std
      • base64-url
      • base32 | base32-std
      • base32-hex
      • hex
  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "body": "",
        "bodyEncoding": "text",
        "contentType": "text/html",
        "elapsed": 1976,
        "headers": {
        },
        "status": 200,
        "url": "https://b3log.org/siyuan"
      }
    }
    
    • bodyEncoding: bodyで使用されるエンコーディングスキーム、リクエストのresponseEncodingフィールドと一致、デフォルトはtext、選択可能な値は以下の通り

      • text
      • base64 | base64-std
      • base64-url
      • base32 | base32-std
      • base32-hex
      • hex

システム

起動進捗を取得

  • /api/system/bootProgress

  • パラメータなし

  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": {
        "details": "Finishing boot...",
        "progress": 100
      }
    }
    

システムバージョンを取得

  • /api/system/version

  • パラメータなし

  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": "1.3.5"
    }
    

システムの現在時刻を取得

  • /api/system/currentTime

  • パラメータなし

  • 戻り値

    {
      "code": 0,
      "msg": "",
      "data": 1631850968131
    }
    
    • data: ミリ秒精度