Answer Bot API

Cognitive Search APIは、ユーザーの自由入力による問い合わせや質問に対して、機械読解(MRC)APIで該当のドキュメントから直接回答を探し出してユーザーに提示します。

Q&Aとドキュメントのアップロード

まず、Alliに利用登録をしてサインインしてください。登録時、プロジェクトタイプから必ず「Cognitive Search」を選択してください。Q&Aメニューでは質問/回答ペアを登録することができます。ワード、PDF、パワーポイント、エクセルなどドキュメントファイルは、ドキュメントメニューで登録することができます。

ドキュメントデータベースをMicrosoft OneDriveなどのデータソースと連携することもできます。ソース設定メニューで設定してください。

API経由でのドキュメントファイルアップロードについては、本ページのDocument Uploadセクションをご参照ください。

APIキーの取得

RequestヘッダーのAPI-KEYには、割り当てられたAPIキーを入力してください。APIキーはプロジェクト設定メニューからご確認いただけます。

エンドポイントに関して

このAPIリファレンスではエンドポイントを下記として記載しております。 https://backend-ja.alli.ai ただし、ご利用されているAlliの環境によっては下記の場合もございます。https://backend.alli.ai どちらのエンドポイントかはプロジェクト設定メニューからご確認ください。

エージェントまたはユーザー情報をAPI利用時に用いる

特定のエンドポイントでは、リクエストヘッダーにエージェントやユーザーの情報を追加して、APIを利用することで、誰がAPIを利用したかを特定することができます。

エージェント情報 エージェント情報の場合は、リクエストヘッダーのAGENT-EMAILを用います。 エージェントのメール情報は、ダッシュボードの[設定] > [エージェント メニュー]で確認できます。以下に例を示します。

-H 'AGENT-EMAIL: agent_1@email.com'

ユーザー情報 ユーザー情報の場合はリクエスト ヘッダーにOWN-USER-ID を用います。ユーザー ID は新しいものでも既存のものでもかまいません。新しいユーザー ID が提供された場合、Alli はその ID で新しいユーザーを作成します。同じOWN-USER-IDのヘッダーを持つAPI 呼び出しについては、同じユーザーからの呼び出しと見なされます。

同時にユーザーのメール アドレスを更新する場合は、USER-EMAILのリクエスト ヘッダーでメール アドレスを指定できます。以下に例を示します。

-H 'OWN-USER-ID: 5f1234567a409876c082487z' \
-H 'USER-EMAIL:user_1@email.com'

OWN-USER-IDには非 ASCII 文字を使用できません。ユーザー IDに非ASCII文字が含まれている場合は、IDをbase64 にエンコードして base64:CONVERTED_IDとして追加することで非ASCII文字をOWN-USER-IDに入力することができます。

保存されたユーザー ID とメール情報は、Alli ダッシュボードの [顧客] メニューでことができます。

エラーメッセージ

予想されるresponseがない場合は、エラーメッセージを確認してください。例えば、間違ったHTTPメソッドを使用した場合、以下のような形式のエラーメッセージが戻ります。

{“error”: “Method Not Allowed POST: /webapi/faq_feedbacks”}

Search from Q&A

POST https://backend-ja.alli.ai/webapi/faq

Search from Q&A APIは、Q&Aのデータベースから質問と最も関連のあるQ&Aペアを検索して提示します。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

エージェントのメール アドレスを指定することで、この API 呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの [設定] > [エージェント] にて確認してください。

OWN-USER-ID

string

ユーザーの ID を指定することで、この API 呼び出しを行うユーザーを特定できます。ここで指定するIDは、ダッシュボードの [顧客リスト]>[CUSTOMER_ID] もしくは[会話履歴]>[対話情報]にて確認できます。

USER-EMAIL

string

OWN-USER-ID を指定する際にユーザーのEメールアドレスを更新する場合は、ここで新しいEメールアドレスを指定できます。

Request Body

Name
Type
Description

autoRegisterCandidates

boolean

デフォルトはtrueです。これをfalseにしますと、答えがない場合に自動でCandidatesに登録しない様になります。

hashtagsOperator

string

ANDまたはORのいずれかとなります。 結果にすべてのハッシュタグを含める場合は、ANDを選択します。 結果に少なくとも1つのハッシュタグを含める場合は、ORを選択します。

hashtags

array

検索対象に含めるハッシュタグの配列

maxResults

integer

レスポンスとして表示される結果の最大数です。

query*

string

文字列形式の検索クエリです。

format

string

html あるいは text です。textの場合、戻り値はplain textです。htmlの場合はhtmlで戻ります。回答にStyled htmlが含まれている場合(フォントの大きさや色など)、htmlをご使用ください。シンプルテキストの回答が必要な場合はtextを使用してください。デフォルトはhtmlとなっています。

APIは、Q&Aデータベースから最も関連性の高い質問と回答を見つけます。

confidence: AIモデルが算出したconfidence値を提示します。0と1の間の数字です。

effective confidence: クエリの結果にフィードバックが送られるとAIモデルのトレーニングに反映されますが、ユーザーとエージェントのフィードバック結果を反映したconfidence値がeffective confidenceです。0と1の間の数字です。

question: 提示された質問/回答のペアにおいて質問の部分です。

answer: 提示された質問/回答のペアにおいて回答の部分です。

id: フィードバックを入力したり、取り消すQ&Aの検索結果を特定するために使われます。

hashtags: Q&Aに登録されているハッシュタグです。

lastUpdatedDate: Q&Aが最後に更新された日時です。

agentFeedback: Q&Aに対するエージェントからのフィードバック(ダッシュボードとREST APIを介して)です。

userFeedback : Q&Aに関するユーザーからの(ユーザーとの会話からの)フィードバックです。

count: 提案されたQ&Aの数です。

hashId :このハッシュIDは、Select Answer APIを利用するときに使用されます。検索結果の表示件数は、プロジェクトの設定に従います。Q&A>設定メニューから変更することができます。

{"result": 
  [
    {
      "confidence": CONFIDENCE_VALUE, 
      "effectiveConfidence": EFFECTIVE_CONFIDENCE_VALUE, 
      "question": "QUESTION_1", 
      "answer": "ANSWER_1",
      "id": "ID_1",
      "hashtags": [],
      "lastUpdatedDate": "DATE",
      "agentFeedback": {
                "positiveCount": 1,
                "negativeCount": 0
              },
      "userFeedback": {
                "positiveCount": 1,
                "negativeCount": 0
              }
    }, ... 
  ],
  "count": 3,
  "hashId": "HASH_ID"
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl -d '{ 
  "query": "How much is it?",
  "maxResults": 3, 
  "hashtags": ["wiki", "knowledge"], 
  "hashtagsOperator": "OR",
  "format": "text"}' \
-H 'API-KEY: YOUR API KEY' \
-H 'Content-Type: application/json' \
https://backend-ja.alli.ai/webapi/faq

Response Example

