メインコンテンツまでスキップ

invento API

1. API のご利用方法

1.1 API キーの取得

API キーを作成するためには、オーナーもしくは管理者権限を持つユーザーでログインしてください。 API キーはサイドメニューの「設定」 -> 「API 接続設定」のページから取得できます。

1.2 本番環境とテスト環境

「API 接続設定」ページでは、本番環境とテスト環境を切り替えることができます。 テスト環境用の API キーを取得するには、テスト環境に切り替えてから API キーの新規発行ボタンを押してください。

テスト環境用の API キーを用いて、API を実行すると、テスト環境のデータが操作されます。この操作は、本番環境には影響しません。

今利用している環境がテスト環境の場合、画面上部に以下のような「テスト環境」という目印が表示されます。

2. API リファレンス

ヘルスチェック API

GET/api/v1/health
APIサーバのヘルスチェック
APIパラメータ
パラメータ名場所必須/任意コメント
無し
レスポンス スキーマ
{
    "text": "string"
}

伝票 API

GET/api/v1/receipt/[:receipt_id]
IDで指定された伝票を取得する
APIパラメータ
パラメータ名場所必須/任意コメント
receipt_idnumberpath必須取得する伝票のID
レスポンス スキーマ
{
    "id": "number",
    "createdAt": "Date",
    "updatedAt": "Date",
    "isTest": "boolean",
    "code": "string",
    "state": "ReceiptState",
    "shippingDate": "Date",
    "shippedDate": "Date | null",
    "returningDate": "Date",
    "returnedDate": "Date | null",
    "startDate": "Date",
    "endDate": "Date",
    "customer": {
        "name": "string"
    },
    "receiptItems": [
        {
            "id": "number",
            "productId": "number",
            "receiptId": "number",
            "stockId": "number",
            "createdAt": "Date",
            "updatedAt": "Date",
            "pricePerNight": "number",
            "afterCareDays": "number",
            "returnedState": "StockState"
        }
    ]
}
POST/api/v1/receipt
伝票を新規作成する
APIパラメータ
パラメータ名場所必須/任意コメント
codestringbody任意伝票コード。空の場合は自動的に伝票コードが作成されます。
customerstringbody必須伝票に載せる顧客名
startDatestringbody必須レンタル開始日
endDatestringbody必須レンタル終了日
shippingDatestringbody必須発送予定日
returningDatestringbody必須返却予定日
receiptItemsArray<object>body必須伝票に記載する商品情報リスト
productIdnumberbody必須レンタル対象の商品ID
stockIdnumberbody任意出荷予定の在庫。伝票作成時に決まっていなければ不要
pricePerNightnumberbody必須一泊あたり料金
afterCareDaysnumberbody必須返却後、再度レンタル可能になるまでに必要な日数
receiptOutSourceItemsArray<object>body必須伝票に記載する外注レンタル商品情報リスト
productNamenumberbody必須外注レンタルする商品名
subcontractorIdnumberbody必須外注先ID
orderCodestringbody任意外注レンタル時の注文コード
commentnumberbody任意伝票に記載するコメント
リクエストBody例
{
    "customer": "test",
    "startDate": "2022-12-20",
    "endDate": "2022-12-23",
    "shippingDate": "2022-12-19",
    "returningDate": "2022-12-24",
    "receiptItems": [
        {
            "productId": 2,
            "pricePerNight": 1000,
            "afterCareDays": 0
        }
    ],
    "receiptOutSourceItems": [
        {
            "productName": "外注商品名",
            "subcontractorId": 1,
            "pricePerNight": 1000,
            "orderCode": "001-0001"
        }
    ]
}
レスポンス スキーマ
{
    "id": "number",
    "code": "string"
}
GET/api/v1/receipt/list
伝票の一覧を取得する
APIパラメータ
パラメータ名場所必須/任意コメント
cursornumberquery任意取得する伝票リストのページネーション番号
レスポンス スキーマ
{
    "maxCursor": "number",
    "nextCursor": "number",
    "count": "number",
    "data": [
        {
            "id": "number",
            "createdAt": "Date",
            "updatedAt": "Date",
            "isTest": "boolean",
            "code": "string",
            "state": "ReceiptState",
            "shippingDate": "Date",
            "shippedDate": "Date | null",
            "returningDate": "Date",
            "returnedDate": "Date | null",
            "startDate": "Date",
            "endDate": "Date",
            "customer": {
                "name": "string"
            },
            "receiptItems": [
                {
                    "id": "number",
                    "productId": "number",
                    "receiptId": "number",
                    "stockId": "number",
                    "createdAt": "Date",
                    "updatedAt": "Date",
                    "pricePerNight": "number",
                    "afterCareDays": "number",
                    "returnedState": "StockState"
                }
            ]
        }
    ]
}

