APIリファレンス

Sam AI

Sam AIは、キャンペーンの会話であなたの返信を書きます。指示とファイルは3つのレベルで読み込みます。ビジネス全体はXアカウント、その買い手タイプへの売り方はペルソナ、1人のリードについては会話です。2つのレベルの内容が食い違う場合は、より具体的なほうが優先されます。

会話は3つのモードのいずれかで動作します。offでは、返信はあなたに任されます。draftはセミオートで、Sam AIが提案を書き、あなたが送信します。autoでは、Sam AIがあなたのXアカウントから自動で返信を送ります。ペルソナがその会話のモードを決めますが、会話ごとに独自のモードを設定することも、inheritでペルソナのモードに従うこともできます。

Sam AIはBusinessプランとEnterpriseプランで、実行中のキャンペーンでのみ動作します。Businessより下のプランでは、draftでもautoでも何も書きません。Sam AIの返信は、含まれるメッセージの数にかかわらず、送信時に30クレジットを使います。送信しなかった提案は無料ですが、Sam AIが提案を書くのは残高が返信1回分をまかなえるときだけです。新しい提案、Sam AIが送った返信、あなたへの引き継ぎは、sam.suggestion.ready、sam.reply.sent、sam.handoffの各Webhookでも届きます。

アカウントのSam AIオブジェクト

Xアカウント全体のSam AI。オンとオフのスイッチと、Sam AIが知っているあなたのビジネスの情報です。

属性

  • objectstring
    常にaccount_samです。
  • account_idstring
    アカウントオブジェクトと同じ、XアカウントのID。
  • enabledboolean
    Xアカウントのすべての会話で、モードに関係なくSam AIがオフの場合はfalse。
  • instructionsstring
    すべての会話で読み込まれる、あなたのビジネスの情報。オファー、料金、保証、リンクなどです。3 000文字までです。
  • filesobjectsの配列
    Sam AIがすべての会話で読むファイル。Sam AIファイルオブジェクトの形式です。
アカウントのSam AIオブジェクト
{
  "object": "account_sam",
  "account_id": "a9PzK2vRtM",
  "enabled": true,
  "instructions": "Acme lets creators charge for their Discord. 5 percent a sale, no monthly fee, payouts every week. Sign up at https://acme.com/start.",
  "files": [
    {
      "id": "sf_4c1e9a07d2b35f68e190",
      "object": "sam_file",
      "name": "Pricing and payouts.pdf",
      "size": 182344,
      "mime_type": "application/pdf",
      "url": "https://upcdn.io/W142hYH/raw/uploads/GemleadSamFiles/api/7f3a9c21e5b04d18/Pricing-and-payouts.pdf"
    }
  ]
}

アカウントのSam AIを取得

GET/v1/account/samreadスコープMCPget_sam_settings

XアカウントでSam AIがオンかどうかと、ビジネス情報、ファイルを返します。

戻り値

アカウントのSam AIオブジェクト。

GET/v1/account/sam
curl https://gemlead.ai/api/v1/account/sam \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
レスポンス200
{
  "object": "account_sam",
  "account_id": "a9PzK2vRtM",
  "enabled": true,
  "instructions": "Acme lets creators charge for their Discord. 5 percent a sale, no monthly fee, payouts every week. Sign up at https://acme.com/start.",
  "files": [
    {
      "id": "sf_4c1e9a07d2b35f68e190",
      "object": "sam_file",
      "name": "Pricing and payouts.pdf",
      "size": 182344,
      "mime_type": "application/pdf",
      "url": "https://upcdn.io/W142hYH/raw/uploads/GemleadSamFiles/api/7f3a9c21e5b04d18/Pricing-and-payouts.pdf"
    }
  ]
}

アカウントのSam AIを更新

PATCH/v1/account/samwriteスコープMCPupdate_sam_settings

Xアカウント全体でSam AIをオンまたはオフにするか、すべての会話で読み込まれるビジネス情報を変更します。変更されるのは送信したフィールドだけです。

