イントロダクション
- 株式会社マーズフラッグ が提供するAPIのドキュメントです。
- 本機能は開発中の為、内容は予告なく変更されることがあります。
認証/認可
通常API実行には認可が伴うが、PoC環境は特に提供しない。
MF3 Crawler API v1.0
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
- クローラに関連するAPIドキュメントを記載。
- クロール起点、クロール実行スケジュールなどの各種設定については管理画面より設定する。
- APIのパスに含まれる以下パスパラメータは本APIのURL発行時に確定する。
- {contract_id}
- {servicegroup_id}
- {service_setting_id}
Base URLs:
histories
クロール結果保存先取得API
Code samples
const headers = {
'Accept':'application/json'
};
fetch('https://crawl-pub.api.mf3.marsflag.com/api/v1.0/crawler_service/contracts/{contract_id}/servicegroups/{servicegroup_id}/service_settings/{service_setting_id}/histories?from_datetime=string&to_datetime=string',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://crawl-pub.api.mf3.marsflag.com/api/v1.0/crawler_service/contracts/{contract_id}/servicegroups/{servicegroup_id}/service_settings/{service_setting_id}/histories', params={
'from_datetime': 'string', 'to_datetime': 'string'
}, headers = headers)
print(r.json())
GET /contracts/{contract_id}/servicegroups/{servicegroup_id}/service_settings/{service_setting_id}/histories
- クロール履歴の直近5件を取得する。
- 以下、クロール実行状態種別id/クロール実行状態種別名の一覧。
status_id | status_name | description1 | description2 |
---|---|---|---|
2010 | pending | 未稼働 | 本APIでは利用しない |
2020 | running | 稼働 | 本APIでは利用しない |
2030 | stopped | 停止 | 正常終了 |
2040 | troubled | 障害 | 異常終了 |
2050 | stopped_by_cancel | キャンセルによる停止 | キャンセルではあるが正常終了 |
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
from_datetime | query | string | true | クロール実行日時From(フォーマット:yyyy-MM-ddTHH:mm:ss+NN:NN) |
to_datetime | query | string | true | クロール実行日時To(フォーマット:yyyy-MM-ddTHH:mm:ss+NN:NN) |
contract_id | path | integer | true | 契約Id |
servicegroup_id | path | integer | true | サービスグループId |
service_setting_id | path | integer | true | サービス設定Id |
Example responses
OK
{
"status": "OK",
"message": "SUCCESS",
"contents": [
{
"id": 1,
"crawl_execution_status_dtype_id": 2030,
"crawl_execution_status_dtype_name": "停止",
"is_cancel_request": false,
"start_datetime": "2021-07-01T11:22:33.123456+00:00",
"end_datetime": "2021-07-02T22:33:44.123456+00:00",
"crawl_url_list_path": "https://dl.mf3.marsflag.com/crawler/"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | crawl_history |
settings
クロール設定API
Code samples
fetch('https://crawl-pub.api.mf3.marsflag.com/api/v1.0/crawler_service/contracts/{contract_id}/servicegroups/{servicegroup_id}/service_settings/{service_setting_id}/settings',
{
method: 'GET'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
r = requests.get('https://crawl-pub.api.mf3.marsflag.com/api/v1.0/crawler_service/contracts/{contract_id}/servicegroups/{servicegroup_id}/service_settings/{service_setting_id}/settings')
print(r.json())
GET /contracts/{contract_id}/servicegroups/{servicegroup_id}/service_settings/{service_setting_id}/settings
準備中
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
contract_id | path | string | true | none |
servicegroup_id | path | string | true | none |
service_setting_id | path | string | true | none |
Responses
Status | Meaning | Description | Schema |
---|
schedule
クロールスケジューラ設定API
Code samples
fetch('https://crawl-pub.api.mf3.marsflag.com/api/v1.0/crawler_service/contracts/{contract_id}/servicegroups/{servicegroup_id}/service_settings/{service_setting_id}/schedule',
{
method: 'GET'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
r = requests.get('https://crawl-pub.api.mf3.marsflag.com/api/v1.0/crawler_service/contracts/{contract_id}/servicegroups/{servicegroup_id}/service_settings/{service_setting_id}/schedule')
print(r.json())
GET /contracts/{contract_id}/servicegroups/{servicegroup_id}/service_settings/{service_setting_id}/schedule
準備中
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
contract_id | path | string | true | none |
servicegroup_id | path | string | true | none |
service_setting_id | path | string | true | none |
Responses
Status | Meaning | Description | Schema |
---|
Schemas
crawl_history
{
"id": 0,
"crawl_execution_status_dtype_id": 0,
"crawl_execution_status_dtype_name": "string",
"is_cancel_request": true,
"start_datetime": "string",
"end_datetime": "string",
"crawl_url_list_path": "string"
}
crawl_history
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer | false | none | クロール稼働履歴id(システム内部で利用) |
crawl_execution_status_dtype_id | integer | false | none | クロール実行状態種別id(API概要記載の表を参照) |
crawl_execution_status_dtype_name | string | false | none | クロール実行状態種別名(API概要記載の表を参照) |
is_cancel_request | boolean | false | none | キャンセル要求有無フラグ(キャンセルの場合にtrue) |
start_datetime | string | false | none | クロール開始時刻(フォーマット:yyyy-MM-ddTHH:mm:ss.SSSSSS+NN:NN) |
end_datetime | string | false | none | クロール終了時刻(フォーマット:yyyy-MM-ddTHH:mm:ss.SSSSSS+NN:NN) |
crawl_url_list_path | string | false | none | クロール全体の成果物パス。成果物を作成していない、または作成に失敗時は「-」を設定。 |
MF3 Download API v1.0
クロールリストダウンロードAPI
クロール履歴APIから取得(項目名:crawl_url_list_path)したパスからダウンロードが可能。
クロールリストは作成から一定時間経過後に削除される(PoC時点では削除しないが、本番提供時は1週間程度を検討)。
ダウンロードURLのフォーマット
- https://dl.mf3.marsflag.com/crawler/{ファイル作成時に生成される文字列}/url_list.csv.gz
CSVファイルフォーマット
- 以下、列順(No.)に記載。
No. | Name | Description1 | Description2 |
---|---|---|---|
1 | crawl_url | クロールURL | |
2 | last_url | 到達URL | リダイレクトによって初回アクセス時のURLと違う時に設定 |
3 | is_crawl_ok | 成功/失敗 | true: 成功 false: 失敗 |
4 | crawl_datetime | クローラアクセス日時 | 例:2021-06-11T08:57:52.610269+0000 |
5 | http_status | HTTPステータスコード | 例:200 |
6 | last_modified | Last-modified(Responseヘッダ) | 例:Wed, 09 Jun 2021 07:16:24 GMT |
7 | content_type | Content-Type(Responseヘッダ) | 例:text/htm |
8 | content_length | Content-Length(Responseヘッダ) | なければ最終的に取得できたコンテンツ容量を設定 |
クロール成果物ダウンロードAPI
クロール成果物として、クロールに成功したページのHTML(DOMデータ)、スクリーンショットを1ファイル(tar.gz形式)にまとめてダウンロードが可能。
クロール履歴APIから取得(項目名:crawl_url_list_path)したパスについて、最後尾のファイル部分を成果物のファイル名に変更する。
クロール成果物は作成から一定時間経過後に削除される(PoC時点では削除しないが、本番提供時は1週間程度を検討)。
ダウンロードURLのフォーマット
- https://dl.mf3.marsflag.com/crawler/{ファイル作成時に生成される文字列}/crawl_objects.tar.gz
クロール成果物・HTML(DOMデータ)の保存先フォルダの生成ルール
フォーマット
- {①https/http}/{②host}/{③path}-/{④query+fragmentのURLエンコード}-/{プロパティ}
- ①プロトコル内(スキーマ)の「://」は削り、最後に「/」を付与
- ②と③の最後に「-/」を付与
- ④の最後に「-/」を付与
- ※URLエンコードはJSのencodeURIComponent関数を参考
例1 http://example.com/faq.html →https://image.mf3.marsflag.com/screenshot/http/example.com/faq.html-/-/cap_org.jpg
例2 http://example.com/faq →https://image.mf3.marsflag.com/screenshot/http/example.com/faq-/-/cap_org.jpg
例3(トレイリングスラッシュあり) http://example.com/faq/ →https://image.mf3.marsflag.com/screenshot/http/example.com/faq/-/-/cap_org.jpg
例4(トレイリングスラッシュあり) http://example.com/faq/?a=b#c=d →https://image.mf3.marsflag.com/screenshot/http/example.com/faq/-/{?a=b#c=dのURLエンコードした値}-/cap_org.jpg
例5 http://example.com/faq?a=b#c=d →https://image.mf3.marsflag.com/screenshot/http/example.com/faq-/{?a=b#c=dのURLエンコードした値}-/cap_org.jpg https://dl.mf3.marsflag.com/crawler/1_1_1_20210915133646770276/82d22e262926b622120eda5275d1fa68/crawl_objects.tar.gz
MF3 Site Search API(Finder API) v1.0
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
- サイト検索に関連するAPIドキュメントを記載。
- 検索インデックスを作成する際の各種設定については管理画面より設定する。
- APIのパスに含まれる以下パスパラメータは本APIのURL発行時に確定する。
- {contract_id}
- {servicegroup_id}
- {service_setting_id}
Base URLs:
suggestion
サジェストAPI
Code samples
const headers = {
'Accept':'application/json'
};
fetch('https://finder.api.mf3.marsflag.com/api/v1.0/finder_service/documents/{contract_id}/{servicegroup_id}/{service_id}/suggest',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://finder.api.mf3.marsflag.com/api/v1.0/finder_service/documents/{contract_id}/{servicegroup_id}/{service_id}/suggest', headers = headers)
print(r.json())
GET /documents/{contract_id}/{servicegroup_id}/{service_id}/suggest
- 指定された条件のサジェスト結果を返す。
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
q | query | string | false | * 全文検索クエリー文字列 |
input_encoding | query | string | false | * 入力エンコーディング |
number_per_suggestion | query | integer | false | * サジェストの結果表示件数 |
callback | query | string | false | * JSONP用のコールバック関数 |
contract_id | path | integer | true | * 契約id |
servicegroup_id | path | integer | true | * サービスグループid |
service_id | path | integer | true | * サービスid |
Detailed descriptions
input_encoding: * 入力エンコーディング * 設定値(以下何か) * utf8(デフォルト) * sjis * jis * euc-jp * euc-kr * iso-8859-1
number_per_suggestion: * サジェストの結果表示件数 * デフォルト:10
callback: * JSONP用のコールバック関数 * 指定ない場合は、JSONにて返却
Enumerated Values
Parameter | Value |
---|---|
input_encoding | utf8 |
input_encoding | sjis |
input_encoding | jis |
input_encoding | euc-jp |
input_encoding | euc-kr |
input_encoding | iso-8859-1 |
Example responses
200 Response
{
"suggestions": [
{
"word": "string",
"point": 0
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | SuggestResponse |
400 | Bad Request | Bad Request | None |
500 | Internal Server Error | Internal Server Error | None |
関連キーワードAPI
Code samples
const headers = {
'Accept':'application/json'
};
fetch('https://finder.api.mf3.marsflag.com/api/v1.0/finder_service/documents/{contract_id}/{servicegroup_id}/{service_id}/related_keywords',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://finder.api.mf3.marsflag.com/api/v1.0/finder_service/documents/{contract_id}/{servicegroup_id}/{service_id}/related_keywords', headers = headers)
print(r.json())
GET /documents/{contract_id}/{servicegroup_id}/{service_id}/related_keywords
クエリに対してプレフィックスで始まる関連キーワード一覧を取得する。
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
q | query | string | false | 全文検索クエリ文字列 |
prefix | query | string | false | 関連キーワードのプレフィックス文字列 |
contract_id | path | integer | true | none |
servicegroup_id | path | integer | true | none |
service_id | path | integer | true | none |
Example responses
200 Response
{
"related_keywords": [
{
"word": "string"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | GetRelatedKeywordsResponse |
400 | Bad Request | Bad Request | None |
500 | Internal Server Error | Internal Server Error | None |
search
全文検索API
Code samples
const headers = {
'Accept':'application/json'
};
fetch('https://finder.api.mf3.marsflag.com/api/v1.0/finder_service/documents/{contract_id}/{servicegroup_id}/{service_id}/search',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://finder.api.mf3.marsflag.com/api/v1.0/finder_service/documents/{contract_id}/{servicegroup_id}/{service_id}/search', headers = headers)
print(r.json())
GET /documents/{contract_id}/{servicegroup_id}/{service_id}/search
- 指定された条件の全文検索結果を返す。
- FacetDrillDownInfo関連して、solr側のドリルダウン用フィールドの値の持ち方は、階層1
階層2とする。 solr4以降の複数フィールドを組み合わせたpivot facet等の新機能があるが、1ページで1ドリルダウンのルートの複数ドリルダウンに対応できないため。
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
q | query | string | false | * 全文検索クエリー文字列 |
input_encoding | query | string | false | * 入力エンコーディング |
page_number | query | integer | false | * 取得ページ番号(デフォルト:1) |
number_per_page | query | integer | false | * 1ページ毎の検索結果表示件数 |
sort_by | query | array[string] | false | * ソート順 |
category | query | string | false | 全文検索結果を絞り込むカテゴリ |
drilldown | query | array[string] | false | * ドリルダウンにより絞り込み |
doctype | query | array[string] | false | * 出力されるページのドキュメント種類の指定 |
callback | query | string | false | * JSONP用のコールバック関数 |
contract_id | path | integer | true | * 契約ID |
servicegroup_id | path | integer | true | * サービスグループid |
service_id | path | integer | true | * サービスid |
Detailed descriptions
input_encoding: * 入力エンコーディング * 設定値(以下何か) * utf8(デフォルト) * sjis * jis * euc-jp * euc-kr * iso-8859-1
number_per_page: * 1ページ毎の検索結果表示件数 * 値域: 0~100(デフォルト: 10)
sort_by: * ソート順 * フォーマット * field1 order,field2 order * 複数項目指定可能 * orderの設定値 * desc:降順(フィールド指定のみの場合、デフォルト) * asc:昇順 * 利用方法 * マッチ順(降順) -> score desc(デフォルト) * 新着順(降順) -> last_modified desc * タイトル辞書順(昇順) -> title asc * クリック数順(降順) -> click desc
drilldown: * ドリルダウンにより絞り込み * 複数指定可能。 * 複数指定時には A<tab>B のようにtab文字(%09)で区切ること * 複数指定時には A OR BのようにOR検索となる。
doctype: * 出力されるページのドキュメント種類の指定 * カンマ区切りで複数指定可能 * 複数指定時には、OR検索となる * 設定値 * all(デフォルト) * html * pdf * doc * xls * ppt
callback: * JSONP用のコールバック関数 * 指定ない場合は、JSONにて返却
Enumerated Values
Parameter | Value |
---|---|
input_encoding | utf8 |
input_encoding | sjis |
input_encoding | jis |
input_encoding | euc-jp |
input_encoding | euc-kr |
input_encoding | iso-8859-1 |
doctype | all |
doctype | html |
doctype | |
doctype | doc |
doctype | xls |
doctype | ppt |
Example responses
成功時のレスポンス
{
"parameter": {
"q": "search words",
"input_encoding": "utf8",
"page_number": 0,
"number_per_page": 0,
"sort_by": [
"score desc"
],
"category": "string",
"drilldown": [
"drilldownA"
],
"doctype": [
"all"
]
},
"organic": {
"hits": 1010,
"range_min": 1,
"range_max": 100,
"docs": [
{
"ranking": 1,
"url": "https://www.marsflag.com/",
"title": "株式会社マーズフラッグ",
"description": "株式会社マーズフラッグは、オウンドメディアを活用したWebマーケティングを、サーチテクノロジーとWebサービスでサポートします。",
"start_text": "オウンドメディアをサポートするMARS FLAGのサービスとは?\n現在、顧客エンゲージメントを構築するためにオウンドメディア(自社Webサイト)を積極的に活用する事例が増加しております。当社ではサーチテクノロジーを利用したオウンドメディア サポートサービスをご用意しております。",
"highlight": {
"url_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"title_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"description_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"document_text_parts": [
{
"is_highlighted": true,
"text": "string"
}
]
},
"content_size": 1500,
"last_modified": 15000000,
"drilldown": [
"製品情報"
],
"doctype": "all"
}
]
},
"category": {
"items": [
"string"
],
"selected": [
"string"
]
},
"facet_drilldown_roots": [
{
"is_selected": true,
"is_opened": true,
"facet_drilldowns": [
{
"depth": 1,
"title": "string",
"path": "string",
"count": 0,
"is_selected": true,
"is_opened": true,
"children": [
{}
]
}
]
}
],
"spellcheck": {
"main_phrase": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | 成功時のレスポンス | SearchResponse |
400 | Bad Request | パラメータエラー時のレスポンス | None |
500 | Internal Server Error | Internal Server Error | None |
system
ヘルスチェックAPI
Code samples
const headers = {
'Accept':'application/json'
};
fetch('https://finder.api.mf3.marsflag.com/api/v1.0/finder_service/health_check',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://finder.api.mf3.marsflag.com/api/v1.0/finder_service/health_check', headers = headers)
print(r.json())
GET /health_check
ヘルスチェック処理実施。
Example responses
200 Response
{
"status": "string",
"message": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | GetHealthCheckResponse |
Schemas
Parameter
{
"q": "search words",
"input_encoding": "utf8",
"page_number": 0,
"number_per_page": 0,
"sort_by": [
"score desc"
],
"category": "string",
"drilldown": [
"drilldownA"
],
"doctype": [
"all"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
q | string | true | none | 全文検索クエリー文字列(searchAPIのクエリパラメータ同様) |
input_encoding | string | true | none | 入力エンコーディング(searchAPIのクエリパラメータ同様) |
page_number | integer | true | none | 取得ページ番号 (searchAPIのクエリパラメータ同様) |
number_per_page | integer | true | none | 1ページ毎の検索結果表示件数(searchAPIのクエリパラメータ同様) |
sort_by | [string] | true | none | ソート順(searchAPIのクエリパラメータ同様) |
category | string | true | none | 全文検索結果を絞り込むカテゴリ |
drilldown | [string] | true | none | ドリルダウンにより絞り込み(searchAPIのクエリパラメータ同様) |
» ドリルダウン | string | false | none | none |
doctype | [Doctype] | true | none | 出力されるページのドキュメント種類の指定(searchAPIのクエリパラメータ同様) |
OrganicDocResult
{
"hits": 1010,
"range_min": 1,
"range_max": 100,
"docs": [
{
"ranking": 1,
"url": "https://www.marsflag.com/",
"title": "株式会社マーズフラッグ",
"description": "株式会社マーズフラッグは、オウンドメディアを活用したWebマーケティングを、サーチテクノロジーとWebサービスでサポートします。",
"start_text": "オウンドメディアをサポートするMARS FLAGのサービスとは?\n現在、顧客エンゲージメントを構築するためにオウンドメディア(自社Webサイト)を積極的に活用する事例が増加しております。当社ではサーチテクノロジーを利用したオウンドメディア サポートサービスをご用意しております。",
"highlight": {
"url_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"title_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"description_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"document_text_parts": [
{
"is_highlighted": true,
"text": "string"
}
]
},
"content_size": 1500,
"last_modified": 15000000,
"drilldown": [
"製品情報"
],
"doctype": "all"
}
]
}
検索結果のページ全体情報
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
hits | integer | true | none | ヒットしたページ数 |
range_min | integer | true | none | docsに含まれるデータの検索結果順位の最小順位 |
range_max | integer | true | none | docsに含まれるデータの検索結果順位の最大順位 |
docs | [OrganicDoc] | true | none | 検索結果のページ毎情報 |
OrganicDoc
{
"ranking": 1,
"url": "https://www.marsflag.com/",
"title": "株式会社マーズフラッグ",
"description": "株式会社マーズフラッグは、オウンドメディアを活用したWebマーケティングを、サーチテクノロジーとWebサービスでサポートします。",
"start_text": "オウンドメディアをサポートするMARS FLAGのサービスとは?\n現在、顧客エンゲージメントを構築するためにオウンドメディア(自社Webサイト)を積極的に活用する事例が増加しております。当社ではサーチテクノロジーを利用したオウンドメディア サポートサービスをご用意しております。",
"highlight": {
"url_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"title_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"description_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"document_text_parts": [
{
"is_highlighted": true,
"text": "string"
}
]
},
"content_size": 1500,
"last_modified": 15000000,
"drilldown": [
"製品情報"
],
"doctype": "all"
}
検索結果のページ毎の情報
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
ranking | integer | true | none | 検索結果順位 |
url | string(uri) | true | none | ドキュメントURL(クロールURL) |
title | string | true | none | ページタイトル |
description | string | true | none | ページdescrition |
start_text | string | true | none | ページ本文先頭n文字 (PDF等の巨大文字列コンテンツ対応) |
highlight | HighlightInfo | true | none | ページパーツ毎のハイライト情報 |
content_size | integer | true | none | コンテンツサイズ |
last_modified | integer | true | none | コンテンツ最終更新時刻(unixtime) |
drilldown | [string] | true | none | ドキュメントの所属するドリルダウン |
doctype | Doctype | true | none | ドキュメント種別 |
HighlightInfo
{
"url_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"title_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"description_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"document_text_parts": [
{
"is_highlighted": true,
"text": "string"
}
]
}
ページパーツ毎のハイライト情報
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
url_parts | [HighlightPart] | true | none | urlのハイライトパーツ |
title_parts | [HighlightPart] | true | none | titleのハイライトパーツ |
description_parts | [HighlightPart] | true | none | descriptionのハイライトパーツ |
document_text_parts | [HighlightPart] | true | none | document textののハイライトパーツ |
FacetDrillDownRootInfo
{
"is_selected": true,
"is_opened": true,
"facet_drilldowns": [
{
"depth": 1,
"title": "string",
"path": "string",
"count": 0,
"is_selected": true,
"is_opened": true,
"children": [
{}
]
}
]
}
ドリルダウンの階層情報
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
is_selected | boolean | true | none | このカテゴリrootで絞り込まれている場合にtrueがセットされる |
is_opened | boolean | true | none | このカテゴリrootもしくはこのカテゴリの下位カテゴリで絞り込まれている場合にtrueがセットされる |
facet_drilldowns | [FacetDrillDownInfo] | true | none | そのドリルダウンrootに属するドリルダウン情報 |
FacetDrillDownInfo
{
"depth": 1,
"title": "string",
"path": "string",
"count": 0,
"is_selected": true,
"is_opened": true,
"children": [
{
"depth": 1,
"title": "string",
"path": "string",
"count": 0,
"is_selected": true,
"is_opened": true,
"children": []
}
]
}
ドリルダウンの階層情報
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
depth | integer | true | none | ドリルダウン階層の深さ(最上位階層は1) |
title | string | true | none | 階層の表示テキスト |
path | string | true | none | ドリルダウンラベルを最上位から順にタブ区切りで連結した文字列 |
count | integer | true | none | この階層内で検索にヒットしたページ数 |
is_selected | boolean | true | none | この階層で絞り込まれている場合にtrueがセットされる |
is_opened | boolean | true | none | この階層もしくはこのカテゴリの下位カテゴリで絞り込まれている場合にtrueがセットされる |
children | [FacetDrillDownInfo] | false | none | 下位ラベル情報のリスト |
HighlightPart
{
"is_highlighted": true,
"text": "string"
}
HighlightPart
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
is_highlighted | boolean | true | none | ハイライト有無 有り:true/無し:false |
text | string | true | none | テキスト文字列 |
SearchResponse
{
"parameter": {
"q": "search words",
"input_encoding": "utf8",
"page_number": 0,
"number_per_page": 0,
"sort_by": [
"score desc"
],
"category": "string",
"drilldown": [
"drilldownA"
],
"doctype": [
"all"
]
},
"organic": {
"hits": 1010,
"range_min": 1,
"range_max": 100,
"docs": [
{
"ranking": 1,
"url": "https://www.marsflag.com/",
"title": "株式会社マーズフラッグ",
"description": "株式会社マーズフラッグは、オウンドメディアを活用したWebマーケティングを、サーチテクノロジーとWebサービスでサポートします。",
"start_text": "オウンドメディアをサポートするMARS FLAGのサービスとは?\n現在、顧客エンゲージメントを構築するためにオウンドメディア(自社Webサイト)を積極的に活用する事例が増加しております。当社ではサーチテクノロジーを利用したオウンドメディア サポートサービスをご用意しております。",
"highlight": {
"url_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"title_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"description_parts": [
{
"is_highlighted": true,
"text": "string"
}
],
"document_text_parts": [
{
"is_highlighted": true,
"text": "string"
}
]
},
"content_size": 1500,
"last_modified": 15000000,
"drilldown": [
"製品情報"
],
"doctype": "all"
}
]
},
"category": {
"items": [
"string"
],
"selected": [
"string"
]
},
"facet_drilldown_roots": [
{
"is_selected": true,
"is_opened": true,
"facet_drilldowns": [
{
"depth": 1,
"title": "string",
"path": "string",
"count": 0,
"is_selected": true,
"is_opened": true,
"children": [
{}
]
}
]
}
],
"spellcheck": {
"main_phrase": "string"
}
}
SearchResponse
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
parameter | Parameter | true | none | none |
organic | OrganicDocResult | true | none | 検索結果のページ全体情報 |
category | Category | true | none | none |
facet_drilldown_roots | [FacetDrillDownRootInfo] | true | none | [ドリルダウンの階層情報] |
spellcheck | Spellcheck | true | none | もしかして |
SuggestResponse
{
"suggestions": [
{
"word": "string",
"point": 0
}
]
}
SuggestResponse
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
suggestions | [SuggestionInfo] | false | none | [1サジェストの情報] |
SuggestionInfo
{
"word": "string",
"point": 0
}
SuggestionInfo
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
word | string | true | none | 候補ワード |
point | number | false | none | 候補優先度合。一段サジェストまで存在 |
Doctype
"all"
Doctype
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Doctype | string | false | none | ドキュメント種別 |
Enumerated Values
Property | Value |
---|---|
Doctype | all |
Doctype | html |
Doctype | |
Doctype | doc |
Doctype | xls |
Doctype | ppt |
GetHealthCheckResponse
{
"status": "string",
"message": "string"
}
GetHealthCheckResponse
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
status | string | false | none | none |
message | string | false | none | none |
Spellcheck
{
"main_phrase": "string"
}
Spellcheck
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
main_phrase | string | true | none | none |
GetRelatedKeywordsResponse
{
"related_keywords": [
{
"word": "string"
}
]
}
GetRelatedKeywordsResponse
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
related_keywords | [RelatedKeyword] | true | none | none |
RelatedKeyword
{
"word": "string"
}
RelatedKeyword
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
word | string | true | none | 関連キーワード |
Category
{
"items": [
"string"
],
"selected": [
"string"
]
}
Category
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
items | [string] | true | none | カテゴリ名 |
selected | [string] | true | none | 選択中カテゴリ。配列だけど現在一つだけ可能 |
Errors
The Kittn API uses the following error codes:
Error Code | Meaning |
---|---|
400 | Bad Request -- Your request is invalid. |
401 | Unauthorized -- Your API key is wrong. |
403 | Forbidden -- The kitten requested is hidden for administrators only. |
404 | Not Found -- The specified kitten could not be found. |
405 | Method Not Allowed -- You tried to access a kitten with an invalid method. |
406 | Not Acceptable -- You requested a format that isn't json. |
410 | Gone -- The kitten requested has been removed from our servers. |
418 | I'm a teapot. |
429 | Too Many Requests -- You're requesting too many kittens! Slow down! |
500 | Internal Server Error -- We had a problem with our server. Try again later. |
503 | Service Unavailable -- We're temporarily offline for maintenance. Please try again later. |