記事閲覧APIを利用することで、IBISEに登録している記事の詳細情報を取得することができます。
記事閲覧APIのエンドポイントと、アクセスする際のHTTPメソッドは以下の通りです。URLに記載されている xxxxxx は、利用しているサブドメインに置き換えてください。
指定パラメータ
- 記事詳細情報を取得する際は、以下の項目をクエリパラメータにて設定することができます。
項目 | キー | 必須/任意 | 型 | デフォルト値 | 説明 |
タイムゾーン | timezone | 任意 | string | 該当アカウントが選択しているタイムゾーン | 'Asia/Tokyo'などのタイムゾーンを表す文字列。これにより出力の日時のタイムゾーンを指定することができます。マスター文字列については こちら を参照ください。 |
閲覧者タイプ | viewer_type | 任意 | string | 'all_users' | 記事を閲覧するユーザーのタイプが選択可能となります。現時点では、'all_users'のみ指定可能。'all_users'を選択の場合、管理者だけが閲覧可能、もしくは、エージェントのみが閲覧可能の記事情報は見れません。 |
ロケール | locale | 任意 | string | 該当アカウントの選択中のロケール | 記事情報を閲覧する際の言語指定。'JAPANESE', 'ENGLISH', 'TRADITIONAL_CHINESE'のいずれか。 |
- 「公開」ステータスの記事のみ取得可能です。「公開」以外のステータスの記事が指定された場合、HTTP Status Code 404(Not Found)が返されます。
- 該当する記事が存在しない場合、HTTP Status Code 404(Not Found)が返されます。
- 該当するロケール情報がある場合のみ値を返します。該当するロケール情報がない場合は記事が存在しない場合と同様、HTTP Status Code 404(Not Found)が返されます。
返り値
- 検索の結果情報(result) と、記事の情報 (article) を JSON形式で返します。
結果情報 (result)
項目 | キー | 型 | 説明 |
APIバージョン | version | string | APIのバージョンを返す。v1なので'1'を返す。 |
記事情報 (article)
項目 | キー | 型 | 説明 |
記事ID | article_id | number | 記事の識別子 |
カテゴリーID | category_id | number | 記事が所属するカテゴリーのID |
カテゴリー情報 | category | any | 記事が所属するカテゴリー情報。カテゴリー一覧APIが返す項目に従います。 |
記事タイトル | title | string | 記事タイトル(指定localeでの表示) |
記事本文(HTML) | body | string | 記事の本文(指定localeでの表示)。全文をHTMLにて表示します。 |
URL | url | string | ポータルサイトの記事ページのURLを返します(指定localeでの表示)。ポータルサイト非公開の場合はnullを返します。 |
ロケール | locale | string | 記事のタイトルなどの出力で利用しているロケールを表示。 |
添付ファイル | attachments | any | 添付ファイル情報の一覧を返します。 |
公開日時 | published_at | string | ISO 8601のフォーマットで、指定timezoneで表示。 |
作成日時 | created_at | string | ISO 8601のフォーマットで、指定timezoneで表示。 |
更新日時 | updated_at | string | ISO 8601のフォーマットで、指定timezoneで表示。 |
添付ファイル情報について
項目 | キー | 型 | 説明 |
URL | url | string | 添付ファイルが持つURL |
Mimeタイプ | mime_type | string | 該当ファイルのMimeTypeを表示します。 |
データサイズ | data_size | number | 該当ファイルのデータサイズを表示します(byte) |
エラー時の対処
- エラーが発生した場合、エラー種類を HTTP レスポンスのステータスコードに指定して、レスポンスを返します。
- また、補足のエラーメッセージがある場合は、以下のような形式で JSONでエラーメッセージを返します。errors が配列になっていることに注意してください。
例) timezone=Asia/Ebisu (他のパラメータの場合も同様)
{
errors: [
{
message: 'invalid timezone value. timezone:Asia/Ebisu'
}
]
}
具体例
リクエスト
https://xxxxxx.ibise.com/api/v1/articles/199
?timezone=Asia/Tokyo
&viwer_type=all_users
&locale=JAPANESE
レスポンス
{
result: {
version: '1'
},
article: {
article_id: 199,
category_id: 11,
category: {
category_id: 11,
name: '運営会社からのお知らせ',
description: '',
url: 'https://faq.ibise.com/ja/categories/11',
parent_category_id: null,
has_child_categories: false,
created_at: '2021-07-01T12:34:56+09:00',
updated_at: '2021-07-02T01:23:45+09:00'
},
title: 'IBiSEお客様限定_8月活用セミナーのお知らせ',
body: 'xxxxxxxxxxxxxxxxxxxxx',
url: 'https://faq.ibise.com/ja/articles/199',
locale: 'JAPANESE',
attachements: [
{
url: 'https://xxxxxx.ibise.com/ja/articleAttachments/5',
mime_type: 'image/jpeg',
data_size: 88731
},
{
url: 'https://xxxxxx.ibise.com/ja/articleAttachments/6',
mime_type: 'application/pdf',
data_size: 51234
},
{
url: 'https://xxxxxx.ibise.com/ja/articleAttachments/7',
mime_type: 'application/vnd.ms-excel',
data_size: 126645
},
],
published_at: '2021-07-01T12:34:56+09:00',
created_at: '2021-07-01T12:34:56+09:00',
updated_at: '2021-08-10T09:10:47+09:00'
}
}