REST API

数百〜数千ページのドキュメントを、ご自身のスクリプトから保存・削除します。AI は 関与しません。

PDF、表計算、レポートを 1 件ずつ手で入れる代わりに、一連の作業をスクリプトに任せます。 テキストの抽出と分割はご自身で行い、その結果だけを送ってください。

ここで保存したものは、接続した AI から保存したものとまったく同じです。同じ保存先に入り、AI の 呼び出し方も変わりません。

読み取り API はありません。 検索と取得は MCPダッシュボードが担当します。

はじめに

  1. REST API のカードでキーを作成します — アカウントページに あります。キーの名前は、そのキーで保存したものすべての出所として記録されます。 Import scriptpdf-importer のように、後から見てわかる名前にしてください。
  2. キーは作成直後に一度だけ表示されます。その場でコピーしてください。再表示は できません。
  3. キーはいくつでも作成でき、いつでも個別に削除できます。

認証

Base URLhttps://contextick.ai
Authorization: Bearer api_xxxxxxxx

ここで使えるのは api_ で始まるキーだけです。MCP キーや OAuth トークンはこの API で 401 になり、REST API キーは MCP エンドポイントで 401 になります。表面が 分かれているので、片方だけを失効させられます。

エンドポイント

POST /api/v1/notes

1 件を保存します。

Body

FieldTypeRequiredLimit
titlestring120 文字 — 超えた分は切り詰められます
summarystring300 文字 — 超えた分は切り詰められます
contentstring16,000 文字 — 超えると拒否されます

3 つとも空にはできません。空の値は推測で埋めず、拒否します。

Request

curl -X POST https://contextick.ai/api/v1/notes \
  -H "Authorization: Bearer api_xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"title":"Q3 report","summary":"Revenue and headcount for Q3.","content":"…"}'

Response 201

{ "id": 42, "saved_items": 118, "stored_bytes": 1048576 }

saved_itemsstored_bytes は保存後の合計です。読み取れなかった場合は 0 ではなくフィールドごと省かれます。

ドキュメントに記録される出所はキーの名前です。リクエストからは指定できません。

DELETE /api/v1/notes/{id}

1 件を削除します。

Request

curl -X DELETE https://contextick.ai/api/v1/notes/42 \
  -H "Authorization: Bearer api_xxxxxxxx"

POST /api/v1/notes/delete

まとめて削除します。

Body

FieldTypeRequiredLimit
idsnumber[]1 回につき 50 件 — 超えると拒否されます

一括取り込みを取り消せるのはこの経路だけです。

Request

curl -X POST https://contextick.ai/api/v1/notes/delete \
  -H "Authorization: Bearer api_xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"ids":[42,43]}'

Delete response 200

{ "deleted": [42], "not_found": [43], "saved_items": 117, "stored_bytes": 1040000 }

どちらの削除も同じ形を返します。存在しない id はエラーではなく not_found として 報告されます。削除は永久で、取り消せません。

長いドキュメントはご自身で分割してください

本文の上限は 1 回の保存につき 16,000 文字です。こちらで分割はしません — 超えたものは content_too_long で拒否します。意味のまとまりで区切って 1 つずつ保存し、断片ごとに タイトルと要約を付けてください。ファイル名や見出しを知っているのはあなたなので、その方が後から ずっと呼び出しやすくなります。

エラー

失敗はすべて同じ形です:

{ "error": { "code": "quota_exceeded", "message": "…" } }

分岐は code で行ってください。message は人が読むための文章で、予告なく 変わることがあります。

400 リクエストを直して再送します empty_titleempty_summaryempty_contentcontent_too_longtoo_many_idsinvalid_bodyinvalid_id
401 api_ キーを確認します unauthorized
402 支払い状態を解消します — その間も呼び出しは使えます payment_past_duesubscription_pausedsubscription_canceledrefund_pending
429 少し待って同じリクエストを再送します embedding_rate_limited
507 空き容量を作るか大きいプランへ — そのままの再送は避けてください quota_exceeded
503 500 一時的またはサーバー側 — 少し待って再送します

知っておくこと