拙著「上手に稼ぐカラ売りテクニック」が発売されました。株価が下がる局面で利益を得ることができる「空売り」について、詳しく解説した本です。自由国民社刊で、定価1,512円(税込)です。APIは、プラグインで拡張することもできるようになっています。その基本的な方法を紹介します。Typeに外部からアクセスすることができます。現状では取得や変更などができない箇所もあります。APIはHTTP経由でのアクセスなので、オーバーヘッドもあります。Type標準のAPIだけだと、APIを何度を呼び出す必要が出てしまい、速度的に厳くなる場合があります。このようなときには、プラグインで独自のAPIを追加することもできます。Typeらしく、APIの内部もフレームワーク的に作られています。2.エンドポイントの追加プラグインでエンドポイントを追加するには、最低限以下の2つの作業が必要です。2-1.config.yamlにエンドポイントの情報を記述まず、プラグインのconfig.yamlファイルで、レジストリのapplications→data_api→endpointsの下に配列を追加し、その個々の要素としてエンドポイントの情報を記述します。個々のエンドポイントの情報はハッシュで記述します。ハッシュの内容は以下の通りです。次に、エンドポイントに対応するハンドラを作成します。ハンドラでは、必要な処理を行って、結果を返します。返したいデータ構造を、配列やハッシュで表し、それらへのリファレンスをreturnします。返された結果が、APIで得られる値になります。オブジェクトをreturnしたり、配列/ハッシュの要素にオブジェクトを入れてreturnすることもできます。出力するフィールドや、データの形式などは、後述する「リソース」で定義します。APIであらかじめリソースが定義されています。独自のオブジェクトを作る場合は、自分でリソースを定義する必要があります。2-3.プラグインの例ごく簡単なプラグインの例として、ブログの名前/概要/アドレス/記事数を返すAPIを作ってみました。「http://・・・/mt-data-api.cgi/v1/sites/ブログのID/blogstat」にアクセスすると、上記の情報が返されます。APIで扱うオブジェクトを、「リソース」(resource)と呼びます。記事やコメントなどがリソースにあたります。プラグインで独自のリソースを追加することも可能です。この場合は、プラグインのconfig.yamlで、レジストリのapplications→data_api→resources→updatable_fieldsとapplications→data_api→resources→fieldsの下の階層に、個々のリソースの情報を記述します。updatable_fieldsは、APIで作成や変更ができるフィールドの情報を表します。fieldsは個々のフィールドの出力方法を表します。リソースの定義の仕方は、lib/MT/DataAPI/Resourcesディレクトリにある.pmファイルを参照してください。