在庫 API

GET/api/v1/stock/[:stock_id]
IDで指定された在庫を取得する
APIパラメータ
パラメータ名場所必須/任意コメント
stock_idnumberpath任意取得する在庫のID
レスポンス スキーマ
{
    "id": "number",
    "createdAt": "Date",
    "updatedAt": "Date",
    "name": "string",
    "code": "string",
    "pricePerNight": "number",
    "priceReference": "number",
    "afterCareDays": "number",
    "isTest": "boolean"
}
GET/api/v1/stock/list
在庫の一覧を取得する
APIパラメータ
パラメータ名場所必須/任意コメント
cursorquery任意在庫リストのページネーション番号
レスポンス スキーマ
{
    "nextCursor": "number",
    "maxCursot": "number",
    "count": "number",
    "data": [
        {
            "id": "number",
            "createdAt": "Date",
            "updatedAt": "Date",
            "name": "string",
            "code": "string",
            "pricePerNight": "number",
            "priceReference": "number",
            "afterCareDays": "number",
            "isTest": "boolean"
        }
    ]
}

商品マスタ API

GET/api/v1/product/[:product_id]
IDで指定された商品マスタを取得する
APIパラメータ
パラメータ名場所必須/任意コメント
product_idnumberpath任意取得する商品マスタのID
レスポンス スキーマ
{
    "id": "number",
    "createdAt": "Date",
    "updatedAt": "Date",
    "name": "string",
    "code": "string",
    "pricePerNight": "number",
    "priceReference": "number",
    "afterCareDays": "number",
    "isTest": "boolean"
}
GET/api/v1/product/list
商品マスタの一覧を取得する
APIパラメータ
パラメータ名場所必須/任意コメント
cursornumberquery任意取得する商品マスタリストのページネーション番号
レスポンス スキーマ
{
    "nextCursor": "number",
    "maxCursor": "number",
    "count": "number",
    "data": [
        {
            "id": "number",
            "createdAt": "Date",
            "updatedAt": "Date",
            "name": "string",
            "code": "string",
            "pricePerNight": "number",
            "priceReference": "number",
            "afterCareDays": "number",
            "isTest": "boolean"
        }
    ]
}

外注レンタル先 API

GET/api/v1/subcontractor/[:subcontractor_id]
IDで指定された外注レンタル先を取得する
APIパラメータ
パラメータ名場所必須/任意コメント
subcontractor_idnumberpath任意取得する外注レンタル先のID
レスポンス スキーマ
{
    "id": 1,
    "createdAt": "2023-03-15T04:59:45.320Z",
    "updatedAt": "2023-03-15T05:11:08.226Z",
    "name": "外注レンタル先1",
    "address": {
        "id": 1,
        "createdAt": "2023-03-15T05:11:08.226Z",
        "updatedAt": "2023-03-15T05:11:08.226Z",
        "zipCode": "150-0001",
        "country": "JP",
        "prefecture": {
            "name": "東京都"
        },
        "city": "渋谷区",
        "street": "神宮前",
        "building": null
    },
    "comment": null,
    "isTest": false
}
GET/api/v1/subcontractor/list
外注レンタル先の一覧を取得する
APIパラメータ
パラメータ名場所必須/任意コメント
cursornumberquery任意取得する外注レンタル先リストのページネーション番号
レスポンス スキーマ
{
    "nextCursor": -1,
    "maxCursor": 1,
    "count": 2,
    "data": [
        {
            "id": 1,
            "createdAt": "2023-03-15T04:59:45.320Z",
            "updatedAt": "2023-03-15T05:11:08.226Z",
            "name": "外注レンタル先1",
            "address": {
                "id": 1,
                "createdAt": "2023-03-15T05:11:08.226Z",
                "updatedAt": "2023-03-15T05:11:08.226Z",
                "zipCode": "150-0001",
                "country": "JP",
                "prefecture": {
                    "name": "東京都"
                },
                "city": "渋谷区",
                "street": "神宮前",
                "building": null
            },
            "comment": null,
            "isTest": false
        },
        {
            "id": 2,
            "createdAt": "2023-03-15T04:42:05.216Z",
            "updatedAt": "2023-03-15T05:10:50.023Z",
            "name": "外注レンタル先2",
            "address": null,
            "comment": null,
            "isTest": false
        }
    ]
}