{"result": 
  [
    {
      "confidence": 0.8371959004827834, 
      "effectiveConfidence": 0.9698303406362148, 
      "question": "How is the product priced?", 
      "answer": "We have a pricing table that includes a free plan.",
      "id": "ClMVIjCoNDAiZDLyNWZhM1O3YTUIIKZjPPRcER==",
      "hashtags": [],
      "lastUpdatedDate": "2020-11-19",
      "agentFeedback": {
                "positiveCount": 1,
                "negativeCount": 0
            },
      "userFeedback": {
                "positiveCount": 1,
                "negativeCount": 0
            }
    },
    {
      "confidence": 0.6119840535714456, 
      "effectiveConfidence": 0.7738889000171243, 
      "question": "Do you have a pricing table?", 
      "answer": "Yes we do. Please check out our website",
      "id": "RkFROjVmNDAwZDMyNWZhM2Y4YTA1ZDZjNWUwMQ==",
      "hashtags": [],
      "lastUpdatedDate": "2020-11-20",
      "agentFeedback": {
                "positiveCount": 1,
                "negativeCount": 0
            },
      "userFeedback": {
                "positiveCount": 1,
                "negativeCount": 0
            } 
  ],
  "count": 2
  "hashId":"6ca7524a641bc8a23f065e23b46be256"
}

Search from Documents

POST https://backend-ja.alli.ai/webapi/mrc

​Documents APIは、複雑なテーブルなどが含まれたドキュメントからもユーザーの質問に対する回答を抽出することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

エージェントのEメールアドレスを指定することで、このAPI呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの [設定] > [エージェント] にて確認してください。

OWN-USER-ID

string

ユーザーのIDを指定することで、このAPI呼び出しを行うユーザーを特定できます。ここで指定するIDは、ダッシュボードの [顧客リスト]>[CUSTOMER_ID] もしくは[会話履歴]>[対話情報]にて確認できます。

USER-EMAIL

string

OWN-USER-IDを設定する際にユーザーのEメールアドレスを更新する場合は、ここで指定できます。

Request Body

Name
Type
Description

returnPreview

boolean

デフォルトはfalseです。trueの場合、検索ごとにプレビューのhtmlとcssを返します。

autoRegisterCandidates

boolean

デフォルトはtrueです。これをfalseにすると、回答がない場合に自動でCandidatesに登録しないようになります。

hashtagsOperator

string

ANDまたはORのいずれかとなります。 結果にすべてのハッシュタグを含める場合は、ANDを選択してください。 結果に少なくとも1つのハッシュタグを含める場合は、ORを選択してください。

maxResults

integer

レスポンスとして表示される結果の最大数です。

query*

string

文字列形式の検索クエリです。

hashtags

array

ダッシュボードに登録したドキュメントにハッシュタグを追加することができます。ハッシュタグを活用し、当該タグが付けられたドキュメントに限定して検索することができます。

format

string

html あるいは text です。textの場合、戻り値はplain textです。htmlの場合はhtmlで戻ります。回答にstyled htmlが含まれている場合(フォントの大きさや色など)、htmlをご使用ください。シンプルテキストの回答が必要な場合はtextを使用してください。デフォルトはhtmlとなっています。

returnPdfPreview

boolean

デフォルトはfalseです。trueの場合、検索ごとにpdfPreviewのURLが発行されます。

returnPdfPreviewRawData

boolean

デフォルトはfalseです。trueの場合、検索ごとにpdfPreviewRawDataのURLが発行されます。

sortkey

String

ドキュメントのカスタムプロパティで設定するセカンダリソートキーです。

sortDirection

String

セカンダリソートの種類です。値は「asc」または「desc」になります。

検索結果は、以下のようなJSON形式で戻ります。

answer: プロジェクトにアップロードしたドキュメントから抽出された回答です。

answerHash: フィードバックを入力したり、取り消すドキュメントの検索結果を特定するために使われます。

confidence: AIモデルが算出したconfidenceの値を表示します。0と1の間の数字です。 effectiveConfidence: クエリの結果にフィードバックが送られるとAIモデルのトレーニングに反映されますが、ユーザーとエージェントのフィードバック結果を反映したconfidence値がeffective confidenceです。0と1の間の数字です。

documentId: 回答が抽出されたドキュメントのIDです。

documentName: 回答が抽出されたドキュメントの名前です。

hashtags: ドキュメントに登録されているハッシュタグです。

pageNo: 回答が得られたドキュメントのページ番号(プレビュー時ページ番号)です。createdDate: ドキュメントがアップデートされた日時です。

agentFeedback: ドキュメントに対するエージェントからのフィードバック(ダッシュボードとREST APIを介して)です。

userFeedback:ドキュメントに関するユーザーからのフィードバックとなります。検索結果の数と閾値は、ダッシュボードの設定に従います。[ナレッジベース]>[ドキュメント]> [設定]で設定を確認してください。

body:リクエストパラメーターのreturnPreviewがtrueの場合、ドキュメント検索プレビューのhtml本文が表示されます。

css:リクエストパラメーターでreturnPreviewがtrueの場合、ドキュメント検索プレビューのcssが表示されます。

pdfPreview:リクエストでreturnPdfPreviewがtrueの場合、回答が強調表示されたドキュメントのPDFプレビューへのURLが表示されます。 [IP許可リストのダウンロード]設定を使用してURLを制限できることに注意してください。 検索結果の数としきい値は、ダッシュボードの設定に従います。 [ドキュメント]> [設定]で設定を確認してください。

folder:もし回答がDocumentsデータベース内のフォルダから見つかった場合、ここにはフォルダ名が返されます。

editer:ドキュメントへの編集アクセス権を持つエージェントのメールアドレスの一覧が返されます。(Alliのダッシュボードで設定されている場合)

viewer:ドキュメントへの閲覧アクセス権を持つエージェントのメールアドレスの一覧が返されます。(Alliのダッシュボードで設定されている場合)  検索結果の数と閾値は、ダッシュボードの設定に従います。ドキュメント > 設定で設定を確認してください。

 {
    "result": [
        {
            "answer": "ANSWER_1",
            "answerHash": "ANSWER_HASH_1",
            "confidence": CONFIDENCE_1,
            "effectiveConfidence": EFFECTIVE_CONFIDENCE_1,
            "documentId": "DOCUMENT_ID_1",
            "documentName": "DOCUMENT_NAME_1",
            "hashtags": [],
            "pageNo": PAGE_NUMBER,
            "createdDate": "DATE",
            "agentFeedback": {
                "positiveCount": 0,
                "negativeCount": 0
            },
            "userFeedback": {
                "positiveCount": 0,
                "negativeCount": 0
            },
            "body": "PREVIEW_HTML_BODY",
            "css": "PREVIEW_CSS",
            "pdfPreview": "PDF_PREVIEW_URL",
            "folder": "folder 1", 
            "editor": ["email_1@allganize.ai", "email_2@allganize.ai"], 
            "viewer": ["email_3@allganize.ai"]
        }
    ]
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl -X POST -d '{ 
  "query": "can I disclose the composite ratings?",
  "maxResults": 3, 
  "hashtags": ["wiki", "knowledge"], 
  "hashtagsOperator": "OR",
  "format": "text",
  "returnPdfPreview": true,
  "returnPdfPreviewRawData": true \
-H 'API-KEY: YOUR API KEY' \
-H 'Content-Type: application/json' \
https://backend-ja.alli.ai/webapi/mrc

Response Example

{
  "count": 2,
  "result": [
    {
      "answer": "an institution’s board of directors and senior management",
      "answerHash": "8430cf3b9af628abc1bb063802db39be",
      "confidence": 0.9998937845230103,
      "effectiveConfidence": 1,
      "documentId": "S25vd2xlZGdlQmFzZTo1ZjMzODFkZmNhYWJjYWUyMjkzYjFhY2U=",
      "documentName": "Policy document 1.docx",
      "hashtags": [
        "hashtag1",
        "hashtag2"
      ],
      "pageNo": 5,
      "createdDate": "2020-11-18",
      "agentFeedback": {
        "positiveCount": 1,
        "negativeCount": 0
      },
      "userFeedback": {
        "positiveCount": 0,
        "negativeCount": 0
      },
      "pdfPreviewRawData": {
        "pdfs": [
          {
            "pdfUrl": "PDF_ACTUAL_URL",
            "pageNo": 1,
            "highlight_indexes": [
                12
              ]
          },
          {
            "pdfUrl": "PDF_ACTUAL_URL",
            "pageNo": 2,
            "highlight_indexes": [
                12,
                13,
                14
              ]
          }
      ],
      "totalPageNo": 10
      },
      "pdfPreview" : "PDF_PREVIEW_URL"
      "folder": "folder 1", 
      "editor": ["email_1@allganize.ai", "email_2@allganize.ai"], 
      "viewer": ["email_3@allganize.ai"]
    },
    {
      "answer": "banks cannot, except in very limited circumstances",
      "answerHash": "d849a49662a4f21df51de24d06196547",
      "confidence": 0.9998629689216614,
      "effectiveConfidence": 0.9998629689216614,
      "documentId": "S25vd2xlZGdlQmFzZTo1ZjMzODFkZmNhYWJjYWUyMjkzYjFhY2U=",
      "documentName": "Bank policy 2020.pdf",
      "hashtags": [
        "hashtag1",
        "hashtag2"
      ],
      "pageNo": 220,
      "createdDate": "2020-11-18",
      "agentFeedback": {
        "positiveCount": 1,
        "negativeCount": 0
      },
      "userFeedback": {
        "positiveCount": 0,
        "negativeCount": 0
      },
      "pdfPreviewRawData": {
        "pdfs": [
          {
            "pdfUrl": "PDF_ACTUAL_URL",
            "pageNo": 1,
            "highlight_indexes": [
                12
              ]
          }
      ],
      "totalPageNo": 5
      },
      "pdfPreview" : "PDF_PREVIEW_URL"
    }
  ]
}

Get Single Q&A

GET https://backend-ja.alli.ai/webapi/single_faq

このAPIを利用すれば特定のQ&Aの詳細を取得することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュー→全般タブから確認できます。

Request Body

Name
Type
Description

id*

string

詳細取得の対象となるQ&AのIDです。

format

string

html あるいは text です。textの場合、戻り値はplain textです。htmlの場合はhtmlで戻ります。回答にStyled htmlが含まれている場合(フォントの大きさや色など)、htmlをご使用ください。シンプルテキストの回答が必要な場合はtextを使用してください。デフォルトはhtmlとなっています。

検索結果は、以下のようなJSON形式で戻ります。

question: 対象となるQ&Aの質問です。

answer : 対象となるQ&Aの回答です。

id: 対象となるFAQのIDです。Requestで使用したものと同じ値です。

userFeedback: 対象となるQ&Aに対するユーザーフィードバックです。

agentFeedback: 対象となるQ&Aに対するエージェントフィードバックです。

lastUpdatedDate, createdDate: 対象となるQ&Aの更新日と作成日です。

hashtags: 対象となる質問に付与された全てのハッシュタグです。

{
    "result": {
        "question": "そこにいるのは誰?",
        "answer": "鈴木です",
        "id": "RkFROjYwMmY2ZTQ0YWZmMWQ5YmQ0NmM5Y2VkNw==",
        "userFeedback": {
            "positiveCount": 0,
            "negativeCount": 0
        },
        "agentFeedback": {
            "positiveCount": 0,
            "negativeCount": 1
        },
        "lastUpdatedDate": "2021-02-19",
        "createdDate": "2021-02-19",
        "hashtags": []
    }
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl -X GET \
-d '{"id": "iuHjHBhjHGbhjm==", "format": "text"}' \
-H "API-KEY: YOUR API KEY" \
https://backend-ja.alli.ai/webapi/single_faq

Response Example

{
    "result": {
        "question": "Who is there?",
        "answer": "Elmo",
        "id": "RkFROjYwMmY2ZTQ0YWZmMWQ5YmQ0NmM5Y2VkNw==",
        "userFeedback": {
            "positiveCount": 0,
            "negativeCount": 0
        },
        "agentFeedback": {
            "positiveCount": 0,
            "negativeCount": 1
        },
        "lastUpdatedDate": "2021-02-19",
        "createdDate": "2021-02-19",
        "hashtags": []
    }
}

Get Single Document

GET https://backend-ja.alli.ai/webapi/single_document

このAPIを利用すれば特定のドキュメントの詳細を取得することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュー→全般タブから確認できます。

Request Body

Name
Type
Description

id*

string

ドキュメントのidです。

検索結果は、以下のようなJSON形式で戻ります。

id:ドキュメントのidです。

documentName:ドキュメントファイルの名称です。

createDate:ドキュメントがアップロードされた日付です。

hashtags:ドキュメントに紐づけられたハッシュタグです。

agentFeedback:ドキュメントに対してエージェントからフィードバックされたgood/Badそれぞれの数です。

userFeedback:ドキュメントに対してユーザーからフィードバックされたgood/Badそれぞれの数です。

      "id": "S25vd2xlZGdlQmFzZTo1ZjMzODFkZmNhYWJjYWUyMjkzYjFhY2U=",
      "documentName": "Policy document 1.docx",
      "createdDate": "2020-11-12",
      "agentFeedback": {
                "positiveCount": 1,
                "negativeCount": 0
            },
            "userFeedback": {
            "positiveCount": 0,
            "negativeCount": 0
        },
      "hashtags" : ["hashtag1", "hashtag2"]
    }
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl -X GET \
-d '{"id": "S25vd2xlZGdlQmFzZTo1ZjMzODFkZmNhYWJjYWUyMjkzYjFhY2U="}' \
-H "API-KEY: YOUR API KEY" \
https://backend-ja.alli.ai/webapi/single_document

Response Example

{"result": {
      "id": "S25vd2xlZGdlQmFzZTo1ZjMzODFkZmNhYWJjYWUyMjkzYjFhY2U=",
      "documentName": "Policy document 1.docx",
      "createdDate": "2020-11-12",
      "agentFeedback": {
                "positiveCount": 1,
                "negativeCount": 0
            },
      "userFeedback": {
            "positiveCount": 0,
            "negativeCount": 0
        },
      "hashtags" : ["hashtag1", "hashtag2"]
    }
}

Q&A Feedbacks

GET https://backend-ja.alli.ai/webapi/faq_feedbacks

このAPIを使用すれば、検索クエリごとにQ&Aペアに与えられるフィードバックリストを得ることができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

aaaエージェントのメールアドレスを指定することで、このAPI呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの[設定]>[エージェント]にて確認してください。

OWN-USER-ID

string

ユーザーのIDを指定することで、このAPI呼び出しを行うユーザーを特定できます。ここで指定するIDは、ダッシュボードの[顧客リスト]>[CUSTOMER_ID]もしくは[会話履歴]>[対話情報]にて確認できます。

Request Body

Name
Type
Description

offset

integer

ページに出力される第一項目の位置を決めます。

limit

integer

1ページに出力する項目の数を決めます。最大値は100です。

検索結果は、以下のようなJSON形式で戻ります。

query: 以下のQ&Aに対し、フィードバック情報を持っている検索クエリです。

feedbacks: 当該クエリに従属したフィードバック情報です。

faq_idとpositiveを含みます。

faqId: 当該クエリに対し、フィードバックが与えられたQ&AのIDです。

positive: true あるいは false です。trueはQ&Aに対するポジティブなフィルタリング、falseはネガティブなフィードバックを意味します。

count: リスト化したフィードバックの数です。

{
  "result": [
    {
      "query": "QUERY_1",
      "feedbacks": [
        {
          "faqId": "FAQ_ID_1_1", 
          "positive": true or false
        }, ...
      ]
    }, ...
  ],
  "count": COUNT_1
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

特定のユーザーからフィードバックリストを取得する場合は、ヘッダーにOWN-USER-IDを指定してください。特定のエージェントからフィードバックリストを取得する場合は、ヘッダーにAGENT-EMAILを指定してください。OWN-USER-IDまたはAGENT-EMAILを指定しない場合、すべてのフィードバックが返されます。

curl -X GET \
-d '{"offset": 0, "limit": 10}' \
-H "API-KEY: YOUR API KEY" \
https://backend-ja.alli.ai/webapi/faq_feedbacks

Response Example

{
  "result": [
    {
      "query": "where is the office?",
      "feedbacks": [
        {
          "faqId": "RkFROjVmNDA1MWVkMTFmOWJjMTJjOGUwMTg5YQ==",
          "positive": true
        },
        {
          "faqId": "RkFROjVmNDA1MWVkMTFmOWJjMTJjOGUwMThhNA==",
          "positive": false
        },
        {
          "faqId": "RkFROjVmNDA1MWVjMTFmOWJjMTJjOGUwMTgyYw==",
          "positive": true
        }
      ]
    },
    {
      "query": "Are you funded?",
      "feedbacks": [
        {
          "faqId": "RkFROjVmNDA1MWVjMTFmOWJjMTJjOGUwMTgyNw==",
          "positive": true
        }
      ]
    }
  ],
  "count": 4
}

Q&A Feedback

POST https://backend-ja.alli.ai/webapi/faq_feedback

このAPIを利用すれば、検索クエリごとにQ&Aにフィードバックを与えたり、与えられたフィードバックを削除することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

エージェントのEメールアドレスを指定することで、このAPI呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの [設定] > [エージェント] にて確認してください。

Request Body

Name
Type
Description

query*

string

当該FAQにフィードバック情報を与えたり、取り消す検索クエリです。

id*

string

フィードバック情報を与えたり、取り消すFAQのIDです。検索する際、検索クエリと結果のQ&Aペアに対して与えられ、上記のPOST Q&A APIを利用して抽出することができます。

isPositive*

boolean

trueであればポジティブなフィードバック、falseであればネガティブなフィードバックを与えます。nullは与えられたフィードバックを取り消します。

検索結果は、以下のようなJSON形式で戻ります。

id: フィードバック情報を与えたり、取り消したQ&AのIDです。

Requestで使用したものと同じ情報です。

positiveCount: Requestの処理後のポジティブなフィードバック数の合計です。

negativeCount: Requestの処理後のネガティブなフィードバック数の合計です。

{
    "result": {
        "faqTrainSearchResult": {
            "faq": {
                "id": "ID"
            },
            "agentFeedback": {
                "positiveCount": NUMBER,
                "negativeCount": NUMBER
            }
        }
    },
    "errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

Q&A_IDを該当するQ&A IDに変更しなければなりません。Q&A IDを取得するには、Q&AのResponse Example もしくはQ&A FeedbacksのResponse Exampleの項目をご参照ください。

curl https://backend-ja.alli.ai/webapi/faq_feedback \
-d '{"query": "どこにありますか?", 
     "id": "RkFROjVmNDA1MWVjMTFmOWJjMTJjOGUwMTgyNw==", 
     "isPositive": true}' \
-H "Content-Type: application/json" \
-H "API-KEY: YOUR API KEY"

Response Example

{
    "result": {
        "faqTrainSearchResult": {
            "faq": {
                "id": "RkFROjVmNDA1MWVjMTFmOWJjMTJjOGUwMTgyNw=="
            },
            "agentFeedback": {
                "positiveCount": 3,
                "negativeCount": 1
            }
        }
    },
    "errors": null
}

Q&A User Feedback

POST https://backend-ja.alli.ai/webapi/faq/user_feedback

このAPIを利用すると、対象のFAQに対してユーザーフィードバックを登録することができます。 (ユーザーフィードバックは、Alliチャットボットを使用して回答に対して適切か不適切をユーザーが送信するものです)。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

OWN-USER-ID

string

ユーザーのIDを指定することで、このAPI呼び出しを行うユーザーを特定できます。ここで指定するIDは、ダッシュボードの [顧客リスト]>[CUSTOMER_ID] もしくは[会話履歴]>[対話情報]にて確認できます。

USER-EMAIL

string

OWN-USER-IDを設定する際にユーザーのEメールアドレスを更新する場合は、ここで指定できます。

Request Body

Name
Type
Description

prev

boolean

このクエリを割り当てた以前のフィードバックに関するブール値(以前のフィードバックを変更するためにのみ使用する必要があります)

positive*

boolean

登録するフィードバックが適切か不適切かのブール値

query*

string

当該FAQにフィードバック情報を与えたり、取り消す検索クエリです。

id*

string

フィードバック情報を与えたり、取り消すFAQのIDです。検索する際、検索クエリと結果のQ&Aペアに対して与えられ、上記のPOST Q&A APIを利用して抽出することができます。

analyticsHashtags

array

ハッシュタグのスコープとして登録したすべてのハッシュタグの配列です。ハッシュタグによる分析で使用されます。

対象のFAQに対する現在のユーザーフィードバック(positiveCountとnegativeCountの両方)を返します。

{
    "result": {
        "userFeedback": {
            "positiveCount": 1,
            "negativeCount": 0
        }
    }
}

Request Example

curl https://backend-ja.alli.ai/webapi/faq/user_feedback \
-H 'API-KEY: YOUR_API_KEY' \
-H "Content-Type: application/json" \
-d '{
    "query": "QUERY",
    "prev": PREVIOUSLY_ASSIGNED_FEEDBACK,
    "id": "FAQ_ID",
    "positive": true
}'

Response Example

{
    "result": {
        "userFeedback": {
            "positiveCount": 1,
            "negativeCount": 0
        }
    }
}

Upload Q&As

POST https://backend-ja.alli.ai/webapi/upload_faq_file

この API を使用することで、tsv、csv、xlsx、および zip 形式で複数の Q&A をアップロードできます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

この API 呼び出しを行うエージェントを指定する場合は、ここでエージェントのメール アドレスを指定できます。これは、ダッシュボードの [設定] > [エージェント] の下にあります。

Request Body

Name
Type
Description

file*

string

ローカルの Q&A ファイルの場所。 xlsx、tsv、csv、および zip ファイルがサポートされています。

result:アップロード成功時にsuccessと表示します。

notUploaded:質問のいずれかがアップロードされていないか、既存のQ&Aが更新されていない場合、詳細がここにリストされます。

question: アップロードされていないまたは更新されていないQ&AのQの部分になります。state:Q&Aが「類似の質問」の内容の重複によりアップロードされていない場合は「dup」、同じ質問内容により既存のQ&Aが更新された場合は「up」と表示されます。

{
    "result": "success",
    "notUploaded": [
        {
            "question": "QUESTION_1",
            "state": "dup"
        },
        {
            "question": "QUESTION_2",
            "state": "up"
        }
    ]
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl -F 'file=@/location/to/your_file' 
\-H 'API-KEY: YOUR_API_KEY'
https://backend-ja.alli.ai/webapi/upload_faq_file

Response Example

{
    "result": "success",
    "notUploaded": [
        {
            "question": "How to teach AI",
            "state": "dup"
        },
        {
            "question": "I'd like to schedule a meeting or a demo.",
            "state": "up"
        }
    ]
}

Add Q&A

POST https://backend-ja.alli.ai/webapi/register_faq

このAPIを使用することで、新しいQ&Aを追加したり、既存のQ&Aを更新することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

​エージェントのEメールアドレスを指定することで、このAPI呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの [設定] > [エージェント] にて確認してください。

Request Body

Name
Type
Description

status

string

ONもしくはOFFとなります。ONの場合は、Q&A検索にて検索対象のQ&Aとなります。

question*

string

Q&Aの質問部分となります。

similarQuestions

string

類似質問を指します。類似質問として複数を追加できます。

answer*

string

Q&Aの回答部分です。同じ質問が質問がデータベースに存在する場合は既存の回答はこの回答部分に置き換わります。

hashtags

array

Q&Aに設定できるハッシュタグです。複数のハッシュタグを設定できます。

memo

string

エージェントにて確認できるQ&Aにおけるメモを指します。

followFolderPermission

boolean

アップロード時に所属所属するフォルダがある場合、そのフォルダの権限を引き継ぐかどうかを指定します(デフォルト値: True)。引き継がない場合、以下で指定された権限が使用されます。それ以外の特別な指定がない限り、すべてのエージェントとユーザーに権限が与えられます。

agentEditor

array

ファイルの編集権限を持つエージェントを登録してください。

agentViewer

array

ファイルの閲覧権限を持つエージェントを登録してください。

userViewer

object

ファイルの閲覧権限を持つユーザーを登録してください。customer_idを使用する場合は、own-user-idと同じです。customer_groupのid(categoryElementsId)は、CUSTOMER GROUPの問い合わせAPIを使用して取得できます。

allowOtherAgentsView

boolean

編集者/閲覧者リストに含まれていないエージェントも閲覧することができます。

allowOtherUsersView

boolean

編集者/閲覧者リストに含まれていないユーザーも閲覧することができます。

status: 登録されたQ&Aのステータスです。「created」とはQ&Aが新しく登録されたことを指します。また、「updated」は既存のQ&Aが新しい回答で更新されたことを指します。

id: 登録されたQ&AのIDを指します。

{
    "result": {
        "status": "created",
        "id": "Q&A_ID"
    },
    "errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl 'https://backend-ja.alli.ai/webapi/register_faq' \
-H 'API-KEY: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
    "status": "ON",
    "question": "Where is the office?",
    "similarQuestions": ["Office location?", "Office address?"],
    "answer": "We have offices in Oakland(US), Seoul(Korea), and Tokyo(Japan)",
    "hashtags": ["office", "location"],
    "memo": "Added from API",
    "folder": "folder 1", 
    "agentEditor": ["your@email.com"], 
    "agentViewer": ["your@email_2.com"],
    "userViewer": {
    "variables": {
      "CUSTOMER_ID": ["id_1", "id_2"],
      "CUSTOMER_GROUP": ["{categoryElementId}", "{categoryElementId}"]
        }
    },
    "followFolderPermission": false,
    "allowOtherAgentsView": true,
    "allowOtherUsersView": true
}'

Response Example

{
    "result": {
        "status": "created",
        "id": "RkFROkYwYRQxYzIzMDcxYWM5M3JlOWR5Y2EeOQ=="
    },
    "errors": null
}

delete Q&A

POST https://backend-ja.alli.aiwebapi/delete_faq

このAPIを使用することで、Q&Aを削除することができます。

Path Parameters

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

Name
Type
Description

id*

string

削除したいQ&AのIDとなります。

status:Q&Aが正常に削除された場合は「deleted」となります。

{
    "result": {
        "status": "deleted"
    },
    "errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl 'https://backend-ja.alli.ai/webapi/delete_faq' \
-H 'API-KEY: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d {
    "id": "RkFROkYwYRQxYzIzMDcxYWM5M3JlOWR5Y2EeOQ=="
    }

Response Example

{
    "result": {
        "status": "deleted"
    },
    "errors": null
}

List Q&As

GET https://backend-ja.alli.ai/webapi/faqs

このAPIを使用することで、ナレッジベースのQ&Aを一覧で取得することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

Name
Type
Description

SearchTerm

string

取得するQ&Aをフィルタリングするためのキーワード検索クエリです

isUsed

boolean

trueの場合、オンになっているQ&Aのみがリストされ、falseの場合、オフになっているQ&Aのみが取得されます。

hashgtags

array

取得するQ&Aをフィルタリングするためのハッシュタグを指定できます。複数のハッシュタグを指定できます。

hashtagsOperator

string

andまたはorのいずれかとなります。結果にすべてのハッシュタグを含める場合は、andを選択してください。結果に少なくとも1つのハッシュタグを含める場合は、orを選択してください。

createdByAgent

string

trueの場合、リストにはエージェントによって作成されたQ&Aのみが含まれます。 falseの場合、他のQ&Aのみが含まれます。 createdByAgent、answeredByMrc、autoGenerated、editedByAgentフィルターは相互に排他的であり、それらが2つ以上使用される場合はORロジックが適用されることに注意してください。

answeredByMrc

string

trueの場合、リストには、アップロードされたドキュメントから回答が自動的に抽出されるQ&Aのみが含まれます。 falseの場合、他のQ&Aのみが含まれます。

autoGenerated

string

trueの場合、リストには自動生成されたQ&Aのみが含まれます。 falseの場合、他のQ&Aのみが含まれます。

editedByAgent

string

trueの場合、リストには、登録後にエージェントが編集したQ&Aのみが含まれます。 falseの場合、それ以外のQ&Aのみが含まれます。

format

string

html あるいは text です。textの場合、戻り値はplain textです。htmlの場合はhtmlとなります。回答にStyle htmlが含まれている場合(フォントの大きさや色など)、htmlをご使用ください。シンプルなテキストが必要な場合はtextを使用してください。デフォルトはhtmlとなります。

offset

integer

オフセットを使用することで、表示するQ&Aの最初のインデックスを指定できます。

limit

integer

limitを使用することで、1ページに返されるオブジェクトの数を設定できます。最大値とデフォルト値は1000です。

offset:リクエストパラメーターとしてのoffsetと同じ値となります。

count:limitが適用された際に取得されたQ&Aの総数。

totalCount:適用されたフィルターの結果としてのQ&Aの総数。

id:Q&AのID。

question:Q&Aの質問部分。

answer:Q&Aの回答部分。

hashtags:Q&Aに設定されているハッシュタグ。

userFeedback:肯定的および否定的なユーザーフィードバックの数。ユーザーのフィードバックは、将来のクエリの検索結果に影響します。

agentFeedback:正および負のエージェントフィードバックの数。エージェントのフィードバックは、将来のクエリの検索結果に影響します。

lastUpdatedDate:Q&Aが最後に更新された日付。

createdDate:Q&Aが作成された日付。

{
    "offset": 0,
    "count": 10,
    "totalCount": 12,
    "results": [
        {
            "id": "Q&A_ID_1",
            "question": "QUESTION_1",
            "answer": "ANSWER_1",
            "hashtags": [
                "HASHTAG_1",
                "HASHTAG_2"
            ],
            "userFeedback": {
                "positiveCount": 0,
                "negativeCount": 0
            },
            "agentFeedback": {
                "positiveCount": 0,
                "negativeCount": 0
            },
            "lastUpdatedDate": "2021-05-04",
            "createdDate": "2021-02-23"
        },
        {
            "id": "Q&A_ID_2",
            "question": "QUESTION_2",
            "answer": "ANSWER_2",
            "hashtags": [
                "HASHTAG_1",
                "HASHTAG_3"
            ],
            "userFeedback": {
                "positiveCount": 0,
                "negativeCount": 0
            },
            "agentFeedback": {
                "positiveCount": 0,
                "negativeCount": 0
            },
            "lastUpdatedDate": "2021-05-04",
            "createdDate": "2021-02-23"
        }, ...
    ]
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl -X GET 'https://backend-ja.alli.ai/webapi/faqs' \
-H 'API-KEY: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
    "searchTerm": "Allganize",
    "isUsed": true,
    "hashtags": ["company", "Alli"],
    "hashtagsOperator": "OR",
    "createdByAgent": true,
    "answeredByMrc": true,
    "autoGenerated": false,
    "editedByAgent": false,
    "format": "text",
    "offset": 0,
    "limit": 10
}'

Response Example

{
    "offset": 0,
    "count": 2,
    "totalCount": 2,
    "results": [
        {
            "id": "RkRODjYwUIr2YTUzYTc0MjNmMDgxOTFkZTRlNA==",
            "question": "How many people work at Allganize?",
            "answer": "Currently (Nov 2019), we have 16 employees working at three different locations.",
            "hashtags": [
                "company",
                "actual"
            ],
            "userFeedback": {
                "positiveCount": 0,
                "negativeCount": 0
            },
            "agentFeedback": {
                "positiveCount": 0,
                "negativeCount": 0
            },
            "lastUpdatedDate": "2021-05-04",
            "createdDate": "2021-02-23"
        },
        {
            "id": "RkFROjYwIdU4YTUzYTc0MjNmUR2wOTFkZTU1OA==",
            "question": "Do you have any references or case studies?",
            "answer": "We do! Check out our recent case studies and other articles on our blog: https://blog.allganize.ai/",
            "hashtags": [
                "company",
                "actual"
            ],
            "userFeedback": {
                "positiveCount": 0,
                "negativeCount": 0
            },
            "agentFeedback": {
                "positiveCount": 0,
                "negativeCount": 0
            },
            "lastUpdatedDate": "2021-05-04",
            "createdDate": "2021-02-23"
        }
    ]
}

Q&A Candidates

GET https://backend-ja.alli.ai/webapi/faq_candidates

このAPIを利用すれば、ユーザーからの質問の中で回答されていない質問、つまり、「未回答質問」のリストを得ることができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

Name
Type
Description

hashtags

array

当該ハッシュタグが付いている未回答質問のみ確認できるようにするarrayです。

searchTerm

string

確認する未回答質問をフィルタリングするための検索クエリです。

order

string

未回答質問を並べる基準を意味します。属性_[DESC or ASC]形式で構成され、属性にはFREQUENCYとCREATEDATがあります。

state

string

確認する未回答質問のステータスです。ALL、ACTIVE、 ARCHIVEDのうち一つの値を持ちます。

offset

integer

ページに出力される第一項目の位置を決めます。

limit

integer

1ページに出力する項目の数を決めます。最大値は100です。

sources

array

指定したソースに検索範囲を制限する場合に使用するソース配列です。SDK、QNA、DOCUMENTS、APIをソースとして使用できます。

検索結果は、以下のようなJSON形式で戻ります。

count: リスト化した未回答質問の合計件数です。

id: 未回答質問に対して抽出された回答のIDです。新しい未回答質問が登録されると、Alliはアップロードしたドキュメントから自動的に回答を抽出して登録を試みます。

frequency: questions の下にある全てのfrequency 値の合計です。

textAnswer: 未回答質問に対して自動抽出された回答の内容です。

state: 未回答質問のステータスです。Q&Aデータベースに追加されていない場合はACTIVE、追加された場合はARCHIVEDで表示されます。

createdAt: 未回答質問が生成された日時です。

questions: 複数の類似質問が同一の回答を共有することができますが、同じ回答を共有する全ての未回答質問の情報をここで確認することができます。

id (under questions): 未回答のユーザー質問のIDです。

question (under questions): 未回答のユーザー質問の内容です。

frequency (under questions): ユーザーが同じ質問を何回したか表示します。

id (under history): 未回答質問のヒストリー情報に割り当てられたIDです。ヒストリー情報はユーザーが当該質問をした時のログ情報です。

{
	"result": {
		"faqCandidates": [
		  {
				"id": "ID_ANSWER_1",
				"frequency": 1,
				"textAnswer": "ANSWER_1",
				"state": "ACTIVE",
				"createdAt": NUMBER,
				"questions": [{
					"id": "ID_QUESTION_1",
					"question": "QUESTION_1",
					"frequency": 1,
					"history": {
						"id": "ID_HISTORY_1"
					}
				}]
			},
		],
		"count": 1
	},
	"errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl -X GET \
-d '{
    "hashtags": ["wiki"], 
    "searchTerm": "ユーザー", 
    "order": "FREQUENCY_DESC", 
    "state": "ALL", 
    "offset": 0, 
    "limit": 10}' \
-H "API-KEY: YOUR API KEY" \
https://backend-ja.alli.ai/webapi/faq_candidates

Response Example

{
  "count": 2,
  "result": [
    {
      "id": "RkFRQ2FuZGlkYXRlOjVlYjA3OGU5MGFmZmMyM2QxZjc4ZTMzMQ==",
      "frequency": 1,
      "textAnswer": "使い方はこの通りです。\n— Fromユーザーガイド.pdf",
      "state": "ACTIVE",
      "createdAt": 1588623593321,
      "questions": [
        {
          "id": "RkFRQ2FuZGlkYXRlUXVlc3Rpb246NWViMDc4ZTkwYWZmYzIzZDFmNzhlMzMw",
          "question": "ユーザーマニュアルがありますか?",
          "frequency": 1,
          "history": {
            "id": "Q29udmVyc2F0aW9uOjVlYjA3OGI2NWUyMTJlMTMzZDM4NDAzOA=="
          }
        }
      ]
    },
    {
      "id": "RkFRQ2FuZGlkYXRlOjVlOWEzZWI2MmZlOTFkMzIwYjE2YWQyOQ==",
      "frequency": 1,
      "textAnswer": "15日以内であればいつでも取り消しができます。\n— Fromカスタマーマニュアル.pdf",
      "state": "ACTIVE",
      "createdAt": 1587166902114,
      "questions": [
        {
          "id": "RkFRQ2FuZGlkYXRlUXVlc3Rpb246NWU5YTNlYjYyZmU5MWQzMjBiMTZhZDI4",
          "question": "払い戻しできますか?",
          "frequency": 1,
          "history": {
            "id": "Q29udmVyc2F0aW9uOjVlOWEzZDliNjU5YmM2NTEyMTk5MDQ3Ng=="
          }
        }
      ]
    }
  ],
  "errors": null
}

Q&A Candidates

POST https://backend-ja.alli.ai/webapi/add_faq_candidates

未回答の質問リストに未回答の質問を新たに登録します。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

エージェントのEメールアドレスを指定することで、このAPI呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの [設定] > [エージェント] にて確認してください。

OWN-USER-ID

string

ユーザーのIDを指定することで、このAPI呼び出しを行うユーザーを特定できます。ここで指定するIDは、ダッシュボードの [顧客リスト]>[CUSTOMER_ID] もしくは[会話履歴]>[対話情報]にて確認できます。

USER-EMAIL

string

OWN-USER-IDを設定する際にユーザーのEメールアドレスを更新する場合は、ここで指定できます。

Request Body

Name
Type
Description

queries*

string

登録したいすべてのクエリのリスト

結果は次の JSON 形式で取得されます。

id: 登録された未回答の質問のID。

{
    "result": {
        "candidates": [
            {
                "id": "CANDIDATE_ID_1"
            },
            {
                "id": "CANDIDATE_ID_2"
            }
        ]
    },
    "errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl https://backend-ja.alli.ai/webapi/add_faq_candidates \
-d '{"queries": ["what is that processor", "how much does the processor cost"]}' \
-H "Content-Type: application/json" \
-H "API-KEY: YOUR_API_KEY"

Response Example

{
    "result": {
        "candidates": [
            {
                "id": "RkFRQ2FuZGlkYXRlOjVmOGE1ZDA0ODgxNzc0OWNjMWUwMzRiNg=="
            },
            {
                "id": "iGBiuGIGIugBIGBIugBIuBGiHBiJUhbhIBgIbKHJBJCYUBLHKGJfBJbIb=="
            }
        ]
    },
    "errors": null
}

Documents Feedbacks

GET https://backend-ja.alli.ai/webapi/mrc_feedbacks

このAPIを使用すれば、検索クエリごとにドキュメントから抽出された回答に与えられるフィードバックリストを得ることができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

エージェントのメールアドレスを指定することで、このAPI呼び出しを行うエージェントを特定できます。ここで指定するメールアドレスは、ダッシュボードの[設定]>[エージェント]にて確認してください。

OWN-USER-ID

string

ユーザーのIDを指定することで、このAPI呼び出しを行うユーザーを特定できます。ここで指定したIDは、ダッシュボードの[顧客リスト]>[CUSTOMER_ID]もしくは[会話履歴]>[対話情報]にて確認できます。

Request Body

Name
Type
Description

offset

integer

ページに出力される第一項目の位置を決めます。

limit

integer

1ページに出力する項目の数を決めます。最大値は100です。

検索結果は、以下のようなJSON形式で戻ります。

query: 以下の回答が抽出された検索クエリです。

documentId: 回答を抽出したドキュメントのIDです。

answer: 当該クエリに対してドキュメントから抽出された回答の内容です。

answerHash: 当該クエリに対してドキュメントから抽出された回答に与えられるIDの値です。Documents検索をした時、クエリと検索結果のペアに与えられる値であり、上記のPOST Documents APIを利用して得られるものと同じ値です。

positive: true あるいは false です。trueは当該回答に対するポジティブなフィードバック、falseはネガティブなフィードバックを意味します。

count: リスト化したフィードバック件数の合計です。

{
  "result": [
    {
      "query": "QUERY_1",
      "feedbacks": [
        {
          "documentId": "DOCUMENT_ID_1",
          "answer": "ANSWER_1",
          "answerHash": "ANSWER_HASH_1",
          "positive": true or false
        }, ...
      ]
    }
  ],
  "count": NUMBER
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

特定のユーザーからフィードバックリストを取得する場合は、ヘッダーにOWN-USER-IDを指定してください。特定のエージェントからフィードバックリストを取得する場合は、ヘッダーにAGENT-EMAILを指定してください。

curl -X GET \
-d '{"offset": 0, "limit": 10}' \
-H "API-KEY: YOUR API KEY" \
https://backend-ja.alli.ai/webapi/mrc_feedbacks

Response Example

{
  "result": [
    {
      "query": "cancel the policy",
      "feedbacks": [
        {
          "documentId": "S25vd2xlZGdlQmFzZTo1ZWM1YmJiZTczNmUxNmM0NDRjZDI2ZGM=",
          "answer": "You can cancel the policy in 30 days.",
          "answerHash": "44094c4a281484daadf28e67a4745747",
          "positive": true
        },
        {
          "documentId": "S25vd2xlZGdlQmFzZTo1ZWM1YmJiZTczNmUxNmM0NDRjZDI2ZGM=",
          "answer": "This is how you enroll the policy.",
          "answerHash": "296ffa9691166c583b00365fb6839a06",
          "positive": false
        },
        {
          "documentId": "S25vd2xlZGdlQmFzZTo1ZWM1YmJiZTczNmUxNmM0NDRjZDI2ZGM=",
          "answer": "You cannot get refunded upon cancelation after 30 days.",
          "answerHash": "48e5273910c913dbf0fc08482f7cd22c",
          "positive": true
        }
      ]
    }
  ],
  "count": 3
}

Documents Search Feedback

POST https://backend-ja.alli.ai/webapi/mrc_feedback

このAPIを使用すれば、検索クエリによって抽出された検索結果に対してフィードバックをしたり、削除することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

エージェントのEメールアドレスを指定することで、このAPI呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの [設定] > [エージェント] にて確認してください。

Request Body

Name
Type
Description

query*

string

Documentsの検索結果にフィードバック情報を与える検索クエリです。

id*

string

回答が抽出されたドキュメントのIDです。

answerHash*

string

当該クエリに対してドキュメントから抽出された回答に与えられるIDの値です。Documents検索をした時にクエリと検索結果のペアに与えられる値であり、上記のPOST Documents APIを利用して得ることができます。

isPositive*

boolean

trueであれば当該クエリに対する検索結果にポジティブなフィードバック、falseであればネガティブなフィードバックを与えます。nullの場合は与えられたフィードバックを取り消します。

検索結果は、以下のようなJSON形式で戻ります。

positivecount: Requestの処理後のポジティブなフィードバック数の合計です。

negativecount: Requestの処理後のネガティブなフィードバック数の合計です。

{
    "result": {
        "mrcFeedbackSearchResult": {
            "agentFeedback": {
                "positiveCount": NUMBER,
                "negativeCount": NUMBER
            }
        }
    },
    "errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

DOCUMENT_IDとANSWER_HASHの部分を該当するIDに変更しなければなりません。それぞれの情報を得るにはDocumentsのResponse Example項目、もしくはDocuments FeedbacksのResponse Exampleの項目をご参照ください。

curl https://backend-ja.alli.ai/webapi/mrc_feedback \
-d '{"query": "保険の解約はどうすればいいですか?", 
     "id": "S25vd2xlZGdlQmFzZTo1ZjMzODFkZmNhYWJjYWUyMjkzYjFhY2U=", 
     "answerHash": "8430cf3b9af628abc1bb063802db39be", 
     "isPositive": true}' \
-H "Content-Type: application/json" \
-H "API-KEY: YOUR API KEY"

Response Example

{
    "result": {
        "mrcFeedbackSearchResult": {
            "agentFeedback": {
                "positiveCount": 2,
                "negativeCount": 1
            }
        }
    },
    "errors": null
}

Documents Search User Feedback

POST https://backend-ja.alli.ai/webapi/mrc/user_feedback

このAPIを利用すると、ドキュメント検索の結果に対してユーザーフィードバックを登録することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

OWN-USER-ID

string

ユーザーのIDを指定することで、このAPI呼び出しを行うユーザーを特定できます。ここで指定するIDは、ダッシュボードの [顧客リスト]>[CUSTOMER_ID] もしくは[会話履歴]>[対話情報]にて確認できます。

USER-EMAIL

string

OWN-USER-IDを設定する際にユーザーのEメールアドレスを更新する場合は、ここで指定できます。

Request Body

Name
Type
Description

anserHash*

string

当該クエリに対してドキュメントから抽出された回答に与えられるIDの値です。Documents検索をした時、クエリと検索結果のペアに与えられる値であり、上記のPOST Documents APIを利用して得られるものと同じ値です。

id*

string

ドキュメント検索の回答が抽出されたドキュメントのIDです。

positive*

boolean

登録するフィードバックが適切か不適切かのブール値です。

query*

string

文字列形式の検索クエリです。

analyticsHashtags

array

ハッシュタグをスコープとして登録し、ハッシュタグによる分析で使用するためのハッシュタグの配列です。

変更後のユーザーフィードバックのpositiveCountとnegativeCountをレスポンスとして返します。

{
    "result": {
        "userFeedback": {
            "positiveCount": 1,
            "negativeCount": 0
        }
    }
}

Request Example

curl -request POST 'https://backend.alli.ai/webapi/mrc/user_feedback' \
--header 'API-KEY: YOUR_API_KEY' \
-d '{
    "query": "QUERY",
    "answerHash": "RESULT_ID",
    "id": "DOCUMENT_ID",
    "positive": true
}'

Response Example

{
    "result": {
        "userFeedback": {
            "positiveCount": 1,
            "negativeCount": 0
        }
    }
}

Document Upload APIs

POST https://backend-ja.alli.ai/webapi/upload_file

このAPIを利用することで、Cognitive Searchで検索対象となるファイルをローカルの保存場所からアップロードすることができます。アップロード可能なファイル形式は下記となります。 ファイル形式:.txt, .docx, .csv, .xls, .xlsx, .xlsm, .jpg, .jpeg, .png, .hwp, .hwpx, .pdf, .ppt, .pptx, .doc 外部リンクが含まれるHTMLファイルをアップロードするには、アップロードする前に関連するリンク先のHTMLも含め、zipファイルに圧縮の上、アップロードください。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

エージェントのEメールアドレスを指定することで、このAPI呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの [設定] > [エージェント] にて確認してください。

Request Body

Name
Type
Description

file*

string

アップロードするファイルがあるローカルの保存場所です。

hashtags

array

アップロードしたファイルに付与するハッシュタグです。

footerTitle

string

アップロードされたファイルからの検索結果のフッターとして、回答のソースを入力できます。フッターは、検索結果の [From] の横に表示されます。

footerUrl

string

FooterTitleにリンクとして任意のURLを入れることができます。

folder

string

ドキュメントのアップロード先のフォルダを割り当てることができます。

followFolderPermission

boolean

trueの場合(デフォルト)、ファイルへのアクセス権限はフォルダの権限設定に従います。falseの場合、ファイルは以下の2つのパラメータで定義された独自の権限設定を使用します。以下のパラメータが指定されていない場合、すべてのエージェントに対してファイルへの権限が与えられます。

agentsEditor

array

ファイルに編集者権限を持つエージェントを指定します。

agentsViewer

array

ファイルに閲覧者権限を持つエージェントを指定します。

userViewer

object

ファイルを閲覧する権限を持つユーザーを登録してください。customer_id、customer_groupを使用して登録することができます。customer_idはown-user-idと同じであり、customer_groupのid(categoryElementsId)はCUSTOMER GROUP inquiry APIを通じて取得できます。

allowOtherAgentsView

boolean

閲覧者/編集者に含まれていないエージェントも閲覧することができます。

allowOtherUsersView

boolean

閲覧者/編集者に含まれていないユーザーも閲覧することができます。

次の JSON 形式で結果を取得します。

{
    "result": {
        "id": "ID",
        "fileName": "DOCUMENT_NAME",
        "hashtags": [],
        "footer": "{FOOTER_INFORMATION}",
        "folder": "FOLDER_NAME", 
        "agentEditor": ["AGENT_NAME"], 
        "agentViewer": ["VIEWER_NAME"],
        "allowOtherAgentsView": true,
        "allowOtherUsersView": true, 
        "properties": {}
    }
}   

Request Example

@"/location/to/your_file "にアップロードしたいファイルパスを記載ください。YOUR HASH TAGは付与したいハッシュタグに変更してください。

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl -F 'file=@"/location/to/your_file"' \
-F 'hashtags="[\"api1\", \"api2\"]"' \
-F 'footerUrl="www.allganize.ai"' \
-F 'footerTitle="Allganize website"' \
-F 'folder="folder 1"' \
-F 'followFolderPermission=false' \
-F 'agentViewer="[\"agent@allganize.io\"]"' \
-F 'userViewer="{
      \"variables\": {
      \"CUSTOMER_ID\": [\"customer_1\"],
      \"CUSTOMER_GROUP\": [\"Q2F0ZWdvcnlFbGVtZW5OAjYzNzkyZDY1NWM5ZDIxMTU5NDMwZDY1OA==\"]
        }
    }"' \
-H 'API-KEY: YOUR_API_KEY' https://backend-ja.alli.ai/webapi/upload_file
    

Response Example

{
    "result": {
        "id": "S25vd2xlZGdlQmA23To2MGJjIsjA1YjM1Nz9iRc1YWIzYjA1ODk=",
        "fileName": "policy.docx",
        "hashtags": [
            "api1",
            "api2"
        ],
        "footer": "{\"blocks\": [{\"key\": \"oio7\", \"text\": \"— From ocr_en.png\", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [{\"offset\": 0, \"length\": 17, \"style\": \"ITALIC\"}], \"entityRanges\": [{\"offset\": 7, \"length\": 10, \"key\": 0}], \"data\": {}}], \"entityMap\": {\"0\": {\"type\": \"LINK\", \"mutability\": \"MUTABLE\", \"data\": {\"url\": \"https://download.alli.ai/download_document/UHJvamUiddDo1ZGMxYmI1qwe0ZTk0YWNmMmY5MjRlMzU=/S12vd2xlZGdlQmFzZTo2MGJijef1YjM1Nzc4NTc1YWIzYjA1ODk=\"}}}}",
        "folder": "folder 1", 
        "agentEditor": ["admin_1@allganize.ai", "admin_2@allganize.ai"], 
        "agentViewer": ["viewer_email@allganize.ai"],
        "allowOtherAgentsView": true,
        "allowOtherUsersView": true, 
        "properties": {}
    }
}                                                                                                                                                                                                                     

Upload Documents from S3

POST https://backend-ja.alli.ai/webapi/upload_from_s3

このAPIを利用すると、S3に保存されているファイルをCognitive Searchで利用できるようにアップロードすることができます。これらはダッシュボードの[ナレッジベース]>[ドキュメント]タブに表示されます。アップロード可能なファイル形式は、Upload Documents APIと同じです。

Headers

Name
Type
Description

API-KEY*

string

プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

エージェントのEメールアドレスを指定することで、このAPI呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの [設定] > [エージェント] にて確認してください。

Request Body

Name
Type
Description

footerTitle

string

アップロードされたファイルからの検索結果のフッターとして、回答のソースを入力できます。フッターは、検索結果の [From] の横に表示されます。

footerUrl

string

アップロードされたファイルからの検索結果のフッターとして、回答のソースを入力できます。フッターは、検索結果の [From] の横に表示されます。

hashtags

string

アップロードしたファイルに付与するハッシュタグです。

path*

string

ファイルのS3におけるパス。ファイル名で終わる必要があります。バケット名を含めないでください

secretKey

string

S3のシークレットキーです。

accessKey

string

S3のアクセスキーです。

bucket

string

ファイルを含むS3バケットの名前。

folder

string

ドキュメントのアップロード先のフォルダを割り当てることができます。

followFolderPermission

boolean

trueの場合(デフォルト)、ファイルへのアクセス権限はフォルダの権限設定に従います。falseの場合、ファイルは以下の2つのパラメータで定義された独自の権限設定を使用します。以下のパラメータが指定されていない場合、すべてのエージェントに対してファイルへの権限が与えられます。

agentsEditor

array

ファイルに編集者権限を持つエージェントを指定します。

agentsViewer

array

ファイルに閲覧者権限を持つエージェントを指定します。

userViewer

string

ファイルを閲覧する権限を持つユーザーを登録してください。customer_id、customer_groupを使用して登録することができます。customer_idはown-user-idと同じであり、customer_groupのid(categoryElementsId)はCUSTOMER GROUP inquiry APIを通じて取得できます。

allowOtherAgentsViewer

boolean

閲覧者/編集者に含まれていないエージェントも閲覧することができます。

allowOtherUsersViewer

boolean

閲覧者/編集者に含まれていないユーザーも閲覧することができます。

次の JSON 形式で結果を取得します。

id:アップロードしたファイルのIDです。

fileName: アップロードしたファイルのファイル名です。

hashtags: アップロードしたファイルに付与されるハッシュタグの配列です。

footer: アップロードされたファイルに追加されたフッター(ソース情報)。これはデフォルトのファイル名かfooterTitleとfooterUrlにより設定された内容となります。

folder: ドキュメントデータベースのフォルダから回答が見つかった場合、ここにフォルダ名が返されます。

editor: ドキュメントに編集権限を持つエージェントのメールアドレスのリストです。

viewer: ドキュメントに閲覧権限を持つエージェントのメールアドレスのリストです。

{
    "result": {
        "id": "S25vd2xlZGdlQmA23To2MGJjIsjA1YjM1Nz9iRc1YWIzYjA1ODk=",
        "fileName": "policy.docx",
        "hashtags": [
            "api1",
            "api2"
        ],
        "footer": "{\"blocks\": [{\"key\": \"oio7\", \"text\": \"— From ocr_en.png\", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [{\"offset\": 0, \"length\": 17, \"style\": \"ITALIC\"}], \"entityRanges\": [{\"offset\": 7, \"length\": 10, \"key\": 0}], \"data\": {}}], \"entityMap\": {\"0\": {\"type\": \"LINK\", \"mutability\": \"MUTABLE\", \"data\": {\"url\": \"https://download.alli.ai/download_document/UHJvamUiddDo1ZGMxYmI1qwe0ZTk0YWNmMmY5MjRlMzU=/S12vd2xlZGdlQmFzZTo2MGJijef1YjM1Nzc4NTc1YWIzYjA1ODk=\"}}}}",
        "folder": null,
        "agentEditor": [
            "agent1@allganize.io"
        ],
        "agentViewer": [],
        "userViewer": {
            "variables": {
                "CUSTOMER_ID": [
                    {
                        "id": "new_user_1",
                        "value": "new_user_1"
                    }
                ],
                "CUSTOMER_GROUP": [
                    {
                        "id": "Q2F0ZWdvcnlFbGVtZW50OjYzNdf2MjU0OWU4OTM4N2IzMTkxN2Y0ZA==",
                        "value": "group_1"
                    },
                    {
                        "id": "Q2F0ZWdvcnlFbGVtZW50OjYzNziymRU1Nzg4YWFmODVjZTU1YjVkMg==",
                        "value": "group_2"
                    }
                ]
            }
        },
        "allowOtherAgentsView": true,
        "allowOtherUsersView": false,
        "properties": {}
    }
}r

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl https://backend-ja.alli.ai/webapi/upload_from_s3 -d '{
    "path": "s3://YOUR_S3_FILE_PATH", 
    "secretKey": "YOUR_SECRET_KEY", 
    "accessKey": “YOUR_ACCESS_KEY", 
    "bucket": "YOUR_BUCKET_NAME", 
    "hashtags": ["HASHTAG_1", "HASHTAG_2"],
    "footerTitle": "Allganize API Documentation",
    "footerUrl": "docs.allganize.ai"},
    "folder": "folder 1",
    "followFolderPermission": false,
    "agentViewer": ["viewer_email@allganize.ai"],
    "userViewer": {
      "variables": {
      "CUSTOMER_ID": ["id_1"],
      "CUSTOMER_GROUP": ["{categoryElementsId}"]
      }
    }}' \
-H "Content-Type: application/json" \ 
-H "API-KEY: YOUR_API_KEY"

