Salesforce ナレッジ API オブジェクト
Salesforce ナレッジでは、記事およびデータカテゴリを使用します。記事には、知識ベースで入手できるようにする会社の商品およびサービスに関する情報が取り込まれます。Salesforce ナレッジでは、データカテゴリは、階層的にカテゴリグループにまとめられた一連の条件です。知識ベースの記事は、複数のカテゴリにしたがって分類できます。ユーザは必要な記事を見つけやすくなります。たとえば、営業地域や事業単位で記事を分類するには、「営業地域」と「事業単位」という 2 つのカテゴリグループを作成します。「営業地域」カテゴリグループでは、「全営業地域」を最上位として、第 2 レベルに「北米」、「アジア」というように、地理的階層を最大 5 レベルに構成することができます。作成者がカテゴリを記事に割り当てます。管理者は、データカテゴリを使用して記事へのアクセスを制御します。
データカテゴリは、システム管理者が定義した値で、記事を知識ベース内で論理サブグループに整理するときに役立ちます。たとえば、[記事] タブから、最も関連性の高いデータカテゴリを選択して、記事のリストを絞り込むことができます。このセクションでは、記事およびデータカテゴリの Salesforce ナレッジ API オブジェクトと、それらを操作するリソースをリストします。
記事
記事には、知識ベースで入手できるようにする会社の商品およびサービスに関する情報が取り込まれます。知識ベースの記事を 1 つ以上のデータカテゴリに分類することにより、ユーザは必要な記事を見つけやすくなります。管理者は、データカテゴリを使用して記事へのアクセスを制御します。
- セクションの内容を整理する記事タイプ。
- 記事を表示する記事タイプのテンプレート。
- 記事タイプ
- Salesforce ナレッジのすべての記事は 1 つの記事タイプに割り当てられます。記事のタイプは、記事が含むコンテンツのタイプ、外観、および記事にアクセスできるユーザを特定します。たとえば、単純な FAQ の記事タイプには、[質問] および [回答] の 2 つのカスタム項目があり、記事マネージャが FAQ の記事の作成または更新時にそこにデータを入力します。より複雑な記事タイプでは、複数のセクションに分かれた多数の項目が必要な場合があります。レイアウトおよびテンプレートを使用することで、管理者は特定のコンテンツに対して最も効果的な方法で記事タイプを構築できます。記事タイプへのユーザのアクセスは権限によって制御されます。各記事タイプについて、管理者は「作成」、「参照」、「編集」、または「削除」権限をユーザに与えることができます。たとえば、記事マネージャが内部ユーザには FAQ を参照、作成、編集できるようにするけれども、パートナーユーザには FAQ の参照のみを可能にする場合などです。
- 記事タイプレイアウト
- 記事タイプレイアウトを使用して、管理者は記事に表示される項目を構成するセクションを作成し、ユーザが表示および編集可能な項目を選択できます。記事タイプごとに 1 つのレイアウトが使用可能です。管理者は、記事タイプの詳細ページからレイアウトを変更します。
- 記事タイプテンプレート
- 記事タイプテンプレートでは、記事タイプレイアウトでのセクションの表示方法を指定します。記事タイプは、その 4 つのチャネルそれぞれに異なるテンプレートを使用できます。たとえば、FAQ の記事タイプの [カスタマーポータル] チャネルをタブテンプレートに割り当てると、FAQ のレイアウトのセクションが、顧客が FAQ の記事を表示するときにタブとして表示されます。目次テンプレートの場合は、レイアウトで定義したセクションが、記事が表示されたときに 1 つのページにハイパーリンクと共に表示されます。Salesforce は、タブと目次の 2 つの標準記事タイプテンプレートを提供します。カスタムテンプレートは Visualforce で作成できます。
- チャネル
- チャネルとは、記事を利用可能にする媒体を指します。Salesforce ナレッジでは、記事を利用可能にできるチャネルを 4 つ提供しています。
- 内部アプリケーション: Salesforce のユーザが、ロールの表示設定に応じて [記事] タブで記事にアクセスできます。
- カスタマー: [記事] タブがコミュニティまたはカスタマーポータルで使用可能な場合、顧客が記事にアクセスできます。カスタマーユーザは、取引先でのマネージャのロール表示設定を継承します。コミュニティでは、カスタマーコミュニティまたはカスタマーコミュニティプラスライセンスを持つユーザのみが記事を使用できます。
- パートナー: [記事] タブがコミュニティまたはカスタマーポータルで使用可能な場合、パートナーが記事にアクセスできます。パートナーユーザは、取引先でのマネージャのロール表示設定を継承します。コミュニティでは、パートナコミュニティライセンスを持つユーザのみが記事を使用できます。
- 公開知識ベース: 記事は、AppExchange から Salesforce ナレッジのサンプル公開知識ベースアプリケーションを使用して公開知識ベースを作成することで、匿名ユーザに公開できます。公開知識ベースの作成には、サイトおよび Visualforce が必要です。
- 自分の Web サイト。会社の Web サイト経由でユーザが記事を使用できます。
- 公開サイクル
- Salesforce ナレッジ記事は公開サイクルの作成から削除までの段階を移行していきます。公開サイクルには、3 つの異なる状況があります。Draft は、新しい記事が作成されるか既存の記事が更新される段階です。状況が Online である記事は、公開済みで、他のチャネルで利用できるようになったドラフト記事です。最後に、公開記事がサイクルの最終段階になると、Archived 状況に移行するか、または Draft に戻り後続のバージョンで更新されます。
次の表に、記事を操作する API リソースのリストを示します。
| 名前 | 型 | 説明 |
|---|---|---|
| 記事タイプ __DataCategorySelection | Object | 記事を分類するデータカテゴリを表します。 |
| 記事タイプ__ka | Object | バージョンとは関係なく特定の記事タイプの記事へのアクセスを提供します。このオブジェクトは参照のみであるため、SOQL 句または WITH DATA CATEGORY DataCategorySpec SOSL 句では使用できません。詳細は、「KnowledgeArticle」を参照してください。 |
| Article Type__kav | Object | バージョンに応じて特定の記事タイプのすべての記事へのアクセスを提供します。このオブジェクトは、KnowledgeArticleVersion で使用可能な項目へのアクセスを提供します。詳細は、「KnowledgeArticleVersion」を参照してください。 |
| Article Type__Feed | Object | 記事の詳細ページに表示されるフィード内の単一フィード項目を表します。 |
| 記事タイプ__ViewStat | Object | 特定の記事タイプの記事の参照回数の統計情報を提供します。詳細は、「KnowledgeArticleViewStat」を参照してください。 |
| 記事タイプ__VoteStat | Object | 特定の記事タイプの記事の加重評価を 1 - 5 のスケールで提供します。詳細は、「KnowledgeArticleVoteStat」を参照してください。 |
| CaseArticle | Object | Case と KnowledgeArticle との間の関連を表します。 |
| FeedComment | Object | ユーザがフィードに追加したコメントを表します。ユーザがフィードに追加したコメントを表します。 |
| FeedItem | Object | FeedItem は、レコードフィードの変更 (テキスト投稿、リンク投稿、およびコンテンツ投稿を含む) などのフィードのエントリ��表します。 |
| KnowledgeArticle | Object | バージョンとは関係なく記事へのアクセスを提供します。このオブジェクトは参照のみであるため、SOQL 句または WITH DATA CATEGORY DataCategorySpec SOSL 句では使用できません。 |
| KnowledgeArticleVersion | Object | バージョンに応じて、すべての記事タイプを対象に記事の標準項目のグローバルな参照を提供します。 |
| KnowledgeArticleViewStat | Object | すべての記事タイプを対象に指定記事の参照回数に関する統計情報を提供します。 |
| KnowledgeArticleVoteStat | Object | すべての記事タイプを対象に指定記事の加重評価を 1 - 5 のスケールで提供します。 |
| NewsFeed | Object | ユーザのホームの単一フィード項目を表します。Chatter フィードでは、ユーザがフォローするレコードに対する最新の変更が表示されます。 |
| UserProfileFeed | Object | ユーザプロファイルフィードを表します。このフィードは、フィード内で追跡可能なレコードに対するユーザによるすべてのアクションを追跡します。このフィードは、ユーザプロファイルページに表示されます。 |
| WITH DATA CATEGORY filteringExpression | SOQL 句 | 公開サイクルおよびデータカテゴリの状況に応じて記事を分類します。詳細は、『Salesforce SOQL および SOSL リファレンスガイド』を参照してください。 |
| WITH DATA CATEGORY DataCategorySpec | SOSL 句 | カテゴリに基づいて記事を検索します。詳細は、『Salesforce SOQL および SOSL リファレンスガイド』を参照してください。 |
KnowledgeArticleVersion での SOQL および SOSL
- クエリで 1 つ以上の主キー ID を指定する場合を除き、必ず PublishStatus の値は 1 つだけ指定します。セキュリティをサポートするために、PublishStatus の値が Draft の記事は「記事の管理」権限を持つユーザにのみ表示されます。
- アーカイブ済み記事のバージョンは、articletype_kav オブジェクトに保存されます。アーカイブ済み記事のバージョンをクエリするには、記事の Id を指定し、sLatestVersion='0' を設定します。
- 必ず Language の値は 1 つだけ指定します。ただし、SOQL では、Id または KnowledgeArticleId に対する条件がある場合、複数の Language を指定できます。
データカテゴリ
データカテゴリは、カテゴリグループ別に編成され、次のことを実行できます。
- ユーザによるレコードの分類および検索。
- システム管理者によるレコードへのアクセスの管理。
データカテゴリは、Salesforce ナレッジ (記事) およびアンサーコミュニティ (質問) で使用できます。
- データカテゴリと記事
-
Salesforce ナレッジでは、各カテゴリグループ内の 5 段階階層のデータカテゴリをサポートします。知識ベースの記事は、複数のカテゴリに従って分類できます。ユーザは必要な記事を見つけやすくなります。たとえば、営業地域や事業単位で記事を分類するには、「営業地域」と「事業単位」という 2 つのカテゴリグループを作成します。「営業地域」カテゴリグループでは、「全営業地域」を最上位として、第 2 レベルに「北米」、「アジア」というように、地理的階層を構成することができます。
以下の図は、ラップトップの商談に関する記事の、知識ベース管理者のビューを示します。記事の編集ページを使用して、知識ベース管理者は Product カテゴリグループの Laptops、および Geography カテゴリグループの USA で記事を分類しました。
次の図は、[記事] タブで公開されている同じ記事を検索するエージェントを示します。エージェントは、Products および Geography ドロップダウンリストで、それぞれ Laptops および USA を選択します。
次の表に、データカテゴリを操作する API リストを示します。
| 名前 | 型 | 説明 |
|---|---|---|
| 記事タイプ __DataCategorySelection | Object | 記事カテゴリへのアクセスを許可します。 |
| QuestionDataCategorySelection | Object | 質問カテゴリへのアクセスを許可します。 |
| WITH DATA CATEGORY filteringExpression | SOQL 句 | 公開サイクルおよびデータカテゴリの状況に応じて記事を分類します。詳細は、『Salesforce SOQL および SOSL リファレンスガイド』を参照してください。 |
| WITH DATA CATEGORY DataCategorySpec | SOSL 句 | カテゴリに基づいて記事を検索します。詳細は、『Salesforce SOQL および SOSL リファレンスガイド』を参照してください。 |
| describeDataCategoryGroups() | コール | 要求で指定されたオブジェクトで使用できるカテゴリグループを取得します。 |
| describeDataCategoryGroupStructures() | コール | 要求で指定されたオブジェクトで使用できるカテゴリグループとそのデータカテゴリ構造を返します。 |
| describeDataCategoryGroups | Apex メソッド | 指定したオブジェクトに関連するカテゴリグループのリストを返します。『Apex コード開発者ガイド』を参照してください。 |
| describeDataCategoryGroupStructures | Apex メソッド | 要求で指定されたオブジェクトのデータカテゴリ構造と共に使用可能なカテゴリグループを返します。『Apex コード開発者ガイド』を参照してください。 |