APIリファレンス
DigiFAXではFAX送信のためのAPIを提供しています。
例えば業務システムとDigiFAXをAPIで連携させることで、管理・スケジュール化された環境で所定の宛先に対して連続してFAXを送信などすることができます。既にオンプレ等でFAXサーバをお持ちのお客様などでコスト削減のための移行先としてインターネットFAXを検討されている場合などにDigiFAXのAPI連携をご検討ください。
(2024/6/1)APIは現在テスト提供中により仕様は随時追加、変更される可能性がありますのでご注意ください。何かお気づきの点がございましたらサポートまでご連絡ください。
はじめに
APIはFAX送信専用です。
- APIを利用するにはまずユーザ登録、次いで送受信プランへの変更が必要です。
- APIはFAX送信専用ですので、例えば登録メールアドレスの変更やパスワード変更など一部参照を除きDigiFAX自体の管理操作はできません。
- APIは6/1以降のお客様だけではなく既に送受信プランをご利用のお客様も利用することができます。
- 送信だけプランのお客様へのAPI提供は別途検討中ですが、現状APIを利用されたい場合は送受信プランへの切り替えをお願いします。
- APIは現時点ではFAX受信には対応していません
リクエスト
httpsでのアクセス、及び認証のためのAPIキーが必要です。
- プロトコルはhttpsのみをサポートしています。
- 後述の各URLではGET、POSTのいずれかまたは両方をサポートしています。
- 送信するデータがある場合、GETの場合はクエリーパラメータで、
POSTの場合はx-www-form-urlencoded(FAXのファイルについてはmultipart/form-dataのみ)のボディで送信をお願いします
- 後述の各URLにアクセスするための認証情報として各お客様固有のAPIキーが必要になります。
https://digifax.jp/fax/apiより発行してください(当該URLへのアクセスは送受信プランのお客様のみ可能です)
- APIキーは大文字小文字の英字+数字を組み合わせた完全ランダムな24文字から構成されます。
- APIキーはhttpのX-API-KEYヘッダーにセットして各リクエストを発行してください。
例としてAPIキーが"roU5zFgxVOJWCReiKtvsBZb"である場合のcurlでの実行結果は以下のようになります。
例) curl -H "X-API-KEY: roU5zFgxVOJWCReiKtvsBZbM" 〜
- リクエストにAPIキーがセットされていない、又はキーが間違っていると以下のレスポンスが返ってきます。
{ "status": false, "created": 1716775401, "message": "Invalid API key " }
レスポンス
デフォルトではjsonで返ってきます。
- レスポンス内容はデフォルトでは"Content-Type: application/json"で返されます(文字コードはUTF-8)
- GETに関してはクエリーとしてformat=xmlなどと設定することでレスポンスのフォーマットを変更することができます。
サポートしているのはjson(デフォルト),csv,html,serialized,xmlです。例としてXMLとしたい場合のcurlでの実行結果は以下のようになります。
実行例: curl -H "X-API-KEY: APIキー" "https://digifax.jp/apiv1/accounts?format=xml"
応答例:
<?xml version="1.0" encoding="utf-8"?><xml><status>1</status><created>1717125568</created><userid>1</userid><username>testuser</username><email>support@digifax.jp</email><plan>sendandreceive</plan><faxnumber>050xxxxyyyy</faxnumber></xml>
- レスポンスにはstatusとしてtrue/1(成功) or false/0(失敗)、createdとして日付情報がUNIXタイムスタンプで含まれます。
アカウント情報の確認
GET https://digifax.jp/apiv1/accounts
- DigiFAXに登録されているアカウント情報の確認ができます。APIの接続確認目的としてもご利用ください。
- 以下はcurlを使った実行例、及び応答例です。
実行例: curl -H "X-API-KEY: APIキー" https://digifax.jp/apiv1/accounts
応答例: { "status": true, "created": 1716774037, "userid": "1", "username": "testuser", "email": "support@digifax.jp", "plan": "sendandreceive", "faxnumber": "050xxxxyyyy" }
- 応答パラメータの説明
- userid : お客様に割り当てられたDigiFAXの中でユニークなIDです
- username : ユーザ登録の際にお客様の方で入力されたユーザ名です
- email : ユーザ登録の際にお客様の方で入力されたメールアドレスです
- plan : お客様が現在ご利用のプランです
- faxnumber : お客様が現在ご利用のFAX番号です
- POSTは現状サポートしていません(POSTでの内容更新はできませんので、例えばメールアドレスの変更はWebよりログインしてお願いします)
クレジットの合計残高の確認
GET https://digifax.jp/apiv1/credits
- FAX送信に必要なクレジットの合計残高の確認ができます。
- 以下はcurlを使った実行例、及び応答例です。
実行例: curl -H "X-API-KEY: APIキー" https://digifax.jp/apiv1/credits
応答例: { "status": true, "created": 1716774037, "totalcredit": "3000"}
- 応答パラメータの説明
- totalcredit : 購入したクレジットの中で現在有効な残高を全て合計した数値のみが表示されます。
- 過去に購入したクレジット個別の残高状況は後述の"クレジットの購入履歴確認"のURLより確認をお願いします。
クレジットの購入
POST https://digifax.jp/apiv1/credits
- FAX送信に必要なクレジットの購入ができます。
- 送信するパラメータとしてbuycreditのキーと値に購入単位を入力してPOSTでリクエストしてください。
- 購入可能な単位はWebから行うのと同じく500,1000,3000,5000です。これ以上を購入ご希望の場合はサポートまで個別にご連絡ください。
- 以下はcurlを使った実行例、及び応答例です。
実行例: curl -H "X-API-KEY: APIキー" -d "buycredit=500" https://digifax.jp/apiv1/credits
応答例: { "status": true, "created": 1716774037, "addedcredit": "500"}
- 応答パラメータの説明
- addedcredit : 追加で購入されたクレジットの数値のみが表示されます。
クレジットの購入履歴確認
GET https://digifax.jp/apiv1/creditshistory
- 過去に購入したクレジットの履歴が確認できます。確認できる内容としてはWebから見た時の情報とほぼ同じとなります。
- デフォルトで表示件数の最大を10としています。全部を確認したい場合はクエリーパラメータとしてshow=allを入力してください
- 以下はcurlを使った実行例、及び応答例です。デフォルトのjsonではmemoの日本語表示はUTF-8となりますので、jsonデータを処理する際に日本語表示を行なってください。
実行例: curl -H "X-API-KEY: APIキー" https://digifax.jp/apiv1/creditshistory(全件表示は ?show=all を追加)
応答例:
[{"status":true,"created":1717277239,"id":"1656","purchasedate":"2024\/04\/05 16:17","purchasecredit":"50","validdate":"2025\/04\/05 16:17","validcredit":"50","memo":"\u65e5\u672c\u8a9e3"}]
- 応答パラメータの説明
- id : 履歴の件数1つ1つに割り当てられたユニークなID番号です。
- purchasedate : クレジットの購入日です
- purchasecredit : 購入されたクレジット数です
- validdate : 購入されたクレジットの有効期限です。購入日から1年後です。
- validcredit : 残っている有効なクレジット数です。
- memo : 自由記述の可能なメモ項目です。
- 〜creditshistory/countとすると履歴全件の件数確認もできます
実行例: curl -H "X-API-KEY: APIキー" https://digifax.jp/apiv1/creditshistory/count
応答例: { "status": true, "created": 1716774037, "number": "8"}
- 応答パラメータの説明
- number : 履歴の合計件数の数値のみが表示されます。
クレジットの購入履歴のメモ更新
POST https://digifax.jp/apiv1/creditshistory
- クレジットの購入履歴で確認できるメモ部分の更新ができます。
- 送信するパラメータとしてidのキーに値として履歴から確認できるユニークなid番号、及びmemoのキーと値に日本語か英語を入力してPOSTでリクエストしてください。
- 以下はcurlを使った実行例、及び応答例です。
実行例: curl -H "X-API-KEY: APIキー" -d "id=1656&memo=日本語" https://digifax.jp/apiv1/creditshistory
応答例: { "status": true, "created": 1716774037, "id": 1656, "updatedmemo": "\u65e5\u672c\u8a9e"}
- 応答パラメータの説明
- id : 履歴の件数1つ1つに割り当てられたユニークなID番号です。
- updatedmemo : 更新された自由記述の可能なメモ項目です。
FAXの送信
POST https://digifax.jp/apiv1/send
- FAX送信が可能です。
- 1つのリクエストにつき送信先のFAX番号を1つ、送信するファイルを1つ入力する必要があります。
- 送信するパラメータとしてfaxdstキーに値として送信先FAX番号、faxfileキーに送信するファイルを入力してPOSTでリクエストしてください。ヘッダ情報としてfaxheaderパラメータに送信元情報など文字を入力することもできます(Webから行うのと同様にヘッダに日本語は入力できませんのでご注意ください)
- 異なる送信先に同じファイルを多く送りたい、または同じ送信先に異なるファイルを多く送りたい場合などは、それぞれで1つのリクエストを発行してください。
- 送信ファイルとしてアップロードできるファイルの形式(ファイルの拡張子)は、pdf,jpg,jpeg,png,tif,tiffのいずれかとなっています。
- 送信ファイルでアップロード可能な最大ファイルサイズは2メガバイト(2,000,000バイト)となっています。
- 送信先FAX番号として110,119,117,177の3桁特番、0120,0180,0570,0990,0800の4桁特番はキャリアの制限により指定できません。
- 以下はcurlを使った実行例、及び応答例です。
実行例: curl -H "X-API-KEY: APIキー" -F “faxdst=0aabbbbcccc" -F "faxfile=@/tmp/sample.pdf" -F "faxheader=from digifax" https://digifax.jp/apiv1/fax/send
応答例:
{"status":true,"created":1717382472,"message":"sample.pdf is now being processed for fax sending","fee":"20","page":"1","cost":20}
- 応答パラメータの説明
- message : 送信されたファイル名が処理中であることが表示されます。
- fee : ご利用のプランでの1枚あたりの必要クレジット数です
- page : 送信されたファイルのページ数です。
- cost : 消費されるクレジット数です。fee x pageの数値となります。
- FAX送信が完了した際は、Webから行うのと同様に登録メールアドレス宛にメールが送信されます。
- GETは現状サポートしていません。
FAXの送信履歴確認
GET https://digifax.jp/apiv1/sendhistory
- 送信したFAXの履歴が確認できます。確認できる内容としてはWebから見た時の情報とほぼ同じとなります。
- デフォルトで表示件数の最大を10としています。全部を確認したい場合はクエリーパラメータとしてshow=allを入力してください
- 以下はcurlを使った実行例、及び応答例です。デフォルトのjsonではmemoの日本語表示はUTF-8となりますので、jsonデータを処理する際に日本語表示を行なってください。
実行例: curl -H "X-API-KEY: APIキー" https://digifax.jp/apiv1/sendhistory(全件表示は ?show=all を追加)
応答例: [{ "status": true, "created": 1716774037,
"id": "11881",
"senddate": "2024\/05\/23 14:02",
"senddestination": "0311112222",
"sendstatus": "Completed",
"sendfile": "1716440528-faxtestfile.pdf",
"memo": "DDDD"}]
- 応答パラメータの説明
- id : 履歴の件数1つ1つに割り当てられたユニークなID番号です。
- senddate : FAX送信された日時です。
- senddestination : FAX送信された宛先です
- sendstatus : 送信のステータスです
- sendfile : 送信されたファイルです
- memo : 自由記述の可能なメモ項目です。
- 〜sendhistory/countとすると履歴全件の件数確認もできます
実行例: curl -H "X-API-KEY: APIキー" https://digifax.jp/apiv1/sendhistory/count
応答例: { "status": true, "created": 1716774037, "number": "10"}
- 応答パラメータの説明
- number : 履歴の合計件数の数値のみが表示されます。
FAXの送信履歴のメモ更新
POST https://digifax.jp/apiv1/sendhistory
- FAXの送信履歴で確認できるメモ部分の更新ができます。
- 送信するパラメータとしてidのキーに値として履歴から確認できるユニークなid番号、及びmemoのキーと値に日本語か英語を入力してPOSTでリクエストしてください。
- 以下はcurlを使った実行例、及び応答例です。
実行例: curl -H "X-API-KEY: APIキー" -d "id=1657&memo=日本語" https://digifax.jp/apiv1/sendhistory
応答例: { "status": true, "created": 1716774037, "id": 1657, "updatedmemo": "\u65e5\u672c\u8a9e"}
- 応答パラメータの説明
- id : 履歴の件数1つ1つに割り当てられたユニークなID番号です。
- updatedmemo : 更新された自由記述の可能なメモ項目です。