Response Example

{
    "result": {
        "id": "S25vd2xlZGdlQmA23To2MGJjIsjA1YjM1Nz9iRc1YWIzYjA1ODk=",
        "fileName": "policy.docx",
        "hashtags": [
            "api1",
            "api2"
        ],
        "footer": "{\"blocks\": [{\"key\": \"oio7\", \"text\": \"— From ocr_en.png\", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [{\"offset\": 0, \"length\": 17, \"style\": \"ITALIC\"}], \"entityRanges\": [{\"offset\": 7, \"length\": 10, \"key\": 0}], \"data\": {}}], \"entityMap\": {\"0\": {\"type\": \"LINK\", \"mutability\": \"MUTABLE\", \"data\": {\"url\": \"https://download.alli.ai/download_document/UHJvamUiddDo1ZGMxYmI1qwe0ZTk0YWNmMmY5MjRlMzU=/S12vd2xlZGdlQmFzZTo2MGJijef1YjM1Nzc4NTc1YWIzYjA1ODk=\"}}}}",
        "folder": null,
        "agentEditor": [
            "agent1@allganize.io"
        ],
        "agentViewer": [],
        "userViewer": {
            "variables": {
                "CUSTOMER_ID": [
                    {
                        "id": "new_user_1",
                        "value": "new_user_1"
                    }
                ],
                "CUSTOMER_GROUP": [
                    {
                        "id": "Q2F0ZWdvcnlFbGVtZW50OjYzNdf2MjU0OWU4OTM4N2IzMTkxN2Y0ZA==",
                        "value": "group_1"
                    },
                    {
                        "id": "Q2F0ZWdvcnlFbGVtZW50OjYzNziymRU1Nzg4YWFmODVjZTU1YjVkMg==",
                        "value": "group_2"
                    }
                ]
            }
        },
        "allowOtherAgentsView": true,
        "allowOtherUsersView": false,
        "properties": {}
    }
}