ボディパラメーター

  • enabledboolean
    falseにするとXアカウントのすべての会話でSam AIがオフになり、trueにすると再びオンになります。
  • instructionsstring
    あなたのビジネスの情報。3 000文字までです。空文字列にすると消去されます。

戻り値

更新されたアカウントのSam AIオブジェクト。

エラー

  • APIが受け付けない値のパラメーターがあります。paramにその名前が入ります。
  • ボディに、このエンドポイントが受け付けないフィールドがあります。
  • チームメンバーのキーで、その役割では閲覧しかできない項目を変更しようとしました。Xアカウントのスイッチと会話はチャットの項目、ビジネス情報とファイルは設定の項目、ペルソナのSam AIはペルソナの項目に含まれます。
PATCH/v1/account/sam
curl -X PATCH https://gemlead.ai/api/v1/account/sam \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "instructions": "Acme lets creators charge for their Discord. 5 percent a sale, no monthly fee, payouts every week. Sign up at https://acme.com/start."
  }'
レスポンス200
{
  "object": "account_sam",
  "account_id": "a9PzK2vRtM",
  "enabled": true,
  "instructions": "Acme lets creators charge for their Discord. 5 percent a sale, no monthly fee, payouts every week. Sign up at https://acme.com/start.",
  "files": [
    {
      "id": "sf_4c1e9a07d2b35f68e190",
      "object": "sam_file",
      "name": "Pricing and payouts.pdf",
      "size": 182344,
      "mime_type": "application/pdf",
      "url": "https://upcdn.io/W142hYH/raw/uploads/GemleadSamFiles/api/7f3a9c21e5b04d18/Pricing-and-payouts.pdf"
    }
  ]
}

ペルソナのSam AIオブジェクト

ペルソナのSam AI。そのペルソナのリードとの会話に使われます。

属性

  • objectstring
    常にpersona_samです。
  • persona_idstring
    ペルソナのID。
  • modestring
    独自のモードを持たない、ペルソナの会話のモード。offではあなたに任され、draftはSam AIが提案してあなたが送信するセミオート、autoではSam AIが自動で送信します。変更するまではdraftです。
    offdraftauto
  • instructionsstring
    この買い手タイプに向けた書き方と売り方。アプリでのペルソナの指示です。6 000文字までです。
  • filesobjectsの配列
    Sam AIがペルソナの会話で読むファイル。Sam AIファイルオブジェクトの形式です。
ペルソナのSam AIオブジェクト
{
  "object": "persona_sam",
  "persona_id": "lvWBPnytpS",
  "mode": "draft",
  "instructions": "Tipsters want to get paid on time. Lead with the weekly payouts, keep it to two short messages, and offer the link once they ask how.",
  "files": []
}

ペルソナのSam AIを取得

GET/v1/personas/:persona_id/samreadスコープMCPget_sam_settings

ペルソナの会話でのSam AIのモード、指示、ファイルを返します。

パスパラメーター

  • persona_idstring必須
    ペルソナのID。

戻り値

ペルソナのSam AIオブジェクト。

エラー

  • キーのアカウントに、このIDのペルソナはありません。
GET/v1/personas/:persona_id/sam
curl https://gemlead.ai/api/v1/personas/lvWBPnytpS/sam \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
レスポンス200
{
  "object": "persona_sam",
  "persona_id": "lvWBPnytpS",
  "mode": "draft",
  "instructions": "Tipsters want to get paid on time. Lead with the weekly payouts, keep it to two short messages, and offer the link once they ask how.",
  "files": []
}

ペルソナのSam AIを更新

PATCH/v1/personas/:persona_id/samwriteスコープMCPupdate_sam_settings

独自のモードを持たない、ペルソナの会話でのSam AIのモード、またはペルソナの指示を変更します。変更されるのは送信したフィールドだけです。autoでは、あなたのXアカウントから返信が自動で送信されます。

パスパラメーター

  • persona_idstring必須
    ペルソナのID。

ボディパラメーター

  • modestring
    ペルソナの会話でのSam AIのモード。
    offdraftauto
  • instructionsstring
    この買い手タイプに向けた書き方と売り方。6 000文字までです。空文字列にすると消去されます。

