書き込みチェッカーAPIについて

はじめに

書き込みチェッカーAPIはサイト管理者向けのインターフェースです。
掲示板管理人や、レンタルブログサービス事業者などを利用者として想定しています。

利用制限

具体的な利用制限は設けていませんが、 XREAという格安のレンタルサーバーを利用しているため、 頻繁にリクエストを送るとMYSQLの接続数制限に引っかかる可能性があります。
1秒間に1回程度のリクエストを目安にご利用下さい。

利用についての諸注意

チェックは機械的に行っているだけであり、 判断結果としてテキストに問題がない(もしくは低い)などと表示されても、 そのテキストに違法性がないことを保証するわけではありません。
また、仕組みはかなりザルなので、チェックに引っかかった場合に投稿制限するわけではなく、 管理人にアラートが行くような感じに使った方が良い感じです。
ただし、犯行予告に関しては、犯罪を未然に防ぐという意味で 「犯行予告らしきものが書き込まれていますが、本当に書き込みをしても良いですか?」 というようなメッセージを表示すると良いでしょう。

クレジット表記

適当なところに、書き込みチェッカーのAPIを利用している旨を書いて、書き込みチェッカーへのリンクを張って下さい。

例:

<!-- ここからクレジット -->
このサイトは<a href="http://kakikomi.org">書き込みチェッカー</a>のAPIを利用しています。
<!-- ここまでクレジット -->

利用方法

http://kakikomi.org/apiにGET/POSTリクエストを送って下さい。
(長い文字列をGET渡そうとするとエラーになる可能性があります)
以下に「マンコです」というテキストをチェックする例を示します。

例:
http://kakikomi.org/api?announce=1&defame=1&personal=1&forbid=1&adult=1 &body=%E3%83%9E%E3%83%B3%E3%82%B3%E3%81%A7%E3%81%99
(実際は一行で書いて下さい)

必要なパラメーターは次の通りです。

パラメータ名説明
announce0か1犯行予告のチェックを含める場合は1にします
defame0か1誹謗中傷のチェックを含める場合は1にします
personal0か1個人情報のチェックを含める場合は1にします
forbid0か1放送禁止用語のチェックを含める場合は1にします
adult0か1アダルトワードのチェックを含める場合は1にします
bodyUTF-8でURLエンコードされた文字列実際にチェックされる文字列です

返されるXMLはこのようなものです(上の例の場合)

<?xml version="1.0" encoding="utf-8" ?>
<ResultSet xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Result>
    <total_fail_count>2</total_fail_count>
    <fail>
      <check>forbid</check>
      <word>マンコ</word>
      <line>1</line>
      <level>2</level> 
    </fail>
    <fail>
      <check>adult</check>
      <word>マンコ</word>
      <line>1</line>
      <level>2</level>
    </fail>
  </Result>
</ResultSet>

<total_fail_count>には、チェックに引っかかった数が入ります。
<fail>にはそれぞれ、どのようなチェック項目に引っかかったかの情報が含まれます。

  • <check>はどのチェック項目に引っかかったかです。パラメータと同じ対応になります。
  • <word>はどのキーワードに引っかかったかです。
  • <line>は何行目に含まれる文字だったかを表しています。最初の行が1行で数えられています。
  • <level>はチェックレベルです。2と1がありますが、1の場合は誤検出である可能性が非常に高いです。

エラーの場合に返されるXMLはこのようなものです(本文がない場合)

<?xml version="1.0" encoding="utf-8" ?>
<ResultSet xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Result>
    <error>body is not found</error>
  </Result>
</ResultSet>

<error>にはエラーメッセージが入り、テキストのチェックは行われません。