Document処理ステータスの確認

GET https://backend-ja.alli.ai/webapi/check_file_status

アップロードしたドキュメントは、変換および解析などの処理を行います。このAPIを使用すれば、アップロードしたドキュメントのステータスを確認することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

Name
Type
Description

id*

string

確認するドキュメントのIDです。

次の JSON 形式で結果を取得します。

id:チェックしたドキュメントのIDです。

status: アップロードしたドキュメントの状態です。可能な値については、以下の応答例をご覧ください。

{"result": 
    {"id": "YOUR DOCUMENT ID", 
    "status": "initializing"}}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。また、DOCUMENT_IDを該当するIDに変更しなければなりません。DocumentsのResponse Exampleの項目、Documents FeedbacksのResponse Exampleの項目をご参照ください。

curl -X GET https://backend-ja.alli.ai/webapi/check_file_status \
-d '{"id": "DOCUMENT_ID"}' \
-H "API-KEY: YOUR API KEY" \
-H "Content-Type: application/json"

Response Example

{"result": 
    {"id": "S25vd2xlZGdlQmFzZTo1ZWM1YmJiZTczNmUxNmM0NDRjZDI2ZGM", 
    "status": "initializing"}}

Statusは、以下のうち一つの値を持ちます。

'initializing : preparing for the processing or waiting
'parsing': parsing for retrievers
'parsing_fail'
'completed': parsing and embedding are done