戻り値

更新されたペルソナのSam AIオブジェクト。

エラー

  • キーのアカウントに、このIDのペルソナはありません。
  • APIが受け付けない値のパラメーターがあります。paramにその名前が入ります。
  • ボディに、このエンドポイントが受け付けないフィールドがあります。
  • Businessプランより下のプランのアカウントでautoを指定しました。
  • チームメンバーのキーで、その役割では閲覧しかできない項目を変更しようとしました。Xアカウントのスイッチと会話はチャットの項目、ビジネス情報とファイルは設定の項目、ペルソナのSam AIはペルソナの項目に含まれます。
PATCH/v1/personas/:persona_id/sam
curl -X PATCH \
  https://gemlead.ai/api/v1/personas/lvWBPnytpS/sam \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "mode": "draft"
  }'
レスポンス200
{
  "object": "persona_sam",
  "persona_id": "lvWBPnytpS",
  "mode": "draft",
  "instructions": "Tipsters want to get paid on time. Lead with the weekly payouts, keep it to two short messages, and offer the link once they ask how.",
  "files": []
}

会話のSam AIオブジェクト

1つの会話でのSam AI。モード、用意済みの返信、このリードについて知っている情報です。

属性

  • objectstring
    常にconversation_samです。
  • conversation_idstring
    会話のID。
  • modestring
    会話独自のモード。ペルソナのモードに従う場合はinheritです。
    offdraftautoinherit
  • effective_modestring
    実際に動作しているモード。XアカウントでSam AIがオフの場合、会話が実行中のキャンペーンに含まれていない場合、アカウントがBusinessより下のプランの場合はoffです。
    offdraftauto
  • personaobjectまたはnull
    Sam AIが読み込むペルソナ。id、name、modeを含みます。
  • campaignobjectまたはnull
    会話が進行しているキャンペーン。idとnameを含みます。Sam AIが返信するのは実行中のキャンペーンだけです。
  • statusstring
    Sam AIの現在の状態。返信を書いている間はwriting、提案があなたを待っている場合はsuggested、suggestion.send_atに自動で送信される予定の場合はscheduled、送信中はsending、送信済みはsent、返信しないと判断した場合はno_reply、会話をあなたに引き継いだ場合はhandoff、残高が返信1回分の30クレジットに満たない場合はno_credits、それ以外はoffかidleです。
    idlewritingsuggestedscheduledsendingsentno_replyhandoffno_creditsoff
  • reasonstringまたはnull
    no_replyとhandoffの理由。Sam AIが書いたものです。
  • suggestionobjectまたはnull
    Sam AIが用意した返信。statusがsuggested、scheduled、sendingの間だけ含まれます。
  • instructionsstring
    このリードについてSam AIが知っておくべきこと。3 000文字までです。
  • filesobjectsの配列
    Sam AIがこの会話でだけ読むファイル。Sam AIファイルオブジェクトの形式です。
  • updated_atstringまたはnull
    Sam AIの状態が最後に変わった日時。ISO 8601形式です。
会話のSam AIオブジェクト
{
  "object": "conversation_sam",
  "conversation_id": "msgOtJ8dvT",
  "mode": "inherit",
  "effective_mode": "draft",
  "persona": {
    "id": "lvWBPnytpS",
    "name": "Tipsters",
    "mode": "draft"
  },
  "campaign": {
    "id": "c7RkQ2wLxe",
    "name": "Tipsters warm intro"
  },
  "status": "suggested",
  "reason": null,
  "suggestion": {
    "messages": [
      "It takes two minutes. You set a price, members pay, and they get their Discord role right away.",
      "Want the link to set it up?"
    ],
    "edited": false,
    "stage": "answer_question",
    "why": "She asked how it works, so the reply explains it in one line and offers the link.",
    "replying_to_message_id": "1985321409876543210",
    "created_at": "2026-11-06T08:13:20.000Z",
    "send_at": null
  },
  "instructions": "She runs two Discords. Talk about the bigger one first.",
  "files": [],
  "updated_at": "2026-11-06T08:13:20.000Z"
}

会話のSam AIを取得

GET/v1/conversations/:conversation_id/samreadスコープMCPget_sam_settings

会話に設定されたSam AIのモードと実際に動作しているモード、用意済みの返信、会話独自の指示とファイルを返します。

パスパラメーター

  • conversation_idstring必須
    会話のID。

戻り値

会話のSam AIオブジェクト。

エラー

  • キーのアカウントに、このIDの会話はありません。
GET/v1/conversations/:conversation_id/sam
curl https://gemlead.ai/api/v1/conversations/msgOtJ8dvT/sam \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
レスポンス200
{
  "object": "conversation_sam",
  "conversation_id": "msgOtJ8dvT",
  "mode": "inherit",
  "effective_mode": "draft",
  "persona": {
    "id": "lvWBPnytpS",
    "name": "Tipsters",
    "mode": "draft"
  },
  "campaign": {
    "id": "c7RkQ2wLxe",
    "name": "Tipsters warm intro"
  },
  "status": "suggested",
  "reason": null,
  "suggestion": {
    "messages": [
      "It takes two minutes. You set a price, members pay, and they get their Discord role right away.",
      "Want the link to set it up?"
    ],
    "edited": false,
    "stage": "answer_question",
    "why": "She asked how it works, so the reply explains it in one line and offers the link.",
    "replying_to_message_id": "1985321409876543210",
    "created_at": "2026-11-06T08:13:20.000Z",
    "send_at": null
  },
  "instructions": "She runs two Discords. Talk about the bigger one first.",
  "files": [],
  "updated_at": "2026-11-06T08:13:20.000Z"
}

会話のSam AIを更新

PATCH/v1/conversations/:conversation_id/samwriteスコープMCPupdate_sam_settings

この会話だけのSam AIのモードを設定するか、inheritでペルソナの設定に戻すか、このリードについてSam AIが知っている情報を変更します。変更されるのは送信したフィールドだけです。autoでは、あなたのXアカウントから返信が自動で送信されます。

パスパラメーター

  • conversation_idstring必須
    会話のID。

ボディパラメーター

  • modestring
    この会話でのSam AIのモード。inheritではペルソナのモードに従います。
    offdraftautoinherit
  • instructionsstring
    このリードについてSam AIが知っておくべきこと。3 000文字までです。空文字列にすると消去されます。

戻り値

更新された会話のSam AIオブジェクト。

エラー

  • キーのアカウントに、このIDの会話はありません。
  • APIが受け付けない値のパラメーターがあります。paramにその名前が入ります。
  • ボディに、このエンドポイントが受け付けないフィールドがあります。
  • Businessプランより下のプランのアカウントでautoを指定しました。
  • チームメンバーのキーで、その役割では閲覧しかできない項目を変更しようとしました。Xアカウントのスイッチと会話はチャットの項目、ビジネス情報とファイルは設定の項目、ペルソナのSam AIはペルソナの項目に含まれます。
PATCH/v1/conversations/:conversation_id/sam
curl -X PATCH \
  https://gemlead.ai/api/v1/conversations/msgOtJ8dvT/sam \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "mode": "auto"
  }'
レスポンス200
{
  "object": "conversation_sam",
  "conversation_id": "msgOtJ8dvT",
  "mode": "auto",
  "effective_mode": "auto",
  "persona": {
    "id": "lvWBPnytpS",
    "name": "Tipsters",
    "mode": "draft"
  },
  "campaign": {
    "id": "c7RkQ2wLxe",
    "name": "Tipsters warm intro"
  },
  "status": "scheduled",
  "reason": null,
  "suggestion": {
    "messages": [
      "It takes two minutes. You set a price, members pay, and they get their Discord role right away.",
      "Want the link to set it up?"
    ],
    "edited": false,
    "stage": "answer_question",
    "why": "She asked how it works, so the reply explains it in one line and offers the link.",
    "replying_to_message_id": "1985321409876543210",
    "created_at": "2026-11-06T08:13:20.000Z",
    "send_at": "2026-11-06T08:14:05.000Z"
  },
  "instructions": "She runs two Discords. Talk about the bigger one first.",
  "files": [],
  "updated_at": "2026-11-06T08:13:20.000Z"
}