Documentの削除

POST https://backend-ja.alli.ai/webapi/delete_file

このAPIを使用すれば、アップロードしたドキュメントを削除することができます。複数のドキュメントを一括削除することもできます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

Name
Type
Description

ids*

array

削除するドキュメントIDの配列形式のリストです。

Result:削除に成功した場合はtrue、失敗した場合はfalseに表示されます。

errors:エラーメッセージが表示されます。

{
    "result": {
        "ok": BOOLEAN
    },
    "errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。また、DOCUMENT_IDを該当するIDに変更しなければなりません。DocumentsのResponse Exampleの項目、Documents FeedbacksのResponse Exampleの項目をご参照ください。

curl -d '{"ids": ["DOCUMENT_ID"]}' \
-H "API-KEY: YOUR API KEY" \
-H "Content-Type: application/json" \
https://backend-ja.alli.ai/webapi/delete_file

Response Example

{
    "result": {
        "ok": true,
    },
    "errors": null
}

Preview Documents

GET https://backend-ja.alli.ai/webapi/knowledge_base_preview

このAPIを使用すると、アップロードされたドキュメントを参照できます。

Query Parameters

Name
Type
Description

id

string

参照したいドキュメントのidを指定します。

pageNo

string

参照したいドキュメントのページを指定します。

Headers

Name
Type
Description

API-KEY*

string

APIキーは、ダッシュボードの[設定]メニューの[全般]タブにあります。

次のJSON形式で結果を取得できます。

id: リストされたドキュメントのIDです。

fileName: リストされたドキュメントのファイル名です。

hashtags: ドキュメントに追加されたハッシュタグです。

autoHashtags: ドキュメントに自動生成されたハッシュタグです。

downloadUrl: ドキュメントをダウンロードするためのURLです。

footerUrl: ドキュメントのフッターに含まれるURLです。

folder: ドキュメントデータベースのフォルダから回答が見つかった場合、ここにはフォルダの名前が返されます。

editor: ドキュメントへの編集アクセス権を持つエージェントのメールアドレスのリストです。

viewer: ドキュメントへの閲覧アクセス権を持つエージェントのメールアドレスのリストです。

{
  "result": {
    "totalPageCount": 3,
    "pageNo": 1,
    "css": null,
    "body": null,
    "highlightIndexes": [],
    "exactAnswer": null,
    "pdf": "PDF",
    "draftjs": null,
    "highlights": {
      "indexes": null,
      "pageIndexes": [],
      "__typename": "KnowledgeBasePreviewHighlights"
    },
    "knowledgeBase": {
      "id": "DOCUMENT_ID",
      "title": "DOCUMENT_TITLE",
      "__typename": "MSDocsKnowledgeBase"
    },
    "__typename": "KnowledgeBasePreview"
  },
  "errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。また、DOCUMENT_IDを該当するIDに変更しなければなりません。DocumentsのResponse Exampleの項目、Documents FeedbacksのResponse Exampleの項目をご参照ください。

curl -d '{"id": "DOCUMENT_ID", "pageNo": 1}' \
-H "API-KEY: YOUR_API_KEY" \
-H "Content-Type: application/json" \
https://backend-ja.alli.ai/webapi/knowledge_base_preview

Response Example

エラーが発生した場合(存在しないページ番号など)、"result"内の"pdf"はnullとなりますので、ご注意ください。

{
  "result": {
    "totalPageCount": 3,
    "pageNo": 1,
    "css": null,
    "body": null,
    "highlightIndexes": [],
    "exactAnswer": null,
    "pdf": "PDF",
    "draftjs": null,
    "highlights": {
      "indexes": null,
      "pageIndexes": [],
      "__typename": "KnowledgeBasePreviewHighlights"
    },
    "knowledgeBase": {
      "id": "DOCUMENT_ID",
      "title": "DOCUMENT_TITLE",
      "__typename": "MSDocsKnowledgeBase"
    },
    "__typename": "KnowledgeBasePreview"
  },
  "errors": null
}

List Documents

GET https://backend-ja.alli.ai/webapi/knowledge_bases

このAPIを使用すると、アップロードされたドキュメントを一覧表示できます。

Query Parameters

Name
Type
Description

status

boolean

リストをフィルタリングするためのドキュメントのオン/オフステータス。

searchTerm

string

クエリを検索してリストをフィルタリングします。

hashtags

array

リストをフィルタリングするためのハッシュタグ情報。

order

string

リストの表示タイプ。 可能な表示タイプについては、以下のリクエスト例をご覧ください。

offset

integer

オフセットを使用すると、ページの最初のアイテムのランキング番号を指定できます。

limit

integer

limitを使用すると、1ページに返されるオブジェクトの数を設定できます。 最大値は100件です。

hashtagsSearchOperator

string

ANDとORは複数のハッシュタグをマッチさせるために使用する論理演算子です。デフォルトは OR です。

sortkey

string

これは、セカンダリソートキーとして使用されるドキュメントのカスタムプロパティキーです。プライマリソートはorderパラメータによって行われます。

sortDirection

string

これはセカンダリソートの順序です。値は「asc」または「desc」になります。

Headers

Name
Type
Description

API-KEY*

string

APIキーは、ダッシュボードの[設定]メニューの[全般]タブにあります。

次のJSON形式で結果を取得できます。

id: リストされたドキュメントのIDです。

fileName: リストされたドキュメントのファイル名です。

hashtags: ドキュメントに追加されたハッシュタグです。

autoHashtags: ドキュメントに自動生成されたハッシュタグです。

downloadUrl: ドキュメントのダウンロードURLです。

footerUrl: ドキュメントのフッターに含まれるURLです。

folder: ドキュメントデータベースのフォルダから回答が見つかった場合、ここにフォルダ名が返されます。

editor: ドキュメントに編集者権限を持つエージェントのメールアドレスのリストです。

viewer: ドキュメントに閲覧者権限を持つエージェントのメールアドレスのリストです。

count:条件に該当するドキュメントの総数です。

{
  "result": {
    "items": [
      {
        "id": "DOCUMENT_ID",
        "fileName": "FILENAME",
        "hashtag": ["HASHTAG_1", "HASHTAG_2"],
        "autoHashtag": ["AUTOHASHTAG_1"],
        "folder": "folder 2", 
        "editor": ["email_1@allganize.ai", "email_2@allganize.ai"], 
        "viewer": ["email_3@allganize.ai"]
      }
    ]
    "count": 1
  },
  "errors": null
}

Request Example

YOUR API KEYを自身のプロジェクトのAPIキーに変更する必要があります。APIキーの取得をご参照ください。

curl -X GET -d '{"status": true, 
         "offset": 0, 
         "limit": 10, 
         "order": "FILE_NAME_ASC",
         "searchTerm": "term1 OR term2"  
         "hashtags": ["policy", "insurance"],
         "hashtagsSearchOperator": "OR"}' \
-H 'API-KEY: YOUR_API_KEY' \
https://backend-ja.alli.ai/webapi/knowledge_bases

次のいずれかの値をorderパラメーターに使用できます。

Value

Description

SCORE

スコアによる降順でソートします。searchTermの値が存在する場合、これがデフォルトの値です。

FILE_NAME_ASC

ファイル名(昇順)

FILE_NAME_DESC

ファイル名(降順)

TYPE_ASC

ファイルタイプ(昇順)

TYPE_DESC

ファイルタイプ(降順)

STATUS_ASC

オン/オフステータス(昇順)

STATUS_DESC

オン/オフステータス(降順)

CREATED_AT_ASC

アップロード日時(昇順)

CREATED_AT_DESC

アップロード日時(降順)

Response Example

{
  "result": {
    "items": [
      {
        "id": "S23wd2xlZGdlQmRzZTo1ZmFmMzYwZ3IyYjliMTI2OTAyMWVmMDQ=",
        "fileName": "policy1.docx",
        "hashtags": ["policy"],
        "score": 1.0,
        "downloadUrl": "https://download.alli.ai/download_document/UHJvamVjdDo1YzZiYjYyNDQxNmFmYzAwMDgyMTQwNDU=/S23wd2xlZGdlQmRzZTo1ZmFmMzYwZ3IyYjliMTI2OTAyMWVmMDQ=",
        "footerUrl": "https://download.alli.ai/download_document/UHJvamVjdDo1YzZiYjYyNDQxNmFmYzAwMDgyMTQwNDU=/S23wd2xlZGdlQmRzZTo1ZmFmMzYwZ3IyYjliMTI2OTAyMWVmMDQ=",
        "folder": "folder 2", 
        "editor": ["email_1@allganize.ai", "email_2@allganize.ai"], 
        "viewer": ["email_3@allganize.ai"]
      },
      {
        "id": "S75vd2elZGdlQmFzZTo1ZmFlMjdhYmMx22E3MWM1MzA0NDI3ZWQ=",
        "fileName": "insurance_policy.pdf",
        "hashtags": ["policy", "insurance"],
        "score": 0.89,
        "downloadUrl": "https://download.alli.ai/download_document/UHJvamVjdDo1YzZiYjYyNDQxNmFmYzAwMDgyMTQwNDU=/S75vd2elZGdlQmFzZTo1ZmFlMjdhYmMx22E3MWM1MzA0NDI3ZWQ=",
        "footerUrl": "www.example.com",
        "folder": "folder 2", 
        "editor": ["email_1@allganize.ai", "email_2@allganize.ai"], 
        "viewer": ["email_3@allganize.ai"]
      }
    ]
    "count": 450
  },
  "errors": null
}

GET https://backend-ja.alli.ai/webapi/search_document_by_title

このAPIを使用すると、タイトルに基づいてナレッジベースを検索することができます。この検索は、キーワードではなくトレーニングされたベクトルによって行われます。ナレッジベースの「ドキュメント」メニューでモデルをトレーニングしていることを確認してください。

Query Parameters

Name
Type
Description

hashtags

array

リストをフィルタリングするためのハッシュタグです。これらのハッシュタグを持つドキュメントのみが検索対象となります。複数のハッシュタグをカンマで区切って追加することができます。

hashtagsOperator

string

andまたはorです。andの場合、複数のハッシュタグのフィルタはANDロジックで動作します。orの場合、ORロジックが適用されます。

excludingHashtags

array

リストをフィルタリングするためのハッシュタグです。これらのハッシュタグを持たないドキュメントのみが検索対象となります。複数のハッシュタグをカンマで区切って追加することができます。

excludingHashtagsOperator

string

andまたはorです。andの場合、複数のハッシュタグを指定した'excludingHashtags'フィルターはANDロジックで動作します。orの場合はORロジックが適用されます。

offset

integer

オフセットを使用すると、ページの最初のアイテムのランキング番号を指定できます。

limit

integer

limitを使用すると、1ページに返されるオブジェクトの数を設定できます。 最大値は100件です。

query*

string

検索クエリ

sortkey

string

これは、セカンダリソートキーとして使用されるドキュメントのカスタムプロパティキーです。プライマリソートはorderパラメータによって行われます。

sortDirection

string

これはセカンダリソートの順序です。値は「asc」または「desc」になります。

order

string

List Documents APIの順序についてご確認ください。デフォルトでは、スコアに基づいて降順で表示されます。

useVector

boolean

true / falseまたは省略することができます。デフォルトは省略です。 trueの場合、ドキュメントタイトルの訓練済みベクトルのみを使用して結果を返します。 falseの場合、キーワードベースの検索のみを使用して結果を返します。 このパラメータを省略した場合、結果はベクトルとキーワード検索の組み合わせとなります。

Headers

Name
Type
Description

API-KEY*

string

APIキーは、ダッシュボードの[設定]メニューの[全般]タブにあります。

次のJSON形式で結果を取得できます。

id: ドキュメントのIDです。

fileName: ドキュメントのファイル名です。

hashtags: ドキュメントに追加されたハッシュタグです。

score: 検索結果の信頼度スコアです。

folder: ドキュメントデータベースのフォルダー内から回答が見つかった場合、ここにフォルダー名が返されます。

editor: ドキュメントに編集アクセス権限を持つエージェントのメールアドレスのリストです。

viewer: ドキュメントに閲覧アクセス権限を持つエージェントのメールアドレスのリストです。

{
  "result": [
    {
      "id": "DOCUMENT_ID",
      "fileName": "FILE_NAME.docx",
      "hashtags": ["hashtag1", "hashtag2"],
      "score": 0.87,
      "folder": "folder 2", 
      "editor": ["email_1@allganize.ai", "email_2@allganize.ai"], 
      "viewer": ["email_3@allganize.ai"]
    }
  ]
}

Request Example

YOUR API KEYを自身のプロジェクトのAPIキーに変更する必要があります。APIキーの取得をご参照ください。

curl -X GET 'https://backend-ja.alli.ai/webapi/search_document_by_title' \
-H 'API-KEY: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data-urlencode “query=cpu specs” \
--data-urlencode “hashtags=company,alli”

Response Example

{
  "result": [
    {
      "id": "616a0cd34e0176b2fbed54bc",
      "fileName": "SPECIFICATIONS.docx",
      "hashtags": ["specs", "Alli"],
      "score": 0.87,
      "folder": "folder 2", 
      "editor": ["email_1@allganize.ai", "email_2@allganize.ai"], 
      "viewer": ["email_3@allganize.ai"]
    }
  ]
}

Rename Documents (Knowledge Base)

POST https://backend-ja.alli.ai/webapi/update_kb_name

この API を使用することで、アップロードされたドキュメントの名前を更新できます。

また、DOCUMENT_IDを該当するIDに変更しなければなりません。DocumentsのResponse Exampleの項目、Documents FeedbacksのResponse Exampleの項目をご参照ください。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

Name
Type
Description

filename*

string

ドキュメントの新しい名前

id*

string

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

次のJSON形式で結果を取得できます。

id: ファイル名が変更されたドキュメントのIDです。

filename: ドキュメントの新しいファイル名です。

{
    "result": {
        "id": "DOCUMENT_ID",
        "filename": "FILENAME"
    }
}

Request Example

YOUR API KEYを自身のプロジェクトのAPIキーに変更する必要があります。APIキーの取得をご参照ください。

curl -L -X POST 'https://backend-ja.alli.ai/webapi/update_kb_name' \
-H 'Content-Type: application/json' \
-H 'API-KEY: YOUR_API_KEY' \
--data-raw '{"id": "DOCUMENT_ID", "filename": "FILENAME"}'

Response Example

{
    "result": {
        "id": "DOCUMENT_ID",
        "filename": "policy.docx"
    }
}

Update Documents

POST https://backend-ja.alli.ai/webapi/update_document

このAPIを利用することで、ドキュメントのハッシュタグ、フッタータイトル、およびフッタータイトルのリンクを更新することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

Name
Type
Description

footerTitle

string

アップロードされたファイルからの検索結果のフッターとして、回答のソースを入力できます。フッターは、検索結果の [From] の横に表示されます。

footerUrl

string

FooterTitleにリンクとして任意のURLを入れることができます。

folder

string

ドキュメントのアップロード先のフォルダを割り当てることができます。

followFolderPermission

boolean

trueの場合(デフォルト)、ファイルへのアクセス権限はフォルダの権限設定に従います。falseの場合、ファイルは以下の2つのパラメータで定義された独自の権限設定を使用します。以下のパラメータが指定されていない場合、すべてのエージェントに対してファイルへの権限が与えられます。

agentsEditor

array

ファイルに編集者権限を持つエージェントを指定します。

agentsViewer

array

ファイルに閲覧者権限を持つエージェントを指定します。

userViewer

object

ファイルを閲覧する権限を持つユーザーを登録してください。customer_id、customer_groupを使用して登録することができます。customer_idはown-user-idと同じであり、customer_groupのid(categoryElementsId)はCUSTOMER GROUP inquiry APIを通じて取得できます。

allowOtherAgentsView

boolean

閲覧者/編集者に含まれていないエージェントも閲覧することができます。

allowOtherUsersView

boolean

閲覧者/編集者に含まれていないユーザーも閲覧することができます。

hashtags

array

ドキュメントに追加したいハッシュタグの文字列のリストです。

id*

string

更新したいドキュメントのIDです。

properties

json

このドキュメントのカスタムプロパティのキーと値のペアです。これらのプロパティは、「ドキュメントから検索」のソート基準として使用することができます。

次の JSON 形式で結果を取得します。

id: ハッシュタグが対応するドキュメントのIDです。

hashtags: 更新後のドキュメントに添付されたハッシュタグです。

footer: アップロードされたドキュメントに追加されたフッター(ソース)情報です。デフォルトの情報またはfooterTitleおよびfooterUrlパラメータで指定された情報が含まれます。

folder: ドキュメントデータベースのフォルダから回答が見つかった場合、ここにフォルダ名が返されます。

editor: ドキュメントに編集アクセス権を持つエージェントのメールアドレスのリストです。

viewer: ドキュメントに閲覧アクセス権を持つエージェントのメールアドレスのリストです。

{
    "result": {
        "knowledgeBase": {
            "id": "S25vd1iuRGdlQmFzZTo2MGJhYjQzERHjYTNiNWE0PLD3MDk1YTg=",
            "hashtags": [
                "hashtag1",
                "hashtag2"
            ],
            "footer": "{\"blocks\": [{\"key\": \"qn8p\", \"text\": \"— From Allganize API documentation\", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [], \"entityRanges\": [{\"offset\": 7, \"length\": 27, \"key\": 0}], \"data\": {}}], \"entityMap\": {\"0\": {\"type\": \"LINK\", \"mutability\": \"MUTABLE\", \"data\": {\"url\": \"docs.allganize.ai\"}}}}",
            "folder": "folder 2", 
            "agentsEditor": ["admin_1@allganize.ai", "admin_2@allganize.ai"], 
            "agentsViewer": ["viewer_email@allganize.ai"],
            "userViewer": {"variables": {"CUSTOMER_GROUP": [{"id": "Q2F0ZwdvcnlFbGVtZW50OjYzNzcyZDY1NWM5ZDIxMTU5NDMwZDY1OA==", "value": "group_name"}], "CUSTOMER_ID": [{"id": "id_1", "value": "id_1"}]}},
            "allowOtherAgentsView": true,
            "allowOtherUsersView": true
        }
    },
    "errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。また、DOCUMENT_IDを該当するIDに変更しなければなりません。DocumentsのResponse Exampleの項目、Documents FeedbacksのResponse Exampleの項目をご参照ください。

curl -L -X POST 'https://backend-ja.alli.ai/webapi/update_document' \
-H 'Content-Type: application/json' \
-H 'API-KEY: YOUR_API_KEY' \
-d '{
    "hashtags": ["hashtag1", "hashtag2"],
    "id": "DOCUMENT_ID",
    "footerTitle": "Allganize API documentation",
    "footerUrl": "docs.allganize.ai",
    "folder": "folder 2",
    "followFolderPermission": false,
    "agentViewer": ["viewer_email@allganize.ai"],
    "userViewer": {
      "variables": {
      "CUSTOMER_ID": ["id_1"],
      "CUSTOMER_GROUP": ["{categoryElementsId}"]
        }
    },
    "allowOtherUsersView": true
    }'

Response Example

{
    "result": {
        "knowledgeBase": {
            "id": "S25vd1iuRGdlQmFzZTo2MGJhYjQzERHjYTNiNWE0PLD3MDk1YTg=",
            "hashtags": [
                "hashtag1",
                "hashtag2"
            ],
            "footer": "{\"blocks\": [{\"key\": \"qn8p\", \"text\": \"— From Allganize API documentation\", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [], \"entityRanges\": [{\"offset\": 7, \"length\": 27, \"key\": 0}], \"data\": {}}], \"entityMap\": {\"0\": {\"type\": \"LINK\", \"mutability\": \"MUTABLE\", \"data\": {\"url\": \"docs.allganize.ai\"}}}}",
            "folder": "folder 2", 
            "agentsEditor": ["admin_1@allganize.ai", "admin_2@allganize.ai"], 
            "agentsViewer": ["viewer_email@allganize.ai"],
            "userViewer": {"variables": {"CUSTOMER_GROUP": [{"id": "Q2F0ZwdvcnlFbGVtZW50OjYzNzcyZDY1NWM5ZDIxMTU5NDMwZDY1OA==", "value": "group_name"}], "CUSTOMER_ID": [{"id": "id_1", "value": "id_1"}]}},
            "allowOtherAgentsView": true,
            "allowOtherUsersView": true
        }
    },
    "errors": null
}

Create/Read/Update/Delete Custom Properties

Create Custom Properties

ドキュメントにカスタムプロパティを作成する場合は、propertiesパラメータを使用してください。

curl -L -X POST 'https://backend-ja.alli.ai/webapi/update_document' \
-H 'Content-Type: application/json' \
-H 'API-KEY: YOUR_API_KEY' \
-d '{
    "id": "DOCUMENT_ID",
    "properties": {"testVar": "testValue", "testNumVar": 1234}
    }'