Sam AIファイルオブジェクト

Sam AIが返信のたびに事前に読むドキュメント。PDF、DOCX、TXT、MD、CSVのいずれかのファイルです。各レベルに最大30個、合計100 MBまで保存できます。

属性

  • idstring
    レベル内でのファイルの一意の識別子。
  • objectstring
    常にsam_fileです。
  • namestring
    アプリに表示されるファイル名。
  • sizeinteger
    バイト単位のサイズ。
  • mime_typestringまたはnull
    ファイルの種類。application/pdfなどです。
  • urlstring
    Gemleadがファイルを保存している場所。
Sam AIファイルオブジェクト
{
  "id": "sf_4c1e9a07d2b35f68e190",
  "object": "sam_file",
  "name": "Pricing and payouts.pdf",
  "size": 182344,
  "mime_type": "application/pdf",
  "url": "https://upcdn.io/W142hYH/raw/uploads/GemleadSamFiles/api/7f3a9c21e5b04d18/Pricing-and-payouts.pdf"
}

アカウントにファイルを追加

POST/v1/account/sam/fileswriteスコープMCPedit_sam_files

Xアカウントのすべての会話で読むドキュメントをSam AIに渡します。公開URLか、Base64でエンコードしたバイト列を送ってください。Gemleadは一度だけ読み込み、PDF、DOCX、TXT、MD、CSVのいずれかのファイルであることを確認して、独自のコピーを保存します。

ボディパラメーター

  • urlstring
    公開HTTPSのURLにあるファイル。Gemleadは一度だけ読み込み、独自のコピーを保存します。urlかdataのどちらかを指定します。
  • datastring
    urlの代わりに使う、Base64でエンコードしたファイル。大きなファイルはurlで送ってください。
  • namestring
    アプリに表示される名前。200文字までです。dataを使う場合は必須で、指定しない場合はURLの最後の部分になります。拡張子がない場合はGemleadが付けます。

戻り値

新しいSam AIファイルオブジェクト。

エラー

  • 必須パラメーターがありません。paramにその名前が入ります。
  • ファイルがPDF、DOCX、TXT、MD、CSVのいずれでもない、空である、25 MBを超えている、またはURLを読み込めません。paramにその名前が入ります。
  • ボディに、このエンドポイントが受け付けないフィールドがあります。
  • このレベルにはすでに30個のファイル、または合計100 MBのファイルがあります。先に1つ削除してください。
  • このXアカウントで、1時間に100個を超えるファイルが追加されました。
  • チームメンバーのキーで、その役割では閲覧しかできない項目を変更しようとしました。Xアカウントのスイッチと会話はチャットの項目、ビジネス情報とファイルは設定の項目、ペルソナのSam AIはペルソナの項目に含まれます。
POST/v1/account/sam/files
curl -X POST https://gemlead.ai/api/v1/account/sam/files \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://acme.com/docs/pricing-and-payouts.pdf",
    "name": "Pricing and payouts.pdf"
  }'
レスポンス200
{
  "id": "sf_4c1e9a07d2b35f68e190",
  "object": "sam_file",
  "name": "Pricing and payouts.pdf",
  "size": 182344,
  "mime_type": "application/pdf",
  "url": "https://upcdn.io/W142hYH/raw/uploads/GemleadSamFiles/api/7f3a9c21e5b04d18/Pricing-and-payouts.pdf"
}

アカウントのファイルを削除

DELETE/v1/account/sam/files/:file_idwriteスコープMCPedit_sam_files

レベルからファイルを外します。Sam AIは次の返信からそのファイルを読まなくなります。

パスパラメーター

  • file_idstring必須
    Sam AIファイルのID。

戻り値

ファイルのidと、trueに設定されたdeletedを含むオブジェクト。

エラー

  • キーのアカウントに、このIDのSam AIファイルはありません。
  • チームメンバーのキーで、その役割では閲覧しかできない項目を変更しようとしました。Xアカウントのスイッチと会話はチャットの項目、ビジネス情報とファイルは設定の項目、ペルソナのSam AIはペルソナの項目に含まれます。
DELETE/v1/account/sam/files/:file_id
curl -X DELETE \
  https://gemlead.ai/api/v1/account/sam/files/sf_4c1e9a07d2b35f68e190 \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
レスポンス200
{
  "id": "sf_4c1e9a07d2b35f68e190",
  "object": "sam_file",
  "deleted": true
}

ペルソナにファイルを追加

POST/v1/personas/:persona_id/sam/fileswriteスコープMCPedit_sam_files

ペルソナの会話で読むドキュメントをSam AIに渡します。公開URLか、Base64でエンコードしたバイト列を送ってください。Gemleadは一度だけ読み込み、PDF、DOCX、TXT、MD、CSVのいずれかのファイルであることを確認して、独自のコピーを保存します。

パスパラメーター

  • persona_idstring必須
    ペルソナのID。

ボディパラメーター

  • urlstring
    公開HTTPSのURLにあるファイル。Gemleadは一度だけ読み込み、独自のコピーを保存します。urlかdataのどちらかを指定します。
  • datastring
    urlの代わりに使う、Base64でエンコードしたファイル。大きなファイルはurlで送ってください。
  • namestring
    アプリに表示される名前。200文字までです。dataを使う場合は必須で、指定しない場合はURLの最後の部分になります。拡張子がない場合はGemleadが付けます。

戻り値

新しいSam AIファイルオブジェクト。

エラー

  • キーのアカウントに、このIDのペルソナはありません。
  • 必須パラメーターがありません。paramにその名前が入ります。
  • ファイルがPDF、DOCX、TXT、MD、CSVのいずれでもない、空である、25 MBを超えている、またはURLを読み込めません。paramにその名前が入ります。
  • ボディに、このエンドポイントが受け付けないフィールドがあります。
  • このレベルにはすでに30個のファイル、または合計100 MBのファイルがあります。先に1つ削除してください。
  • このXアカウントで、1時間に100個を超えるファイルが追加されました。
  • チームメンバーのキーで、その役割では閲覧しかできない項目を変更しようとしました。Xアカウントのスイッチと会話はチャットの項目、ビジネス情報とファイルは設定の項目、ペルソナのSam AIはペルソナの項目に含まれます。
POST/v1/personas/:persona_id/sam/files
curl -X POST \
  https://gemlead.ai/api/v1/personas/lvWBPnytpS/sam/files \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://acme.com/docs/pricing-and-payouts.pdf",
    "name": "Pricing and payouts.pdf"
  }'
レスポンス200
{
  "id": "sf_4c1e9a07d2b35f68e190",
  "object": "sam_file",
  "name": "Pricing and payouts.pdf",
  "size": 182344,
  "mime_type": "application/pdf",
  "url": "https://upcdn.io/W142hYH/raw/uploads/GemleadSamFiles/api/7f3a9c21e5b04d18/Pricing-and-payouts.pdf"
}

ペルソナのファイルを削除

DELETE/v1/personas/:persona_id/sam/files/:file_idwriteスコープMCPedit_sam_files

レベルからファイルを外します。Sam AIは次の返信からそのファイルを読まなくなります。

パスパラメーター

  • persona_idstring必須
    ペルソナのID。
  • file_idstring必須
    Sam AIファイルのID。

戻り値

ファイルのidと、trueに設定されたdeletedを含むオブジェクト。

エラー

  • キーのアカウントに、このIDのSam AIファイルはありません。
  • チームメンバーのキーで、その役割では閲覧しかできない項目を変更しようとしました。Xアカウントのスイッチと会話はチャットの項目、ビジネス情報とファイルは設定の項目、ペルソナのSam AIはペルソナの項目に含まれます。