その後、以下のようなレスポンスを受け取ります。

{
    "result": {
        "knowledgeBase": {
            "id": "YOUR_DOCUMENT_ID",
            "properties": {
                "testKey": "testValue",
                "testNumVar": 1234
            },
        }
    },
    "errors": null
}

Get Custom Properties

特定のドキュメントのカスタムプロパティのリストを取得したい場合は、「Get Single Document」APIを使用することができます。

Update Customer Properties

ドキュメントのカスタムプロパティを更新したい場合は、単純にプロパティの値を更新してください。既存のキーを送信しない場合、そのプロパティは削除されますのでご注意ください。

curl -X POST 'https://backend-ja.alli.ai/webapi/update_document' \
-H 'Content-Type: application/json' \
-H 'API-KEY: YOUR_API_KEY' \
-d '{
    "id": "DOCUMENT_ID",
    "properties": {"testVar": "newTestValue"}
    }'

その後、以下のようなレスポンスを受け取ります。

{
    "result": {
        "knowledgeBase": {
            "id": "YOUR_DOCUMENT_ID",
            "properties": {
                "testKey": "newTestValue"
            },
        }
    },
    "errors": null
}

Delete Custom Properties

ドキュメントのカスタムプロパティをすべてまたは一部削除したい場合は、特定のプロパティに null 値を渡すことができます。

{
    "result": {
        "knowledgeBase": {
            "id": "YOUR_DOCUMENT_ID",
            "properties": null,
        }
    },
    "errors": null
}

その後、以下のようなレスポンスを受け取ります。

{
    "result": {
        "knowledgeBase": {
            "id": "YOUR_DOCUMENT_ID",
            "properties": {},
        }
    },
    "errors": null
}

Knowledge Base Toggle Status

POST https://backend-ja.alli.ai/webapi/toggle_documents

この API を使用することで、多くのドキュメントのステータスを一度に変更できます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

次の JSON 形式で結果を取得します。

KnowledgeBases : ステータスが切り替えられたドキュメントのリスト

id: ナレッジベースのID

status: ナレッジベースの新しいステータス (ブール値) true はステータスがオンになっていることを意味します。

{
  "result": {
    "knowledgeBases": [
      {
        "id": "YOUR_FIRST_DOCUMENT_ID",
        "status": true or false
      },
      {
        "id": "YOUR_SECOND_DOCUMENT_ID",
        "status": true or false
      }
    ]
  },
  "errors": null
}

Request Example

YOUR API KEYを自身のプロジェクトのAPIキーに変更する必要があります。APIキーの取得をご参照ください。