DELETE/v1/personas/:persona_id/sam/files/:file_id
curl -X DELETE \
  https://gemlead.ai/api/v1/personas/lvWBPnytpS/sam/files/sf_4c1e9a07d2b35f68e190 \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
レスポンス200
{
  "id": "sf_4c1e9a07d2b35f68e190",
  "object": "sam_file",
  "deleted": true
}

会話にファイルを追加

POST/v1/conversations/:conversation_id/sam/fileswriteスコープMCPedit_sam_files

このリードに関するドキュメントをSam AIに渡します。公開URLか、Base64でエンコードしたバイト列を送ってください。Gemleadは一度だけ読み込み、PDF、DOCX、TXT、MD、CSVのいずれかのファイルであることを確認して、独自のコピーを保存します。

パスパラメーター

  • conversation_idstring必須
    会話のID。

ボディパラメーター

  • urlstring
    公開HTTPSのURLにあるファイル。Gemleadは一度だけ読み込み、独自のコピーを保存します。urlかdataのどちらかを指定します。
  • datastring
    urlの代わりに使う、Base64でエンコードしたファイル。大きなファイルはurlで送ってください。
  • namestring
    アプリに表示される名前。200文字までです。dataを使う場合は必須で、指定しない場合はURLの最後の部分になります。拡張子がない場合はGemleadが付けます。

戻り値

新しいSam AIファイルオブジェクト。

エラー

  • キーのアカウントに、このIDの会話はありません。
  • 必須パラメーターがありません。paramにその名前が入ります。
  • ファイルがPDF、DOCX、TXT、MD、CSVのいずれでもない、空である、25 MBを超えている、またはURLを読み込めません。paramにその名前が入ります。
  • ボディに、このエンドポイントが受け付けないフィールドがあります。
  • このレベルにはすでに30個のファイル、または合計100 MBのファイルがあります。先に1つ削除してください。
  • このXアカウントで、1時間に100個を超えるファイルが追加されました。
  • チームメンバーのキーで、その役割では閲覧しかできない項目を変更しようとしました。Xアカウントのスイッチと会話はチャットの項目、ビジネス情報とファイルは設定の項目、ペルソナのSam AIはペルソナの項目に含まれます。
POST/v1/conversations/:conversation_id/sam/files
curl -X POST \
  https://gemlead.ai/api/v1/conversations/msgOtJ8dvT/sam/files \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://acme.com/docs/pricing-and-payouts.pdf",
    "name": "Pricing and payouts.pdf"
  }'
レスポンス200
{
  "id": "sf_4c1e9a07d2b35f68e190",
  "object": "sam_file",
  "name": "Pricing and payouts.pdf",
  "size": 182344,
  "mime_type": "application/pdf",
  "url": "https://upcdn.io/W142hYH/raw/uploads/GemleadSamFiles/api/7f3a9c21e5b04d18/Pricing-and-payouts.pdf"
}

会話のファイルを削除

DELETE/v1/conversations/:conversation_id/sam/files/:file_idwriteスコープMCPedit_sam_files

レベルからファイルを外します。Sam AIは次の返信からそのファイルを読まなくなります。

パスパラメーター

  • conversation_idstring必須
    会話のID。
  • file_idstring必須
    Sam AIファイルのID。

戻り値

ファイルのidと、trueに設定されたdeletedを含むオブジェクト。

エラー

  • キーのアカウントに、このIDのSam AIファイルはありません。
  • チームメンバーのキーで、その役割では閲覧しかできない項目を変更しようとしました。Xアカウントのスイッチと会話はチャットの項目、ビジネス情報とファイルは設定の項目、ペルソナのSam AIはペルソナの項目に含まれます。
DELETE/v1/conversations/:conversation_id/sam/files/:file_id
curl -X DELETE \
  https://gemlead.ai/api/v1/conversations/msgOtJ8dvT/sam/files/sf_4c1e9a07d2b35f68e190 \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
レスポンス200
{
  "id": "sf_4c1e9a07d2b35f68e190",
  "object": "sam_file",
  "deleted": true
}