curl -X 'POST' 
-H 'API-KEY: YOUR_API_KEY' 
-d '{ 
"ids":[YOUR_FIRST_DOCUMENT_ID, 
YOUR_SECOND_DOCUMENT_ID, ETC],
"use": true
}' 
https://backend-ja.alli.ai/webapi/toggle_documents

Response Example

{
  "result": {
    "knowledgeBases": [
      {
        "id": "YOUR_FIRST_DOCUMENT_ID",
        "status": true
      },
      {
        "id": "YOUR_SECOND_DOCUMENT_ID",
        "status": false
      }
    ]
  },
  "errors": null
}

Knowledge Base Auto Hashtag (Classification)

POST https://backend-ja.alli.ai/webapi/kb_auto_hashtag

このAPIを使用すると、ドキュメントの分類キーワードを含むハッシュタグリストを取得できます。

Headers

Name
Type
Description

API-KEY*

string

APIキーは、ダッシュボードの[設定]メニューの[全般]タブにあります。

Request Body

Name
Type
Description

ids*

array

自動ハッシュタグを取得するドキュメントID

次のJSON形式で結果が取得できます。

updated:

id : ハッシュタグに対応するドキュメントのID。

autoHashtags: Documentに対して自動生成されたハッシュタグのリストを含むJSONオブジェクトの配列。

state: エージェントが自動生成されたハッシュタグを確認したかどうかによる、ハッシュタグの状態。 以下のいずれか:"SUGGESTED", "APPROVED", "DECLINED".

bestConfidence:この自動生成ハッシュタグの信頼度を0から1の数値で表す。

autohashtag:

id: ハッシュタグのID

hashtag: ハッシュタグの文字列値(ダッシュボードに表示される)

{
    "result": {
        "updated": [
            {
                "id": "DOCUMENT_ID",
                "autoHashtags": [
                    {
                        "state": "STATE",
                        "bestConfidence": NUMBER,
                        "autoHashtag": {
                            "id": "KNOWLEDGE_BASE_AUTO_HASHTAG_ID",
                            "hashtag": "HASHTAG_VALUE"
                        }
                    }
                ]
            }
        ],
        "errors": null
    },
    "errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。また、DOCUMENT_IDを該当するIDに変更しなければなりません。DocumentsのResponse Exampleの項目、Documents FeedbacksのResponse Exampleの項目をご参照ください。

curl -X GET -d '{"ids": ["S25vd2xlZGdlQmFzZTo1ZmY3Y2U0YzZiNzk4MjM0YTAwNGRkNGE="]}' \
-H 'API-KEY: YOUR_API_KEY' \
https://backend-ja.alli.ai/webapi/knowledge_base_auto_hashtag

Response Example

{
    "result": {
        "updated": [
            {
                "id": "S25vd2xlZGdlQmFzZTo1ZmY3Y2U0YzZiNzk4MjM0YTAwNGRkNGE=",
                "autoHashtags": [
                    {
                        "state": "SUGGESTED",
                        "bestConfidence": 0.9866862297058105,
                        "autoHashtag": {
                            "id": "QXV0b0hhc2h0YWc6NWZmNjk2ZGQyYTZmMjBhZjUxMTY3ZTU1",
                            "hashtag": "CLASSIFICATION_RESULT"
                        }
                    },
                    {
                        "state": "SUGGESTED",
                        "bestConfidence": 0.9445914626121521,
                        "autoHashtag": {
                            "id": "QXV0b0hhc2h0YWc6NWZmNjk2ZWYyYTZmMjBhZjUxMTY3ZWQ1",
                            "hashtag": "CLASSIFICATION_RESULT"
                        }
                    }
                ]
            }
        ],
        "errors": null
    },
    "errors": null
}

Knowledge Base Auto Hashtag Feedback (Classification)

POST https://backend-ja.alli.ai/webapi/kb_auto_hashtag_feedback

このAPIを使用すると、ドキュメントの分類キーワードを含むハッシュタグリストを取得できます。

Headers

Name
Type
Description

API-KEY*

string

APIキーは、ダッシュボードの[設定]メニューの[全般]タブにあります。

Request Body

Name
Type
Description

autoHashtagFeedbacks*

array

ハッシュタグのIDと状態を含むJSONオブジェクトのリストです。 'state'は次のいずれかの値を取ります: 'accepted'(承認済み)、'declined'(拒否済み)、'suggested'(提案済み)

次のJSON形式で結果が取得できます。

result: JSONオブジェクトの配列で、それぞれが自動ハッシュタグに対応します。

id: ハッシュタグのID

state: エージェントからのハッシュタグのフィードバック。"suggested"(提案済み)または"declined"(拒否済み)のいずれかになります。

{
    "result": [
        {
            "id": "KNOWLEDGE_BASE_AUTO_HASHTAG_ID",
            "state": "STATE"
        },
        {
            "id": "KNOWLEDGE_BASE_AUTO_HASHTAG_ID_2",
            "state": "STATE"
        }
    ]
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。ハッシュタグIDに応じて置き換えてください。ハッシュタグIDの取得については、「ナレッジベースの自動ハッシュタグ(分類)」セクションをご覧ください。

curl -X POST -d '{
    "autoHashtagFeedbacks": [
        {"id": "HASHTAG_ID_1", "state": "approved"},
        {"id": "HASHTAG_ID_2", "state": "declined"}
    ]
}' \
-H 'API-KEY: YOUR_API_KEY' \
https://backend.alli.ai/webapi/kb_auto_hashtag_feedback

Response Example

{
    "result": [
        {
            "id": "S25vd2xlZGdlQmFzZUF1dG9IYXNodGFnOjVmZjhmZmJlYzJkNmUyNjJkOTVlZTQyYg==",
            "state": "approved"
        },
        {
            "id": "S25vd2xlZGdlQmFzZUF1dG9IYXNodGFnOjVmZjhmZTdmYzJkNmUyNjJkOTVlZTI5OQ==",
            "state": "declined"
        }
    ]
}

Select Answer

POST https://backend-ja.alli.ai /webapi/faq/select_answer

このAPIを利用することで、特定のQ&Aを顧客が選択したものとして処理することができます。

Path Parameters

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

次のJSON形式で結果が得られます。下記は成功の場合です。

{"result": "Success"}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。 また、id(FAQ ID)も変更しなければなりません。 FAQ IDの取得については、Search from Q&Aを確認してください。

curl -X POST -d '{
    "id": "FAQ_ID",
    "hashId": "Hash ID from Q&A search result"
}' \
-H 'API-KEY: YOUR_API_KEY' \
https://backend-ja.alli.ai/webapi/faq/select_answer

Response Example

{
    "result": "Success"
}

Agent Management

POST https://backend-ja.alli.ai/webapi/agent_management

このAPIを使用するとプロジェクトからエージェントを作成および削除することが可能です。 登録されるエージェントの権限は「エージェント」権限となります。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

id: 削除/作成されたエージェントのIDです。

status: 「登録」か「削除」かの結果を示します。

{
    "result": {
        "id" : "QWdlbnQ6NWZkMmFjMzIwODQ4MzY1ZDI4NWFjMGUw",
        "status": "deleted" 
    },
    "errors": null
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl https://backend-ja.alli.ai/webapi/agent \
-d '{"email": "1234@gmail.com",
       "deleteFlag": false,
       "password": "Password_4321"}'
       "locale": "ja"}' \
-H "Content-Type: application/json" \
-H "API-KEY: YOUR_API_KEY"

Response Example

{
    "result": {
        "id" : "QWdlbnQ6NWZkMmFjMzIwODQ4MzY1ZDI4NWFjMGUw",
        "status": "created" 
    },
    "errors": null
}

Get All hashtags

GET https://backend-ja.alli.ai/webapi/hashtags

このAPIを利用するとFAQとMRCの両方からすべてのハッシュタグを取得することが可能です。

Headers

使用回数とともに各ハッシュタグを返します。

{
  "result": {
    "sample_tag1": 2,
   "sample_tag2": 1,
  }
}

Request Example

YOUR API KEYをプロジェクトのAPIキーに変更しなければなりません。APIキーの取得の項目をご参照ください。

curl -X GET \
-H "API-KEY: YOUR API KEY" \
https://backend-ja.alli.ai/webapi/hashtags

Response Example

{
  "result": {
    "sample_tag1": 2,
   "sample_tag2": 1,
  }
}

Q&A Query History

GET https://backend-ja.alli.ai/webapi/faq_histories

REST APIとAlliダッシュボードの両方を介して行われた過去のQ&A検索を返します。

Query Parameters

Name
Type
Description

limit

integer

表示する結果の数です。 (ページネーションに利用)

offset

integer

結果のリストで、結果のリストを開始するインデックスです。 (ページネーションに利用)

endDate

string

検索履歴を取得する期間の終わりの日付です。 (日付はYYYY-MM-DDの形式である必要があります)

startDate

string

検索履歴を取得する期間の始まりの日付です。 (日付はYYYY-MM-DDの形式である必要があります)

order

string

検索結果の並び順を指定できます。 DESC(最新のクエリが最初に来ることを意味する)またはASC(最も早いクエリが最初に来ることを意味する)のいずれかで並び順を指定できます。

searchTerm

string

検索語句による結果の絞り込みを行うことができま

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

エージェントのメール アドレスを指定することで、この API 呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの [設定] > [エージェント] にて確認してください。

OWN-USER-ID

string

ユーザーの ID を指定することで、この API 呼び出しを行うユーザーを特定できます。ここで指定するIDは、ダッシュボードの [顧客リスト]>[CUSTOMER_ID] もしくは[会話履歴]>[対話情報]にて確認できます。

検索結果についてはそれぞれ下記の情報を保有しています。

agent: クエリを実行したエージェントのidです。

question: クエリで実際にされた質問内容です。

answers: クエリに対して提供されるすべての回答です。各回答には、参照されたQ&Aのid、confidence,、effective confidenceが含まれます。

count:表示したクエリの数が返されます。

{
    "result": {
        "histories": [
            {
                "agent": {
                    "id": "QWdlbnQ6NjA0NmMyNWJmNTFjMmVlYjc4Mjg3Zjcy"
                },
                "question": "What is life?",
                "answers": [
                    {
                        "faq": {
                            "id": "RkFROjYwNDZjMmUxM2MzYmQ5MjVmMzgxMGNkOQ=="
                        },
                        "effectiveConfidence": 0.9999999999999927,
                        "confidence": 0.9999999999999927
                    }
                ]
            }
        ],
        "count": 1
    },
    "errors": null
}

Request Example

curl -X GET \ 
-d { "startDate":"2021-02-19","endDate":"2021-02-23", \
"order": "DESC","searchTerm":"life", "limit": 1, "offset": 0 } \
-H 'API-KEY: YOUR_API_KEY' \
https://backend-ja.alli.ai/webapi/faq_histories

Response Example

{
    "result": {
        "histories": [
            {
                "agent": {
                    "id": "QWdlbnQ6NjA0NmMyNWJmNTFjMmVlYjc4Mjg3Zjcy"
                },
                "question": "What is life?",
                "answers": [
                    {
                        "faq": {
                            "id": "RkFROjYwNDZjMmUxM2MzYmQ5MjVmMzgxMGNkOQ=="
                        },
                        "effectiveConfidence": 0.9999999999999927,
                        "confidence": 0.9999999999999927
                    }
                ]
            }
        ],
        "count": 1
    },
    "errors": null
}

Documents Query History

GET https://backend-ja.alli.ai/webapi/mrc_histories

REST APIとAlliダッシュボードの両方を介して行われた過去のドキュメント検索を返します。

Query Parameters

Name
Type
Description

limit

integer

表示する結果の数です。 (ページネーションに利用)

offset

integer

結果のリストで、結果のリストを開始するインデックスです。 (ページネーションに利用)

endDate

string

検索履歴を取得する期間の終わりの日付です。 (日付はYYYY-MM-DDの形式である必要があります)

startDate

string

検索履歴を取得する期間の始まりの日付です。 (日付はYYYY-MM-DDの形式である必要があります)

order

string

検索結果の並び順を指定できます。 DESC(最新のクエリが最初に来ることを意味する)またはASC(最も早いクエリが最初に来ることを意味する)のいずれかで並び順を指定できます。

searchTerm

string

検索語句による結果の絞り込みを行うことができま

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

AGENT-EMAIL

string

エージェントのメール アドレスを指定することで、この API 呼び出しを行うエージェントを特定できます。ここで指定するEメールアドレスは、ダッシュボードの [設定] > [エージェント] にて確認してください。

OWN-USER-ID

string

ユーザーの ID を指定することで、この API 呼び出しを行うユーザーを特定できます。ここで指定するIDは、ダッシュボードの [顧客リスト]>[CUSTOMER_ID] もしくは[会話履歴]>[対話情報]にて確認できます。

検索結果についてはそれぞれ下記の情報を保有しています。

agent: クエリを実行したエージェントのidです。

question: クエリで実際にされた質問内容です。

answers: クエリに対して提供されるすべての回答です。各回答には、その回答の参照先として使用されるknowledgeBase(filenameとid)、実際のanswer、answerFormat、ナレッジベースに関連付けられたhashtags、および回答に対してのfeedbackAvailableが含まれます。

カウントフィールドに表示したクエリの数が返されます。

{
    "result": {
        "histories": [
            {
                "agent": {
                    "id": "QWdlbnQ6NWZiNzc5MGIwZjE3Zjc5ZmNiNzVlYzFh"
                },
                "question": "program memory of c004",
                "answers": [
                    {
                        "knowledgeBase": {
                            "id": "S25vd2xlZGdlQmFzZTo2MDUyODM0ODFiYzgxNDcwZTEzNGRjNDQ=",
                            "fileName": "specification_en.pdf"
                        },
                        "answer": "{\"blocks\": [{\"key\": \"kn13\", \"type\": \"unstyled\", \"text\": \"Type capacity program memory program memory - C004, B04KR: 80KB\", \"depth\": 0, \"inlineStyleRanges\": [], \"entityRanges\": [], \"data\": {}}, {\"key\": \"2vjf\", \"text\": \" \", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [], \"entityRanges\": [], \"data\": {}}, {\"key\": \"45cb\", \"text\": \"— From specification_en.pdf\", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [{\"offset\": 0, \"length\": 27, \"style\": \"ITALIC\"}], \"entityRanges\": [{\"offset\": 7, \"length\": 20, \"key\": 0}], \"data\": {}}], \"entityMap\": {\"0\": {\"type\": \"LINK\", \"mutability\": \"MUTABLE\", \"data\": {\"url\": \"https://staging-download.alli.ai/download_document/UHJvamVjdDo1ZmI3NzkwYjBmMTdmNzlmY2I3NWVjMWM=/S25vd2xlZGdlQmFzZTo2MDUyODM0ODFiYzgxNDcwZTEzNGRjNDQ=\"}}}}",
                        "answerHash": "6648c76e9be27864557f84ab7822cde8",
                        "answerFormat": "DRAFTJS",
                        "hashtags": [],
                        "feedbackAvailable": true,
                        "columnFilterValues": []
                    },
                    ...
                    {
                        "knowledgeBase": {
                            "id": "S25vd2xlZGdlQmFzZTo2MDUyODM0ODFiYzgxNDcwZTEzNGRjNDQ=",
                            "fileName": "specification_en.pdf"
                        },
                        "answer": "{\"blocks\": [{\"key\": \"87us\", \"type\": \"unstyled\", \"text\": \"Type capacity reload memory reload memory - C004, B04KR: 2048KB\", \"depth\": 0, \"inlineStyleRanges\": [], \"entityRanges\": [], \"data\": {}}, {\"key\": \"p0wr\", \"text\": \" \", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [], \"entityRanges\": [], \"data\": {}}, {\"key\": \"qpau\", \"text\": \"— From specification_en.pdf\", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [{\"offset\": 0, \"length\": 27, \"style\": \"ITALIC\"}], \"entityRanges\": [{\"offset\": 7, \"length\": 20, \"key\": 0}], \"data\": {}}], \"entityMap\": {\"0\": {\"type\": \"LINK\", \"mutability\": \"MUTABLE\", \"data\": {\"url\": \"https://staging-download.alli.ai/download_document/UHJvamVjdDo1ZmI3NzkwYjBmMTdmNzlmY2I3NWVjMWM=/S25vd2xlZGdlQmFzZTo2MDUyODM0ODFiYzgxNDcwZTEzNGRjNDQ=\"}}}}",
                        "answerHash": "9537b6560701930d079f39ced8be1b3e",
                        "answerFormat": "DRAFTJS",
                        "hashtags": [],
                        "feedbackAvailable": true,
                        "columnFilterValues": []
                    }
                ]
            }
        ],
        "count": 1
    },
    "errors": null
}

Request Example

curl -X GET \ 
-d { "startDate":"2021-02-19","endDate":"2021-02-23", \
"order": "DESC","searchTerm":"life", "limit": 1, "offset": 0 } \
-H 'API-KEY: YOUR_API_KEY' \
https://backend-ja.alli.ai/webapi/mrc_histories

Response Example

{
    "result": {
        "histories": [
            {
                "agent": {
                    "id": "QWdlbnQ6NWZiNzc5MGIwZjE3Zjc5ZmNiNzVlYzFh"
                },
                "question": "program memory of c004",
                "answers": [
                    {
                        "knowledgeBase": {
                            "id": "S25vd2xlZGdlQmFzZTo2MDUyODM0ODFiYzgxNDcwZTEzNGRjNDQ=",
                            "fileName": "specification_en.pdf"
                        },
                        "answer": "{\"blocks\": [{\"key\": \"kn13\", \"type\": \"unstyled\", \"text\": \"Type capacity program memory program memory - C004, B04KR: 80KB\", \"depth\": 0, \"inlineStyleRanges\": [], \"entityRanges\": [], \"data\": {}}, {\"key\": \"2vjf\", \"text\": \" \", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [], \"entityRanges\": [], \"data\": {}}, {\"key\": \"45cb\", \"text\": \"— From specification_en.pdf\", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [{\"offset\": 0, \"length\": 27, \"style\": \"ITALIC\"}], \"entityRanges\": [{\"offset\": 7, \"length\": 20, \"key\": 0}], \"data\": {}}], \"entityMap\": {\"0\": {\"type\": \"LINK\", \"mutability\": \"MUTABLE\", \"data\": {\"url\": \"https://staging-download.alli.ai/download_document/UHJvamVjdDo1ZmI3NzkwYjBmMTdmNzlmY2I3NWVjMWM=/S25vd2xlZGdlQmFzZTo2MDUyODM0ODFiYzgxNDcwZTEzNGRjNDQ=\"}}}}",
                        "answerHash": "6648c76e9be27864557f84ab7822cde8",
                        "answerFormat": "DRAFTJS",
                        "hashtags": [],
                        "feedbackAvailable": true,
                        "columnFilterValues": []
                    },
                    ...
                    {
                        "knowledgeBase": {
                            "id": "S25vd2xlZGdlQmFzZTo2MDUyODM0ODFiYzgxNDcwZTEzNGRjNDQ=",
                            "fileName": "specification_en.pdf"
                        },
                        "answer": "{\"blocks\": [{\"key\": \"87us\", \"type\": \"unstyled\", \"text\": \"Type capacity reload memory reload memory - C004, B04KR: 2048KB\", \"depth\": 0, \"inlineStyleRanges\": [], \"entityRanges\": [], \"data\": {}}, {\"key\": \"p0wr\", \"text\": \" \", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [], \"entityRanges\": [], \"data\": {}}, {\"key\": \"qpau\", \"text\": \"— From specification_en.pdf\", \"type\": \"unstyled\", \"depth\": 0, \"inlineStyleRanges\": [{\"offset\": 0, \"length\": 27, \"style\": \"ITALIC\"}], \"entityRanges\": [{\"offset\": 7, \"length\": 20, \"key\": 0}], \"data\": {}}], \"entityMap\": {\"0\": {\"type\": \"LINK\", \"mutability\": \"MUTABLE\", \"data\": {\"url\": \"https://staging-download.alli.ai/download_document/UHJvamVjdDo1ZmI3NzkwYjBmMTdmNzlmY2I3NWVjMWM=/S25vd2xlZGdlQmFzZTo2MDUyODM0ODFiYzgxNDcwZTEzNGRjNDQ=\"}}}}",
                        "answerHash": "9537b6560701930d079f39ced8be1b3e",
                        "answerFormat": "DRAFTJS",
                        "hashtags": [],
                        "feedbackAvailable": true,
                        "columnFilterValues": []
                    }
                ]
            }
        ],
        "count": 1
    },
    "errors": null
}

View User Information

GET https://backend-ja.alli.ai/webapi/users

このAPIを利用すると、ユーザーのOWN-USER-ID、CUSTOMER GROUP、およびメールアドレスが確認できます。

Query Parameters

Name
Type
Description

customar_group

string

ユーザーを検索する際にフィルタリングするためのCUSTOMER GROUPの名前です。CUSTOMER GROUPのquery APIコールを使用してこの値を取得することができます。

offset

integer

ページ上で表示される最初のアイテムの位置を決定します。デフォルトは0です。

limit

string

1ページに表示するアイテムの数を決定します。デフォルトは10で、最大値は1000です。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

下記のJSON形式で結果が得られます。

{
  "result": [
    {
      "id": "1"
      "email": "example_1@email.com",
      "customerGroup": {
        "id": "B3D0ZWdvcnlFbGVtZW50OjYzNzcyZDY1NWM5ZDIxMTU5NDMwZDY1OA==",
        "value": "IT",
      }
    },
    {
      "id": "2"
      "email": "example_2@email.com",
      "customerGroup": {
        "id": "X2F0ZWdvcnlFbGVtZW50OjYzNzcyZDY1NWM5ZDIxMTU5NDMwZDY1OC==",
        "value": "QA",
      }
    }
  ],
  "totalCount": 10
  "count": 2
}

Request Example

curl -L -X GET 'https://backend-ja.alli.ai/webapi/users' \
-H 'API-KEY: YOUR_API_KEY'

Response Example

{
  "result": [
    {
      "id": "1"
      "email": "example_1@email.com",
      "customerGroup": {
        "id": "B3D0ZWdvcnlFbGVtZW50OjYzNzcyZDY1NWM5ZDIxMTU5NDMwZDY1OA==",
        "value": "IT",
      }
    },
    {
      "id": "2"
      "email": "example_2@email.com",
      "customerGroup": {
        "id": "X2F0ZWdvcnlFbGVtZW50OjYzNzcyZDY1NWM5ZDIxMTU5NDMwZDY1OC==",
        "value": "QA",
      }
    }
  ],
  "totalCount": 10
  "count": 2
}

View Individual User Information

GET https://backend-ja.alli.ai/webapi/user/{OWN-USER-ID}

このAPIを利用すると、ユーザーのOWN-USER-ID、CUSTOMER GROUP、およびメールアドレスが確認できます。

Query Parameters

Name
Type
Description

OWN-USER-ID*

string

ユーザーのIDです。ユーザー情報を取得するAPIを使用して、すべてのユーザーのIDを取得することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

下記のJSON形式で結果が得られます。

{
  "result": {
    "id": "123"
    "email": "abc@email.com",
    "customerGroup": {
      "id": "Q2F0ZWdvcnlFbGVtZW50OjYzNzcyZDY1NWM5sXIxMTU5NDMwZDY1OA==",
      "value": "IT",
    }
  }
}

Request Example

{OWN-USER-ID}を自分のユーザーIDで置き換えてください。ユーザー情報を取得するAPIを使用して、すべてのユーザーのIDを取得することができます。

curl -L -X GET 'https://backend-ja.alli.ai/webapi/user/{OWN-USER-ID}' \
-H 'API-KEY: YOUR_API_KEY'

Response Example

{
  "result": {
    "id": "123"
    "email": "abc@email.com",
    "customerGroup": {
      "id": "Q2F0ZWdvcnlFbGVtZW50OjYzNzcyZDY1NWM5sXIxMTU5NDMwZDY1OA==",
      "value": "IT",
    }
  }
}

Update User Information

POST https://backend-ja.alli.ai/webapi/user/{OWN-USER-ID}/customer_variables/{variableName}

このAPIを利用すると、個々のユーザーのOWN-USER-ID、CUSTOMER GROUPが更新できます。

Query Parameters

Name
Type
Description

OWN-USER-ID*

string

ユーザーのIDです。ユーザー情報を取得するAPIを使用して、すべてのユーザーのIDを取得することができます。

VariableName*

String

更新したい内容です。'CUSTOMER_GROUP'または 'CUSTOMER_ID'のいずれかを入力できます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

Name
Type
Description

id*

string

変更する 'CUSTOMER_GROUP' または 'CUSTOMER_ID' の ID です。

下記のJSON形式で結果が得られます。

{
  "result": {
    "id": "123"
    "email": "sdf@sdf.ca",
    "customerGroup": {
      "id": "123",
      "value": "123",
    }
  }
}

Request Example

{variableName} と {id} を該当する値で置き換えてください。{variableName} には更新したい項目 ("CUSTOMER_GROUP" または "CUSTOMER_ID") を入力し、{id} には変更したい ID の値を入力してください。必要な ID は、ユーザー情報を取得するための API を使用して確認できます。

curl -L -X POST 'https://backend-ja.alli.ai/webapi/user/{OWN-USER-ID}/customer_variable/{variableName}' \
-H 'Content-Type: application/json' \
-H 'API-KEY: YOUR_API_KEY' \
-d '{
    "id": "{id}"
}'

Response Example

{
  "result": {
    "name": "CUSTOMER_ID",
    "type": "STRING"
    "id": "60091782",
    "value": "60091782"
  } 
}

CUSTOMER GROUP Query

GET https://backend-ja.alli.ai/webapi/customer_variable/{variableName}/customer_group/category_elements

登録されたCUSTOMER GROUPを確認するには、CUSTOMER GROUPのリストを取得するAPIを使用してください。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

下記のJSON形式で結果が得られます。

{
  "result": [
    {
      "id": "RkFROjVkZDQ4ZWFhN2E4ZGM2M2Y4OGNhZmUzOa==",
      "value": "IT",
    },
    {
      "id": "RkFROjVkZDQ4ZWFhN2E4ZGM2M2Y4OGNhZmUzOb==",
      "value": "QA",
    },
  ]
}

Request Example

curl -L -X GET 'https://backend.alli.ai/webapi/customer_variable/{variableName}/customer_group/category_elements' \
-H 'API-KEY: YOUR_API_KEY'

Reaponse Example

{
  "result": [
    {
      "id": "RkFROjVkZDQ4ZWFhN2E4ZGM2M2Y4OGNhZmUzOa==",
      "value": "IT",
    },
    {
      "id": "RkFROjVkZDQ4ZWFhN2E4ZGM2M2Y4OGNhZmUzOb==",
      "value": "QA",
    },
  ]
}

Create CUSTOMER GROUP

POST https://backend-ja.alli.ai/webapi/customer_variable/{variableName}/customer_group/category_element

このAPIを利用すると、CUSTOMER GROUPを作成出来ます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

Name
Type
Description

value*

string

追加するCUSTOMER GROUPの名前です。

下記のJSON形式で結果が得られます。

{
  "result": {
    "id": "category_element_id"
    "value": "sample_category_element"
  }
}

Request Example{variableName}

curl -L -X POST 'https://backend-ja.alli.ai/webapi/customer_variable/{variableName}/category_element' \
-H 'Content-Type: application/json' \
-H 'API-KEY: YOUR_API_KEY' \
-d '{
    "value": "sample_category_element"
}'

Response Example

{
  "result": {
    "id": "category_element_id"
    "value": "sample_category_element"
  }
}

Update CUSTOMER GROUP

POST https://backend-ja.alli.ai/webapi/customer_variable/{variableName}/category_element/{categoryElementId}

このAPIを利用すると、CUSTOMER GROUPを更新出来ます。

Path Parameters

Name
Type
Description

categoryElementId*

string

更新したいCUSTOMER GROUPのIDです。CUSTOMER GROUPクエリAPIを使用して取得することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

Request Body

Name
Type
Description

value*

string

更新するCUSTOMER GROUPの名前です。

下記のJSON形式で結果が得られます。

{
  "result": {
    "id": "category_element_id"
    "value": "sample_category_element"
  }
}

Request Example

{categoryElementId}をご自身のCUSTOMER GROUPのIDで置き換えてください。CUSTOMER GROUPクエリAPIを使用して取得することができます。

curl -L -X POST 'https://backend-ja.alli.ai/webapi/customer_variable/{variableName}/customer_group/category_element/{categoryElementId}' \
-H 'Content-Type: application/json' \
-H 'API-KEY: YOUR_API_KEY' \
-d '{
    "value": "sample_category_element"
}'

Response Example

{
  "result": {
    "id": "category_element_id"
    "value": "sample_category_element"
  }
}

Delete CUSTOMER GROUP

DELETE https://backend-ja.alli.ai/webapi/customer_variable/{variableName}/category_element/{categoryElementId}

このAPIを利用すると、CUSTOMER GROUPを更新出来ます。

Path Parameters

Name
Type
Description

categoryElementId*

string

更新したいCUSTOMER GROUPのIDです。CUSTOMER GROUPクエリAPIを使用して取得することができます。

Headers

Name
Type
Description

API-KEY*

string

割り当てられたAPIキーです。プロジェクト設定メニュ→全般タブから確認できます。

下記のJSON形式で結果が得られます。

{}

Request Example

{categoryElementId}をご自身のCUSTOMER GROUPのIDで置き換えてください。CUSTOMER GROUPクエリAPIを使用して取得することができます。

curl -L -X DELETE 'https://backend-ja.alli.ai/webapi/customer_variable/{variableName}/customer_group/category_element/{categoryElementId}' \
-H 'API-KEY: YOUR_API_KEY'

Response Example

{}

API Classifications

請求目的のAPI分類とマッピングを表示します。

こちらからExcelファイルをダウンロードしてください。

Last updated