{
  "swagger": "2.0",
  "info": {
    "title": "Scalebase API",
    "description": "**Scalebaseへ接続するAPIのリファレンスです**\n## API利用規約\n[API利用規約はこちら](https://scalebase.com/terms/api/)\n## Scalebaseヘルプ\nScalebaseの製品・概念説明、基本操作方法などについては [こちら](https://alpinc.notion.site/Scalebase-7aa524f5cbea43d2a57d0304b9a4051c) をご確認ください\n## APIエンドポイント\n### Sandbox  \n```https://api.sandbox.scalebase.com```  \n### Production  \n```https://api.scalebase.com``` \n## APIキー\nScalebase上で発行したAPIキーをBearer Tokenとして設定することでリクエスト可能です。\nAPIキーの作成は[こちら](https://dashboard.scalebase.com/settings/cooperationservice/apikey)から\n## リクエスト\n### レートリミットについて\nお客様ごとの環境1つで実行される全API合計で `50req / min` となります。リクエスト数の上限緩和などはご相談ください\n### 日時を指定するパラメータについて\n[RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) のフォーマットの日時を指定できます(タイムゾーンも指定可)。  \n`$ date --iso-8601=seconds`  \n`2000-01-23T12:34:56+09:00`  \nリクエストされた時刻はJSTとして解釈します\n## レスポンス\n### エラー情報について\n- `code` [gRPC Status Code](https://grpc.github.io/grpc/core/md_doc_statuscodes.html)に従います\n- `message` サーバーからのメッセージが入ります\n- `detail` オブジェクトのjsonが入ります\n\n### 日時を返却するパラメータについて\n日時に関するレスポンスは、[RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) のフォーマットで返却され [Protocol Buffers Json Mapping](https://protobuf.dev/programming-guides/proto3/#json) に従い、常にUTC(Zulu time)で正規化され返却されます。  \n\n## AI/LLM向けドキュメント\nAIエージェントやコーディングアシスタントでAPI仕様を参照する場合は、以下のファイルをご利用ください。\n- [llms.txt](./llms.txt) - API概要サマリ（軽量版）\n- [llms-full.txt](./llms-full.txt) - 全エンドポイント詳細\n- [openapi.json](./openapi.json) - OpenAPI仕様（JSON）\n",
    "version": "1.0.0",
    "license": {
      "name": "Apache License 2.0",
      "url": "https://www.apache.org/licenses/LICENSE-2.0"
    },
    "x-logo": {
      "url": "./logo.svg"
    }
  },
  "tags": [
    {
      "name": "scalebase.public.v1.AmendmentService",
      "x-displayName": "Amendment V1"
    },
    {
      "name": "scalebase.public.v1.BillingService",
      "x-displayName": "Billing"
    },
    {
      "name": "scalebase.public.v1.CatalogItemService",
      "x-displayName": "CatalogItem"
    },
    {
      "name": "scalebase.public.v1.ContractService",
      "x-displayName": "Contract V1"
    },
    {
      "name": "scalebase.public.v1.CustomerService",
      "x-displayName": "Customer"
    },
    {
      "name": "scalebase.public.v1.CustomerStaffService",
      "x-displayName": "CustomerStaff"
    },
    {
      "name": "scalebase.public.v1.CustomFieldService",
      "x-displayName": "CustomField"
    },
    {
      "name": "scalebase.public.v1.ExpectedBillingService",
      "x-displayName": "ExpectedBilling"
    },
    {
      "name": "scalebase.public.v1.FincodeService",
      "x-displayName": "Fincode"
    },
    {
      "name": "scalebase.public.v1.PaymentMethodService",
      "x-displayName": "PaymentMethod"
    },
    {
      "name": "scalebase.public.v1.ProductService",
      "x-displayName": "Product"
    },
    {
      "name": "scalebase.public.v1.ProviderService",
      "x-displayName": "Provider"
    },
    {
      "name": "scalebase.public.v1.UsageService",
      "x-displayName": "Usage"
    },
    {
      "name": "scalebase.public.v1.ZzHealthService",
      "x-displayName": "ZzHealth"
    },
    {
      "name": "scalebase.public.v2.AmendmentService",
      "x-displayName": "Amendment V2"
    },
    {
      "name": "scalebase.public.v2.ContractService",
      "x-displayName": "Contract V2"
    }
  ],
  "schemes": [
    "https"
  ],
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "paths": {
    "/hc": {
      "get": {
        "summary": "ヘルスチェック",
        "description": "APIの稼働状況を確認します。",
        "operationId": "ZzHealthService_Check2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/public.v1.CheckResponse"
            }
          }
        },
        "tags": [
          "scalebase.public.v1.ZzHealthService"
        ]
      }
    },
    "/v1/amendment/addoptionitem": {
      "post": {
        "summary": "オプションアイテムの追加",
        "description": "指定したカタログアイテムをオプションアイテムとして契約に追加します。",
        "operationId": "V1_AmendmentService_AddOptionItem",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/AddOptionItemResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AddOptionItemRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/cancelamendment": {
      "post": {
        "summary": "改定の取消",
        "description": "指定した改定を取り消します",
        "operationId": "V1_AmendmentService_CancelAmendment",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/CancelAmendmentResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CancelAmendmentRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/cancelcontract": {
      "post": {
        "summary": "契約の解約",
        "description": "指定した契約を途中解約します",
        "operationId": "V1_AmendmentService_CancelContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/CancelContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CancelContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/canceloption": {
      "post": {
        "summary": "オプションアイテムの解約",
        "description": "指定したオプションアイテムを途中解約します",
        "operationId": "V1_AmendmentService_CancelOption",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/CancelOptionResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CancelOptionRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/changemainitem": {
      "post": {
        "summary": "メインアイテムの乗り換え",
        "description": "指定したメインアイテムに乗り換えます",
        "operationId": "V1_AmendmentService_ChangeMainItem",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ChangeMainItemResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ChangeMainItemRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/changeoptionitem": {
      "post": {
        "summary": "オプションアイテムの乗り換え",
        "description": "指定したオプションアイテムを別のオプションアイテムに乗り換えます。別カタログ・同一カタログ双方へ乗り換え可能です。",
        "operationId": "V1_AmendmentService_ChangeOptionItem",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ChangeOptionItemResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ChangeOptionItemRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/changequantity": {
      "post": {
        "summary": "契約アイテムの契約数の更新",
        "description": "指定した契約アイテムの契約数を更新します。",
        "operationId": "V1_AmendmentService_ChangeQuantity",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ChangeQuantityResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ChangeQuantityRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/customizeoptionitem": {
      "post": {
        "summary": "オプションアイテムの編集",
        "description": "指定したオプションアイテムを編集します",
        "operationId": "V1_AmendmentService_CustomizeOptionItem",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/CustomizeOptionItemResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CustomizeOptionItemRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/list": {
      "get": {
        "summary": "改定の一覧取得",
        "description": "プロバイダーに紐づく改定の一覧を取得します",
        "operationId": "V1_AmendmentService_ListAmendments2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListAmendmentsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int32"
          },
          {
            "name": "orderBy.field",
            "description": " - FIELD_ID: ID\n - FIELD_EXECUTE_DATE: 改定実行日\n - FIELD_EFFECTIVE_START_DATE: 改定の有効開始日",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "FIELD_UNSPECIFIED",
              "FIELD_ID",
              "FIELD_EXECUTE_DATE",
              "FIELD_EFFECTIVE_START_DATE"
            ],
            "default": "FIELD_UNSPECIFIED"
          },
          {
            "name": "orderBy.direction",
            "description": " - DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "DIRECTION_UNSPECIFIED",
              "DIRECTION_ASCENDING",
              "DIRECTION_DESCENDING"
            ],
            "default": "DIRECTION_UNSPECIFIED"
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      },
      "post": {
        "summary": "改定の一覧取得",
        "description": "プロバイダーに紐づく改定の一覧を取得します",
        "operationId": "V1_AmendmentService_ListAmendments",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListAmendmentsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListAmendmentsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/listbycontract": {
      "get": {
        "summary": "契約に紐づく改定の一覧取得",
        "description": "契約に紐づく改定を一覧取得します。",
        "operationId": "V1_AmendmentService_ListAmendmentsByContract2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListAmendmentsByContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "契約ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "optionalId",
            "description": "契約管理ID(契約IDの代わりに指定可)",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      },
      "post": {
        "summary": "契約に紐づく改定の一覧取得",
        "description": "契約に紐づく改定を一覧取得します。",
        "operationId": "V1_AmendmentService_ListAmendmentsByContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListAmendmentsByContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListAmendmentsByContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/listbycontractoptionalid": {
      "get": {
        "summary": "契約管理IDに紐づく改定の一覧取得",
        "description": "契約管理IDに紐づく改定を一覧取得します。",
        "operationId": "V1_AmendmentService_ListAmendmentsByContractOptionalId2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListAmendmentsByContractOptionalIdResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "contractOptionalId",
            "description": "契約管理ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      },
      "post": {
        "summary": "契約管理IDに紐づく改定の一覧取得",
        "description": "契約管理IDに紐づく改定を一覧取得します。",
        "operationId": "V1_AmendmentService_ListAmendmentsByContractOptionalId",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListAmendmentsByContractOptionalIdResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListAmendmentsByContractOptionalIdRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/amendment/renewcontractitem": {
      "post": {
        "summary": "契約アイテムの更新",
        "description": "指定した契約アイテムを更新します。",
        "operationId": "V1_AmendmentService_RenewContractItem",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/RenewContractItemResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/RenewContractItemRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.AmendmentService"
        ]
      }
    },
    "/v1/billing/batchrecordpayments": {
      "post": {
        "summary": "一括入金処理",
        "description": "複数の請求に対して入金を記録します。",
        "operationId": "V1_BillingService_BatchRecordPayments",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/BatchRecordPaymentsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/BatchRecordPaymentsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      }
    },
    "/v1/billing/batchupdatestatuses": {
      "post": {
        "summary": "請求ステータスの一括更新",
        "description": "複数の請求のステータスを一括で変更します。",
        "operationId": "V1_BillingService_BatchUpdateBillingStatuses",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/BatchUpdateBillingStatusesResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/BatchUpdateBillingStatusesRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      }
    },
    "/v1/billing/create": {
      "post": {
        "summary": "請求の生成",
        "description": "指定された契約から請求を生成します。",
        "operationId": "V1_BillingService_CreateBillings",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/CreateBillingsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CreateBillingsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      }
    },
    "/v1/billing/get": {
      "get": {
        "summary": "請求の取得",
        "description": "指定した請求を取得します。",
        "operationId": "V1_BillingService_GetBilling2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetBillingResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "請求ID",
            "in": "query",
            "required": true,
            "type": "string"
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      },
      "post": {
        "summary": "請求の取得",
        "description": "指定した請求を取得します。",
        "operationId": "V1_BillingService_GetBilling",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetBillingResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/GetBillingRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      }
    },
    "/v1/billing/list": {
      "get": {
        "summary": "請求の一覧取得",
        "description": "請求の一覧を取得します。",
        "operationId": "V1_BillingService_ListBillings2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListBillingsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      },
      "post": {
        "summary": "請求の一覧取得",
        "description": "請求の一覧を取得します。",
        "operationId": "V1_BillingService_ListBillings",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListBillingsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListBillingsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      }
    },
    "/v1/billing/listbycontract": {
      "get": {
        "summary": "契約に紐づく請求の一覧取得",
        "description": "指定された顧客に紐づく請求の一覧を取得します。",
        "operationId": "V1_BillingService_ListBillingsByContract2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListBillingsByContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "契約ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "optionalId",
            "description": "契約管理ID(契約IDの代わりに指定可)",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          },
          {
            "name": "orderBy.field",
            "description": " - FIELD_ID: 請求ID\n - FIELD_BILLING_DATE: 請求日",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "FIELD_UNSPECIFIED",
              "FIELD_ID",
              "FIELD_BILLING_DATE"
            ],
            "default": "FIELD_UNSPECIFIED"
          },
          {
            "name": "orderBy.direction",
            "description": " - DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "DIRECTION_UNSPECIFIED",
              "DIRECTION_ASCENDING",
              "DIRECTION_DESCENDING"
            ],
            "default": "DIRECTION_UNSPECIFIED"
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      },
      "post": {
        "summary": "契約に紐づく請求の一覧取得",
        "description": "指定された顧客に紐づく請求の一覧を取得します。",
        "operationId": "V1_BillingService_ListBillingsByContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListBillingsByContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListBillingsByContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      }
    },
    "/v1/billing/search": {
      "get": {
        "summary": "請求の検索",
        "description": "請求を検索して一覧を取得します。",
        "operationId": "V1_BillingService_SearchBillings2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/SearchBillingsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int32"
          },
          {
            "name": "query",
            "description": "検索クエリ\nexample:\n```\nstatus=STATUS_UNBILLED\n```\n\nstatus:\n[`any`|`*`|下記のパターン] が指定可能\n```\nSTATUS_UNSPECIFIED\nSTATUS_HOLD_INVOICE_CREATION\nSTATUS_UNBILLED\nSTATUS_POSTED\nSTATUS_PARTIALLY_PAID\nSTATUS_PAID\nSTATUS_PAYMENT_EXCLUDED\nSTATUS_PAYMENT_DUE\nSTATUS_PAYMENT_UNNECESSARY\nSTATUS_PARTIALLY_UNPAID\nSTATUS_PAYMENT_REFUNDED\nSTATUS_PAID_WITH_CARD\nSTATUS_INVOICE_CREATED\nSTATUS_INVOICE_DELETED\nSTATUS_INVALIDATED\nSTATUS_ANY\n```",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "orderBy.field",
            "description": " - FIELD_ID: 請求ID\n - FIELD_BILLING_DATE: 請求日",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "FIELD_UNSPECIFIED",
              "FIELD_ID",
              "FIELD_BILLING_DATE"
            ],
            "default": "FIELD_UNSPECIFIED"
          },
          {
            "name": "orderBy.direction",
            "description": " - DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "DIRECTION_UNSPECIFIED",
              "DIRECTION_ASCENDING",
              "DIRECTION_DESCENDING"
            ],
            "default": "DIRECTION_UNSPECIFIED"
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      },
      "post": {
        "summary": "請求の検索",
        "description": "請求を検索して一覧を取得します。",
        "operationId": "V1_BillingService_SearchBillings",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/SearchBillingsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/SearchBillingsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.BillingService"
        ]
      }
    },
    "/v1/catalogitem/get": {
      "get": {
        "summary": "カタログアイテムの取得",
        "description": "指定したカタログアイテムを取得します。",
        "operationId": "V1_CatalogItemService_GetCatalogItem2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetCatalogItemResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "カタログアイテムID",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "optionalId",
            "description": "カタログアイテム管理ID(カタログアイテムIDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          }
        ],
        "tags": [
          "scalebase.public.v1.CatalogItemService"
        ]
      },
      "post": {
        "summary": "カタログアイテムの取得",
        "description": "指定したカタログアイテムを取得します。",
        "operationId": "V1_CatalogItemService_GetCatalogItem",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetCatalogItemResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/GetCatalogItemRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CatalogItemService"
        ]
      }
    },
    "/v1/catalogitem/list": {
      "get": {
        "summary": "カタログアイテムの一覧取得",
        "description": "カタログアイテムの一覧を取得します。",
        "operationId": "V1_CatalogItemService_ListCatalogItems2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListCatalogItemsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.CatalogItemService"
        ]
      },
      "post": {
        "summary": "カタログアイテムの一覧取得",
        "description": "カタログアイテムの一覧を取得します。",
        "operationId": "V1_CatalogItemService_ListCatalogItems",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListCatalogItemsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListCatalogItemsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CatalogItemService"
        ]
      }
    },
    "/v1/contract/alias": {
      "post": {
        "summary": "契約管理ID変更",
        "description": "契約管理IDを変更する",
        "operationId": "V1_ContractService_AliasContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/AliasContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AliasContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      }
    },
    "/v1/contract/confirmdraft": {
      "post": {
        "summary": "契約の下書き解除",
        "description": "下書き状態の契約を確定し、通常の契約にします。\n既に下書きが解除された契約に対して実行した場合も正常に完了します（冪等）。\nこの操作は不可逆です。一度解除した契約を再び下書きに戻すことはできません。",
        "operationId": "V1_ContractService_ConfirmDraftContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1.ConfirmDraftContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1.ConfirmDraftContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      }
    },
    "/v1/contract/create": {
      "post": {
        "summary": "契約の作成",
        "description": "新規に契約を作成します。\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE",
        "operationId": "V1_ContractService_CreateContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1.CreateContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1.CreateContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      }
    },
    "/v1/contract/get": {
      "get": {
        "summary": "契約の取得",
        "description": "指定されたIDを持つ契約を取得します。",
        "operationId": "V1_ContractService_GetContract2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1.GetContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "契約ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "version",
            "description": "契約バージョン。指定がなければ最新バージョンの契約が返却される",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      },
      "post": {
        "summary": "契約の取得",
        "description": "指定されたIDを持つ契約を取得します。",
        "operationId": "V1_ContractService_GetContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1.GetContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1.GetContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      }
    },
    "/v1/contract/getbyoptionalid": {
      "get": {
        "summary": "契約管理IDを指定した契約の取得",
        "description": "契約管理IDを指定して契約を取得します。",
        "operationId": "V1_ContractService_GetContractByOptionalId2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1.GetContractByOptionalIdResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "optionalId",
            "description": "契約管理ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "version",
            "description": "契約バージョン。指定がなければ最新バージョンの契約が返却される",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      },
      "post": {
        "summary": "契約管理IDを指定した契約の取得",
        "description": "契約管理IDを指定して契約を取得します。",
        "operationId": "V1_ContractService_GetContractByOptionalId",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1.GetContractByOptionalIdResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1.GetContractByOptionalIdRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      }
    },
    "/v1/contract/list": {
      "get": {
        "summary": "契約の一覧取得",
        "description": "契約の一覧を取得します。",
        "operationId": "V1_ContractService_ListContracts2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1.ListContractsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      },
      "post": {
        "summary": "契約の一覧取得",
        "description": "契約の一覧を取得します。",
        "operationId": "V1_ContractService_ListContracts",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1.ListContractsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1.ListContractsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      }
    },
    "/v1/contract/listbycustomer": {
      "get": {
        "summary": "顧客に紐づく契約の一覧取得",
        "description": "顧客に紐づく契約を一覧取得します。",
        "operationId": "V1_ContractService_ListContractsByCustomer2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListContractsByCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "customerId",
            "description": "顧客ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "customerOptionalId",
            "description": "顧客管理ID(顧客IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      },
      "post": {
        "summary": "顧客に紐づく契約の一覧取得",
        "description": "顧客に紐づく契約を一覧取得します。",
        "operationId": "V1_ContractService_ListContractsByCustomer",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListContractsByCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListContractsByCustomerRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      }
    },
    "/v1/contract/listbycustomerid": {
      "get": {
        "summary": "顧客に紐づく契約の一覧取得",
        "description": "顧客に紐づく契約を一覧取得します。",
        "operationId": "V1_ContractService_ListContractsByCustomer4",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListContractsByCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "customerId",
            "description": "顧客ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "customerOptionalId",
            "description": "顧客管理ID(顧客IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      },
      "post": {
        "summary": "顧客に紐づく契約の一覧取得",
        "description": "顧客に紐づく契約を一覧取得します。",
        "operationId": "V1_ContractService_ListContractsByCustomer3",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListContractsByCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListContractsByCustomerRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      }
    },
    "/v1/contract/search": {
      "get": {
        "summary": "契約の検索",
        "description": "契約を検索して一覧を取得します。",
        "operationId": "V1_ContractService_SearchContracts2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/SearchContractsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          },
          {
            "name": "orderBy.field",
            "description": " - FIELD_ID: 請求ID\n - FIELD_CONTRACT_END_DATE: 契約終了日",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "FIELD_UNSPECIFIED",
              "FIELD_ID",
              "FIELD_CONTRACT_END_DATE"
            ],
            "default": "FIELD_UNSPECIFIED"
          },
          {
            "name": "orderBy.direction",
            "description": " - DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "DIRECTION_UNSPECIFIED",
              "DIRECTION_ASCENDING",
              "DIRECTION_DESCENDING"
            ],
            "default": "DIRECTION_UNSPECIFIED"
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      },
      "post": {
        "summary": "契約の検索",
        "description": "契約を検索して一覧を取得します。",
        "operationId": "V1_ContractService_SearchContracts",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/SearchContractsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/SearchContractsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ContractService"
        ]
      }
    },
    "/v1/customer/alias": {
      "post": {
        "summary": "顧客の管理ID更新",
        "description": "顧客の管理IDを更新する",
        "operationId": "V1_CustomerService_AliasCustomer",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/AliasCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AliasCustomerRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerService"
        ]
      }
    },
    "/v1/customer/create": {
      "post": {
        "summary": "顧客の作成",
        "description": "新規に顧客を作成します。",
        "operationId": "V1_CustomerService_CreateCustomer",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/CreateCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CreateCustomerRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerService"
        ]
      }
    },
    "/v1/customer/delete": {
      "post": {
        "summary": "顧客の削除",
        "description": "顧客を削除します。",
        "operationId": "V1_CustomerService_DeleteCustomer",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/DeleteCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/DeleteCustomerRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerService"
        ]
      }
    },
    "/v1/customer/fincode/get": {
      "get": {
        "summary": "fincode顧客の取得",
        "description": "顧客のfincode顧客ID紐づけ情報を取得します。",
        "operationId": "V1_FincodeService_GetLinkedCustomer2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetLinkedCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "customerId",
            "description": "顧客ID",
            "in": "query",
            "required": true,
            "type": "string"
          }
        ],
        "tags": [
          "scalebase.public.v1.FincodeService"
        ]
      },
      "post": {
        "summary": "fincode顧客の取得",
        "description": "顧客のfincode顧客ID紐づけ情報を取得します。",
        "operationId": "V1_FincodeService_GetLinkedCustomer",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetLinkedCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/GetLinkedCustomerRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.FincodeService"
        ]
      }
    },
    "/v1/customer/fincode/link": {
      "post": {
        "summary": "fincode顧客の紐づけ",
        "description": "顧客にfincode顧客IDを紐づけます。\n既に紐づいている場合はエラーを返します（先にUnlinkCustomerで解除してください）。",
        "operationId": "V1_FincodeService_LinkCustomer",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/LinkCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/LinkCustomerRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.FincodeService"
        ]
      }
    },
    "/v1/customer/fincode/unlink": {
      "post": {
        "summary": "fincode顧客の紐づけ解除",
        "description": "顧客のfincode顧客ID紐づけを解除します。",
        "operationId": "V1_FincodeService_UnlinkCustomer",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/UnlinkCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UnlinkCustomerRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.FincodeService"
        ]
      }
    },
    "/v1/customer/get": {
      "get": {
        "summary": "顧客の取得",
        "description": "顧客を取得します。",
        "operationId": "V1_CustomerService_GetCustomer2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "顧客ID",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "optionalId",
            "description": "顧客管理ID(顧客IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "crmAccountId",
            "description": "外部CRMサービスのアカウントID(顧客IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerService"
        ]
      },
      "post": {
        "summary": "顧客の取得",
        "description": "顧客を取得します。",
        "operationId": "V1_CustomerService_GetCustomer",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/GetCustomerRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerService"
        ]
      }
    },
    "/v1/customer/list": {
      "get": {
        "summary": "顧客の一覧取得",
        "description": "顧客の一覧を取得します。",
        "operationId": "V1_CustomerService_ListCustomers2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListCustomersResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerService"
        ]
      },
      "post": {
        "summary": "顧客の一覧取得",
        "description": "顧客の一覧を取得します。",
        "operationId": "V1_CustomerService_ListCustomers",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListCustomersResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListCustomersRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerService"
        ]
      }
    },
    "/v1/customer/update": {
      "patch": {
        "summary": "顧客の更新",
        "description": "顧客を更新します。",
        "operationId": "V1_CustomerService_UpdateCustomer",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/UpdateCustomerResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "customer",
            "description": "顧客",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1.Customer",
              "required": [
                "customer"
              ]
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerService"
        ]
      }
    },
    "/v1/customerstaff/alias": {
      "post": {
        "summary": "顧客担当者の管理ID更新",
        "description": "顧客担当者の管理IDを更新する",
        "operationId": "V1_CustomerStaffService_AliasCustomerStaff",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/AliasCustomerStaffResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AliasCustomerStaffRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerStaffService"
        ]
      }
    },
    "/v1/customerstaff/create": {
      "post": {
        "summary": "顧客担当者の作成",
        "description": "新規に顧客担当者を作成します。",
        "operationId": "V1_CustomerStaffService_CreateCustomerStaff",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/CreateCustomerStaffResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CreateCustomerStaffRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerStaffService"
        ]
      }
    },
    "/v1/customerstaff/delete": {
      "post": {
        "summary": "顧客担当者の削除",
        "description": "顧客担当者を削除します。",
        "operationId": "V1_CustomerStaffService_DeleteCustomerStaff",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/DeleteCustomerStaffResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/DeleteCustomerStaffRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerStaffService"
        ]
      }
    },
    "/v1/customerstaff/get": {
      "get": {
        "summary": "顧客担当者の取得",
        "description": "顧客担当者を取得します。",
        "operationId": "V1_CustomerStaffService_GetCustomerStaff2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetCustomerStaffResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "顧客担当者ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "optionalId",
            "description": "顧客担当者管理ID(顧客担当者IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "crmStaffId",
            "description": "外部CRMサービスの担当者ID(顧客担当者IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "customerId",
            "description": "顧客ID",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "customerOptionalId",
            "description": "顧客管理ID(顧客IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerStaffService"
        ]
      },
      "post": {
        "summary": "顧客担当者の取得",
        "description": "顧客担当者を取得します。",
        "operationId": "V1_CustomerStaffService_GetCustomerStaff",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetCustomerStaffResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/GetCustomerStaffRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerStaffService"
        ]
      }
    },
    "/v1/customerstaff/list": {
      "get": {
        "summary": "顧客担当者の一覧取得",
        "description": "顧客担当者の一覧を取得します。",
        "operationId": "V1_CustomerStaffService_ListCustomerStaffs2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListCustomerStaffsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "customerId",
            "description": "顧客ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "customerOptionalId",
            "description": "顧客管理ID(顧客IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerStaffService"
        ]
      },
      "post": {
        "summary": "顧客担当者の一覧取得",
        "description": "顧客担当者の一覧を取得します。",
        "operationId": "V1_CustomerStaffService_ListCustomerStaffs",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListCustomerStaffsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListCustomerStaffsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerStaffService"
        ]
      }
    },
    "/v1/customerstaff/update": {
      "patch": {
        "summary": "顧客担当者の更新",
        "description": "顧客担当者を更新します。",
        "operationId": "V1_CustomerStaffService_UpdateCustomerStaff",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/UpdateCustomerStaffResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "customerStaff",
            "description": "顧客担当者",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1.CustomerStaff",
              "required": [
                "customerStaff"
              ]
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomerStaffService"
        ]
      }
    },
    "/v1/customfield/master/list": {
      "get": {
        "summary": "カスタムフィールドマスターの一覧取得",
        "description": "カスタムフィールドマスターを一覧取得します。",
        "operationId": "V1_CustomFieldService_ListCustomFieldMasters2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListCustomFieldMastersResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomFieldService"
        ]
      },
      "post": {
        "summary": "カスタムフィールドマスターの一覧取得",
        "description": "カスタムフィールドマスターを一覧取得します。",
        "operationId": "V1_CustomFieldService_ListCustomFieldMasters",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListCustomFieldMastersResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListCustomFieldMastersRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomFieldService"
        ]
      }
    },
    "/v1/customfield/resource/batchupdate": {
      "post": {
        "summary": "カスタムフィールド一括更新",
        "description": "複数リソースのカスタムフィールドを一括で更新します。",
        "operationId": "V1_CustomFieldService_BatchUpdateResources",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/BatchUpdateResourcesResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/BatchUpdateResourcesRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomFieldService"
        ]
      }
    },
    "/v1/customfield/resource/get": {
      "get": {
        "summary": "対象リソースのカスタムフィールド取得",
        "description": "対象リソースのカスタムフィールド取得します。",
        "operationId": "V1_CustomFieldService_GetResource2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetResourceResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "srn.resourceId",
            "description": "リソースID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "srn.resourceType",
            "in": "query",
            "required": true,
            "type": "string",
            "enum": [
              "TYPE_UNSPECIFIED",
              "TYPE_CUSTOMER",
              "TYPE_CONTRACT",
              "TYPE_CONTRACT_SERVICE",
              "TYPE_CONTRACT_ITEM",
              "TYPE_BILLING",
              "TYPE_CATALOG_ITEM"
            ],
            "default": "TYPE_UNSPECIFIED"
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomFieldService"
        ]
      },
      "post": {
        "summary": "対象リソースのカスタムフィールド取得",
        "description": "対象リソースのカスタムフィールド取得します。",
        "operationId": "V1_CustomFieldService_GetResource",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetResourceResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/GetResourceRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomFieldService"
        ]
      }
    },
    "/v1/customfield/resource/update": {
      "patch": {
        "summary": "カスタムフィールド更新",
        "description": "カスタムフィールドの更新を行います。",
        "operationId": "V1_CustomFieldService_UpdateResource",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/UpdateResourceResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "resource",
            "description": "リソース",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/Resource",
              "required": [
                "resource"
              ]
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.CustomFieldService"
        ]
      }
    },
    "/v1/expectedbilling/changequantity": {
      "post": {
        "summary": "契約数変更に伴う請求予定の再計算（単一の請求予定を返す）",
        "description": "注意事項:\n- 契約サービスのメインアイテムに属する課金項目のみ指定が可能です。オプションアイテムの請求予定の取得には現時点で非対応です",
        "operationId": "V1_ExpectedBillingService_ChangeQuantityExpectedBilling",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ChangeQuantityExpectedBillingResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ChangeQuantityExpectedBillingRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ExpectedBillingService"
        ]
      }
    },
    "/v1/expectedbilling/listbycontract": {
      "get": {
        "summary": "請求予定の一覧取得",
        "description": "契約に紐づく請求予定一覧",
        "operationId": "V1_ExpectedBillingService_ListExpectedBillingsByContract2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListExpectedBillingsByContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "契約ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "optionalId",
            "description": "契約管理ID(IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.ExpectedBillingService"
        ]
      },
      "post": {
        "summary": "請求予定の一覧取得",
        "description": "契約に紐づく請求予定一覧",
        "operationId": "V1_ExpectedBillingService_ListExpectedBillingsByContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListExpectedBillingsByContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListExpectedBillingsByContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ExpectedBillingService"
        ]
      }
    },
    "/v1/expectedbilling/renewalwithquantitychange": {
      "post": {
        "summary": "契約更新と数量変更に伴う請求予定の計算",
        "description": "注意事項:\n- 契約サービスのメインアイテムに属する課金項目のみ指定が可能です。オプションアイテムの請求予定の取得には現時点で非対応です",
        "operationId": "V1_ExpectedBillingService_RenewalWithQuantityChangeExpectedBilling",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/RenewalWithQuantityChangeExpectedBillingResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/RenewalWithQuantityChangeExpectedBillingRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ExpectedBillingService"
        ]
      }
    },
    "/v1/hc": {
      "get": {
        "summary": "ヘルスチェック",
        "description": "APIの稼働状況を確認します。",
        "operationId": "V1_ZzHealthService_Check",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/public.v1.CheckResponse"
            }
          }
        },
        "tags": [
          "scalebase.public.v1.ZzHealthService"
        ]
      }
    },
    "/v1/paymentmethod/get": {
      "get": {
        "summary": "決済方法の取得",
        "description": "決済方法を取得します。",
        "operationId": "V1_PaymentMethodService_GetPaymentMethod2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetPaymentMethodResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "決済方法ID",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "optionalId",
            "description": "決済方法管理ID(決済方法IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          }
        ],
        "tags": [
          "scalebase.public.v1.PaymentMethodService"
        ]
      },
      "post": {
        "summary": "決済方法の取得",
        "description": "決済方法を取得します。",
        "operationId": "V1_PaymentMethodService_GetPaymentMethod",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetPaymentMethodResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/GetPaymentMethodRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.PaymentMethodService"
        ]
      }
    },
    "/v1/paymentmethod/list": {
      "get": {
        "summary": "決済方法の一覧取得",
        "description": "決済方法の一覧を取得します。",
        "operationId": "V1_PaymentMethodService_ListPaymentMethods2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListPaymentMethodsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int32"
          },
          {
            "name": "orderBy.field",
            "description": " - FIELD_ID: 請求ID",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "FIELD_UNSPECIFIED",
              "FIELD_ID"
            ],
            "default": "FIELD_UNSPECIFIED"
          },
          {
            "name": "orderBy.direction",
            "description": " - DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "DIRECTION_UNSPECIFIED",
              "DIRECTION_ASCENDING",
              "DIRECTION_DESCENDING"
            ],
            "default": "DIRECTION_UNSPECIFIED"
          }
        ],
        "tags": [
          "scalebase.public.v1.PaymentMethodService"
        ]
      },
      "post": {
        "summary": "決済方法の一覧取得",
        "description": "決済方法の一覧を取得します。",
        "operationId": "V1_PaymentMethodService_ListPaymentMethods",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListPaymentMethodsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListPaymentMethodsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.PaymentMethodService"
        ]
      }
    },
    "/v1/product/create": {
      "post": {
        "summary": "プロダクトの作成",
        "description": "プロダクトを作成します。",
        "operationId": "V1_ProductService_CreateProduct",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/CreateProductResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CreateProductRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ProductService"
        ]
      }
    },
    "/v1/product/get": {
      "get": {
        "summary": "プロダクトの取得",
        "description": "指定したプロダクトを取得します。",
        "operationId": "V1_ProductService_GetProduct2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetProductResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "プロダクトID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "optionalId",
            "description": "プロダクト管理ID(プロダクトIDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          }
        ],
        "tags": [
          "scalebase.public.v1.ProductService"
        ]
      },
      "post": {
        "summary": "プロダクトの取得",
        "description": "指定したプロダクトを取得します。",
        "operationId": "V1_ProductService_GetProduct",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetProductResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/GetProductRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ProductService"
        ]
      }
    },
    "/v1/provider/get": {
      "get": {
        "summary": "プロバイダーの取得",
        "description": "プロバイダーを取得します。",
        "operationId": "V1_ProviderService_GetProvider2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/public.v1.GetProviderResponse"
            }
          }
        },
        "tags": [
          "scalebase.public.v1.ProviderService"
        ]
      },
      "post": {
        "summary": "プロバイダーの取得",
        "description": "プロバイダーを取得します。",
        "operationId": "V1_ProviderService_GetProvider",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/public.v1.GetProviderResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/public.v1.GetProviderRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.ProviderService"
        ]
      }
    },
    "/v1/usage/daily/upsert": {
      "post": {
        "summary": "使用量(日毎)の更新",
        "description": "指定した使用量を作成or更新します。",
        "operationId": "V1_UsageService_UpsertDailyUsage",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/UpsertDailyUsageResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpsertDailyUsageRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.UsageService"
        ]
      }
    },
    "/v1/usage/daily/upsertbycontractandusageunit": {
      "post": {
        "summary": "契約と使用量単位による使用量(日毎)の更新",
        "description": "指定した使用量を作成or更新します。",
        "operationId": "V1_UsageService_UpsertDailyUsageByContractAndUsageUnit",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/UpsertDailyUsageByContractAndUsageUnitResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpsertDailyUsageByContractAndUsageUnitRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.UsageService"
        ]
      }
    },
    "/v1/usage/daily/upsertbyoptionalid": {
      "post": {
        "summary": "契約と使用量単位による使用量(日毎)の更新(非推奨)",
        "description": "指定した使用量を作成or更新します。同等の機能を提供する /v1/usage/daily/upsertbycontractandusageunit に移行してください。",
        "operationId": "V1_UsageService_UpsertDailyUsageByOptionalId",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/UpsertDailyUsageByOptionalIdResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpsertDailyUsageByOptionalIdRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.UsageService"
        ]
      }
    },
    "/v1/usageunit/get": {
      "get": {
        "summary": "使用量単位の取得",
        "description": "使用量単位を取得します。",
        "operationId": "V1_UsageService_GetUsageUnit2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetUsageUnitResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "使用量単位ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "optionalId",
            "description": "使用量単位管理ID(使用量単位IDの代わりに指定可)",
            "in": "query",
            "required": false,
            "type": "string"
          }
        ],
        "tags": [
          "scalebase.public.v1.UsageService"
        ]
      },
      "post": {
        "summary": "使用量単位の取得",
        "description": "使用量単位を取得します。",
        "operationId": "V1_UsageService_GetUsageUnit",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/GetUsageUnitResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/GetUsageUnitRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.UsageService"
        ]
      }
    },
    "/v1/usageunit/list": {
      "get": {
        "summary": "使用量単位一覧の取得",
        "description": "使用量単位一覧を取得します。",
        "operationId": "V1_UsageService_ListUsageUnits2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListUsageUnitsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "pageToken",
            "description": "一覧取得に使用するトークン",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v1.UsageService"
        ]
      },
      "post": {
        "summary": "使用量単位一覧の取得",
        "description": "使用量単位一覧を取得します。",
        "operationId": "V1_UsageService_ListUsageUnits",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListUsageUnitsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListUsageUnitsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v1.UsageService"
        ]
      }
    },
    "/v2/amendment/cancelcontractservice": {
      "post": {
        "summary": "契約サービスの解約",
        "description": "指定した契約サービスを途中解約します",
        "operationId": "V2_AmendmentService_CancelContractService",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/CancelContractServiceResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CancelContractServiceRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v2.AmendmentService"
        ]
      }
    },
    "/v2/contract/confirmdraft": {
      "post": {
        "summary": "契約の下書き解除",
        "description": "下書き状態の契約を確定し、通常の契約にします。\n既に下書きが解除された契約に対して実行した場合も正常に完了します（冪等）。\nこの操作は不可逆です。一度解除した契約を再び下書きに戻すことはできません。",
        "operationId": "V2_ContractService_ConfirmDraftContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v2.ConfirmDraftContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v2.ConfirmDraftContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      }
    },
    "/v2/contract/create": {
      "post": {
        "summary": "契約の作成",
        "description": "新規に契約を作成します。",
        "operationId": "V2_ContractService_CreateContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v2.CreateContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v2.CreateContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      }
    },
    "/v2/contract/get": {
      "get": {
        "summary": "契約の取得",
        "description": "指定されたIDを持つ契約を取得します。",
        "operationId": "V2_ContractService_GetContract2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v2.GetContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "description": "契約ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "atPointInServiceTimeline",
            "description": "契約サービスタイムラインのどの時点での契約を取得するかの指定。\n指定しない場合は、契約サービスタイムラインの最も未来の時点での契約の状態が返却される。",
            "in": "query",
            "required": false,
            "type": "string",
            "format": "date-time"
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      },
      "post": {
        "summary": "契約の取得",
        "description": "指定されたIDを持つ契約を取得します。",
        "operationId": "V2_ContractService_GetContract",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v2.GetContractResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v2.GetContractRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      }
    },
    "/v2/contract/getbyoptionalid": {
      "get": {
        "summary": "契約管理IDを指定した契約の取得",
        "description": "指定された契約管理IDを持つ契約を取得します。",
        "operationId": "V2_ContractService_GetContractByOptionalId2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v2.GetContractByOptionalIdResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "optionalId",
            "description": "契約管理ID",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "atPointInServiceTimeline",
            "description": "契約サービスタイムラインのどの時点での契約を取得するかの指定。\n指定しない場合は、契約サービスタイムラインの最も未来の時点での契約の状態が返却される。",
            "in": "query",
            "required": false,
            "type": "string",
            "format": "date-time"
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      },
      "post": {
        "summary": "契約管理IDを指定した契約の取得",
        "description": "指定された契約管理IDを持つ契約を取得します。",
        "operationId": "V2_ContractService_GetContractByOptionalId",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v2.GetContractByOptionalIdResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v2.GetContractByOptionalIdRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      }
    },
    "/v2/contract/list": {
      "get": {
        "summary": "契約の一覧取得",
        "description": "条件に一致する契約の一覧を取得します。",
        "operationId": "V2_ContractService_ListContracts2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v2.ListContractsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "sortOrder.field",
            "description": " - FIELD_ID: 契約ID\n - FIELD_CONTRACT_END_DATE: 契約終了日",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "FIELD_UNSPECIFIED",
              "FIELD_ID",
              "FIELD_CONTRACT_END_DATE"
            ],
            "default": "FIELD_UNSPECIFIED"
          },
          {
            "name": "sortOrder.direction",
            "description": " - DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "DIRECTION_UNSPECIFIED",
              "DIRECTION_ASCENDING",
              "DIRECTION_DESCENDING"
            ],
            "default": "DIRECTION_UNSPECIFIED"
          },
          {
            "name": "offsetToken",
            "description": "オフセット情報を含むページングトークン。",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      },
      "post": {
        "summary": "契約の一覧取得",
        "description": "条件に一致する契約の一覧を取得します。",
        "operationId": "V2_ContractService_ListContracts",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v2.ListContractsResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v2.ListContractsRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      }
    },
    "/v2/contract/listatdate": {
      "get": {
        "summary": "契約の一覧取得（契約サービスタイムライン上での日付指定あり）",
        "description": "条件に一致する契約の一覧を、契約サービスタイムライン上で指定された日付における状態で取得します。",
        "operationId": "V2_ContractService_ListContractsAtDate2",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListContractsAtDateResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "sortOrder.field",
            "description": " - FIELD_ID: 契約ID\n - FIELD_CONTRACT_END_DATE: 契約終了日",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "FIELD_UNSPECIFIED",
              "FIELD_ID",
              "FIELD_CONTRACT_END_DATE"
            ],
            "default": "FIELD_UNSPECIFIED"
          },
          {
            "name": "sortOrder.direction",
            "description": " - DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "DIRECTION_UNSPECIFIED",
              "DIRECTION_ASCENDING",
              "DIRECTION_DESCENDING"
            ],
            "default": "DIRECTION_UNSPECIFIED"
          },
          {
            "name": "offsetToken",
            "description": "オフセット情報を含むページングトークン。",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "pageSize",
            "description": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          },
          {
            "name": "atPointInServiceTimeline",
            "description": "契約サービスタイムラインのどの時点での契約を取得するかの指定。",
            "in": "query",
            "required": true,
            "type": "string",
            "format": "date-time"
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      },
      "post": {
        "summary": "契約の一覧取得（契約サービスタイムライン上での日付指定あり）",
        "description": "条件に一致する契約の一覧を、契約サービスタイムライン上で指定された日付における状態で取得します。",
        "operationId": "V2_ContractService_ListContractsAtDate",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/ListContractsAtDateResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ListContractsAtDateRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      }
    },
    "/v2/contract/service/add": {
      "post": {
        "summary": "契約のサービス追加",
        "description": "既存の契約に新しいサービス（メインアイテム・オプションアイテム）を追加します。",
        "operationId": "V2_ContractService_AddContractService",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/AddContractServiceResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AddContractServiceRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      }
    },
    "/v2/contract/updatepaymentmethod": {
      "post": {
        "summary": "決済方法変更",
        "description": "契約の決済方法を変更します。\n契約IDまたは契約管理IDのいずれかで契約を指定できます。",
        "operationId": "V2_ContractService_UpdatePaymentMethod",
        "responses": {
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/rpc.Status"
            }
          },
          "2XX": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/UpdatePaymentMethodResponse"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpdatePaymentMethodRequest"
            }
          }
        ],
        "tags": [
          "scalebase.public.v2.ContractService"
        ]
      }
    }
  },
  "definitions": {
    "AddContractServiceRequest": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/AddContractServiceRequest.ContractIdentifier",
          "title": "契約識別子"
        },
        "mainItem": {
          "$ref": "#/definitions/AddContractServiceRequest.MainItem",
          "title": "追加するメインアイテム"
        },
        "optionItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/AddContractServiceRequest.OptionItem"
          },
          "title": "追加するオプションアイテム"
        }
      },
      "title": "サービス追加のリクエスト",
      "required": [
        "contract",
        "mainItem"
      ]
    },
    "AddContractServiceRequest.CatalogItemIdentifier": {
      "type": "object",
      "properties": {
        "catalogItemId": {
          "type": "string",
          "title": "カタログアイテムID"
        },
        "catalogItemOptionalId": {
          "type": "string",
          "title": "カタログアイテム管理ID(カタログアイテムIDの代わりに指定可)"
        }
      },
      "title": "カタログアイテム識別子",
      "required": [
        "catalogItemId"
      ]
    },
    "AddContractServiceRequest.ChargeItem": {
      "type": "object",
      "properties": {
        "catalogChargeItemId": {
          "type": "string",
          "title": "カタログ課金項目ID"
        },
        "name": {
          "type": "string",
          "title": "請求書記載名(省略時はカタログ参照)"
        },
        "quantity": {
          "type": "integer",
          "format": "int32",
          "title": "契約数。すべての料金モデルで使用できます。定額制の場合は1に正規化されます"
        },
        "billAllAtOnce": {
          "type": "boolean",
          "title": "一括請求オプション(省略時はカタログ参照)"
        },
        "optionalId": {
          "type": "string",
          "title": "課金項目管理ID"
        },
        "pricing": {
          "$ref": "#/definitions/AddContractServiceRequest.ChargeItem.Pricing",
          "title": "料金設定(省略時はカタログ参照)"
        },
        "billingTiming": {
          "$ref": "#/definitions/v2.Timing",
          "title": "請求タイミング(省略時はカタログ参照)"
        },
        "billingDueTiming": {
          "$ref": "#/definitions/v2.Timing",
          "title": "支払期限タイミング(省略時はカタログ参照)"
        },
        "billingCycle": {
          "$ref": "#/definitions/AddContractServiceRequest.Term",
          "title": "請求周期(省略時はカタログ参照)"
        }
      },
      "title": "課金項目",
      "required": [
        "catalogChargeItemId"
      ]
    },
    "AddContractServiceRequest.ChargeItem.Pricing": {
      "type": "object",
      "properties": {
        "price": {
          "type": "integer",
          "format": "int32",
          "title": "単一価格（定額制または従量制のみ）"
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/AddContractServiceRequest.ChargeItem.Tier"
          },
          "title": "ティア（段階的価格設定）"
        }
      },
      "title": "料金設定（どちらか片方必須）"
    },
    "AddContractServiceRequest.ChargeItem.Tier": {
      "type": "object",
      "properties": {
        "upperLimit": {
          "type": "string",
          "title": "上限値（最後のティアのみ省略可）"
        },
        "feeFormula": {
          "$ref": "#/definitions/AddContractServiceRequest.ChargeItem.Tier.FeeFormula",
          "title": "料金計算式"
        },
        "unitPrice": {
          "type": "string",
          "title": "単価。定額制の場合はこの値がそのまま料金となり、従量制の場合は数量との積算で料金が決まる"
        }
      },
      "title": "ティア",
      "required": [
        "feeFormula",
        "unitPrice"
      ]
    },
    "AddContractServiceRequest.ChargeItem.Tier.FeeFormula": {
      "type": "string",
      "enum": [
        "FEE_FORMULA_UNSPECIFIED",
        "FEE_FORMULA_PER_UNIT",
        "FEE_FORMULA_FLAT_FEE"
      ],
      "default": "FEE_FORMULA_UNSPECIFIED",
      "description": "- FEE_FORMULA_PER_UNIT: 従量\n - FEE_FORMULA_FLAT_FEE: 定額",
      "title": "料金計算式"
    },
    "AddContractServiceRequest.ContractIdentifier": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID（契約IDの代わりに指定可）"
        }
      },
      "title": "契約識別子",
      "required": [
        "contractId"
      ]
    },
    "AddContractServiceRequest.MainItem": {
      "type": "object",
      "properties": {
        "catalogItemIdentifier": {
          "$ref": "#/definitions/AddContractServiceRequest.CatalogItemIdentifier"
        },
        "name": {
          "type": "string",
          "title": "アイテム名(省略時はカタログ参照)"
        },
        "startDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約開始日"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(省略時はカタログの契約期間から算出)"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/AddContractServiceRequest.Term",
          "title": "基本契約期間(省略時はカタログ参照)"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/AddContractServiceRequest.ChargeItem"
          },
          "title": "契約課金項目(省略時はカタログ参照)"
        },
        "availabilityCycle": {
          "$ref": "#/definitions/AddContractServiceRequest.Term",
          "title": "利用周期(省略時はカタログ参照)"
        },
        "autoRenewal": {
          "$ref": "#/definitions/AutoRenewalSetting",
          "title": "自動更新設定(省略時はカタログの自動更新設定が継承されます)"
        }
      },
      "title": "メインとなるアイテム",
      "required": [
        "catalogItemIdentifier",
        "startDate"
      ]
    },
    "AddContractServiceRequest.OptionItem": {
      "type": "object",
      "properties": {
        "catalogItemIdentifier": {
          "$ref": "#/definitions/AddContractServiceRequest.CatalogItemIdentifier"
        },
        "name": {
          "type": "string",
          "title": "アイテム名(省略時はカタログ参照)"
        },
        "startDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約開始日(省略時はメインの開始日と同一になる)"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(省略時はカタログの契約期間から算出、メインアイテムの終了日を超えないよう補正される)"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/AddContractServiceRequest.Term",
          "title": "基本契約期間(省略時はカタログの契約期間から適用)"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/AddContractServiceRequest.ChargeItem"
          },
          "title": "契約課金項目(省略時はカタログ参照)"
        },
        "availabilityCycle": {
          "$ref": "#/definitions/AddContractServiceRequest.Term",
          "title": "利用周期(省略時はカタログ参照)"
        },
        "autoRenewal": {
          "$ref": "#/definitions/AutoRenewalSetting",
          "title": "自動更新設定(省略時はカタログの自動更新設定が継承されます)"
        }
      },
      "title": "オプションとなるアイテム",
      "required": [
        "catalogItemIdentifier"
      ]
    },
    "AddContractServiceRequest.Term": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/AddContractServiceRequest.Term.Unit",
          "title": "単位"
        }
      },
      "title": "基本契約期間",
      "required": [
        "value",
        "unit"
      ]
    },
    "AddContractServiceRequest.Term.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "AddContractServiceResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v2.Contract",
          "title": "更新された契約"
        }
      },
      "title": "サービス追加のレスポンス"
    },
    "AddOptionItemRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "対象の契約ID"
        },
        "primalContractItemId": {
          "type": "string",
          "title": "(DEPRECATED: contract_item_id をお使いください) 親となる契約アイテムID"
        },
        "contractItemId": {
          "type": "string",
          "title": "親となる契約アイテムID"
        },
        "effectiveStartDate": {
          "type": "string",
          "format": "date-time",
          "title": "改定の有効開始日(RFC 3339 format)"
        },
        "item": {
          "$ref": "#/definitions/AddOptionItemRequest.OptionItem",
          "title": "追加するアイテム"
        },
        "memo": {
          "type": "string",
          "title": "改定メモ"
        }
      },
      "title": "オプションアイテムの追加リクエスト",
      "required": [
        "contractId",
        "contractItemId",
        "effectiveStartDate",
        "item"
      ]
    },
    "AddOptionItemRequest.ChargeItem": {
      "type": "object",
      "properties": {
        "catalogChargeItemId": {
          "type": "string",
          "title": "カタログ課金項目ID"
        },
        "optionalId": {
          "type": "string",
          "title": "カタログ課金項目管理ID(半角英数字と_-のみ使用できます)"
        },
        "billAllAtOnce": {
          "type": "boolean",
          "title": "一括請求オプション。指定しなければカタログアイテムに従います"
        },
        "quantity": {
          "type": "integer",
          "format": "int32",
          "title": "契約数。料金モデルが従量制の場合に使用できます"
        },
        "name": {
          "type": "string",
          "title": "課金項目名。指定しなければカタログアイテムに従います"
        },
        "price": {
          "type": "integer",
          "format": "int32",
          "title": "単価。カタログの料金モデルが定額または従量制のみで使用できます。指定しなければカタログアイテムに従います"
        },
        "billingTiming": {
          "$ref": "#/definitions/AddOptionItemRequest.ChargeItem.Timing",
          "title": "請求タイミング"
        },
        "billingDueTiming": {
          "$ref": "#/definitions/AddOptionItemRequest.ChargeItem.Timing",
          "title": "支払期限タイミング"
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/AddOptionItemRequest.ChargeItem.Tier"
          },
          "title": "ティア（段階別価格設定）。ボリューム/段階制の料金モデルで使用します。priceとは排他的です"
        }
      },
      "required": [
        "catalogChargeItemId"
      ]
    },
    "AddOptionItemRequest.ChargeItem.Tier": {
      "type": "object",
      "properties": {
        "upperLimit": {
          "type": "string",
          "title": "ティアの上限値。省略時は上限なし（最後のティア）"
        },
        "kind": {
          "$ref": "#/definitions/AddOptionItemRequest.ChargeItem.Tier.Kind",
          "title": "料金計算式の種類"
        },
        "unitPrice": {
          "type": "string",
          "title": "単価（KIND_PER_UNIT時に使用）"
        },
        "price": {
          "type": "string",
          "title": "定額価格（KIND_FLAT_FEE時に使用）"
        }
      },
      "title": "ティア（段階別価格設定）\nProtoJSON Format https://protobuf.dev/programming-guides/json/ では discriminated union を適切に表現できないので、\n止む無く value だけ oneof で表現しています。\nしたがって { kind: 'KIND_PER_UNIT', price: string } のようなデータも proto 上では可能な定義になってしまっています。",
      "required": [
        "kind"
      ]
    },
    "AddOptionItemRequest.ChargeItem.Tier.Kind": {
      "type": "string",
      "enum": [
        "KIND_UNSPECIFIED",
        "KIND_PER_UNIT",
        "KIND_FLAT_FEE"
      ],
      "default": "KIND_UNSPECIFIED",
      "description": "- KIND_UNSPECIFIED: 未指定\n - KIND_PER_UNIT: 従量制（単価×数量）\n - KIND_FLAT_FEE: 定額制",
      "title": "料金計算式の種類"
    },
    "AddOptionItemRequest.ChargeItem.Timing": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "数(負数の場合は前を表す。例: { \"value\": -1, \"unit\": \"UNIT_MONTHLY\" } => 先月)"
        },
        "unit": {
          "$ref": "#/definitions/AddOptionItemRequest.ChargeItem.Timing.Unit",
          "title": "単位"
        },
        "monthlyOption": {
          "$ref": "#/definitions/AddOptionItemRequest.ChargeItem.Timing.MonthlyOption",
          "title": "UNIT_MONTHLY指定時のオプション"
        }
      },
      "title": "タイミング",
      "required": [
        "value",
        "unit",
        "monthlyOption"
      ]
    },
    "AddOptionItemRequest.ChargeItem.Timing.MonthlyOption": {
      "type": "string",
      "enum": [
        "MONTHLY_OPTION_UNSPECIFIED",
        "MONTHLY_OPTION_DAY_1",
        "MONTHLY_OPTION_DAY_2",
        "MONTHLY_OPTION_DAY_3",
        "MONTHLY_OPTION_DAY_4",
        "MONTHLY_OPTION_DAY_5",
        "MONTHLY_OPTION_DAY_6",
        "MONTHLY_OPTION_DAY_7",
        "MONTHLY_OPTION_DAY_8",
        "MONTHLY_OPTION_DAY_9",
        "MONTHLY_OPTION_DAY_10",
        "MONTHLY_OPTION_DAY_11",
        "MONTHLY_OPTION_DAY_12",
        "MONTHLY_OPTION_DAY_13",
        "MONTHLY_OPTION_DAY_14",
        "MONTHLY_OPTION_DAY_15",
        "MONTHLY_OPTION_DAY_16",
        "MONTHLY_OPTION_DAY_17",
        "MONTHLY_OPTION_DAY_18",
        "MONTHLY_OPTION_DAY_19",
        "MONTHLY_OPTION_DAY_20",
        "MONTHLY_OPTION_DAY_21",
        "MONTHLY_OPTION_DAY_22",
        "MONTHLY_OPTION_DAY_23",
        "MONTHLY_OPTION_DAY_24",
        "MONTHLY_OPTION_DAY_25",
        "MONTHLY_OPTION_DAY_26",
        "MONTHLY_OPTION_DAY_27",
        "MONTHLY_OPTION_DAY_28",
        "MONTHLY_OPTION_DAY_29",
        "MONTHLY_OPTION_DAY_30",
        "MONTHLY_OPTION_DAY_31",
        "MONTHLY_OPTION_FIRST_DAY_OF_MONTH",
        "MONTHLY_OPTION_LAST_DAY_OF_MONTH"
      ],
      "default": "MONTHLY_OPTION_UNSPECIFIED",
      "description": "- MONTHLY_OPTION_FIRST_DAY_OF_MONTH: alias MONTHLY_OPTION_DAY_1",
      "title": "UNIT_MONTHLY指定時のオプション(1~31の数字 or Enumの文字列)"
    },
    "AddOptionItemRequest.ChargeItem.Timing.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_DAILY",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_DAILY: 日\n - UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "AddOptionItemRequest.OptionItem": {
      "type": "object",
      "properties": {
        "catalogItemId": {
          "type": "string",
          "title": "カタログアイテムID"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(省略時はカタログの契約期間から算出(RFC 3339 format))"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/AddOptionItemRequest.Term",
          "title": "基本契約期間(省略時はカタログの契約期間から適用)"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/AddOptionItemRequest.ChargeItem"
          },
          "title": "課金項目"
        },
        "name": {
          "type": "string",
          "title": "アイテム名。指定しなければカタログアイテムに従います。"
        }
      },
      "title": "アイテムカスタマイズ情報",
      "required": [
        "catalogItemId"
      ]
    },
    "AddOptionItemRequest.Term": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/AddOptionItemRequest.Term.Unit",
          "title": "単位"
        }
      },
      "title": "基本契約期間",
      "required": [
        "value",
        "unit"
      ]
    },
    "AddOptionItemRequest.Term.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "AddOptionItemResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/AddOptionItemResponse.Contract",
          "title": "対象の契約"
        },
        "amendment": {
          "$ref": "#/definitions/AddOptionItemResponse.Amendment",
          "title": "改定"
        }
      },
      "title": "オプションアイテムの追加レスポンス"
    },
    "AddOptionItemResponse.Amendment": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "AddOptionItemResponse.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "AliasContractRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "optionalId": {
          "type": "string",
          "title": "契約管理ID"
        }
      },
      "title": "契約管理ID変更リクエスト",
      "required": [
        "id"
      ]
    },
    "AliasContractResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v1.Contract",
          "title": "契約"
        }
      },
      "title": "契約管理ID変更レスポンス"
    },
    "AliasCustomerRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "顧客ID"
        },
        "optionalId": {
          "type": "string",
          "title": "顧客管理ID(未指定の場合、管理IDの割当を解除)"
        }
      },
      "title": "顧客の管理ID更新のリクエスト",
      "required": [
        "id"
      ]
    },
    "AliasCustomerResponse": {
      "type": "object",
      "properties": {
        "customer": {
          "$ref": "#/definitions/v1.Customer",
          "title": "顧客"
        }
      },
      "title": "顧客の管理ID更新のレスポンス"
    },
    "AliasCustomerStaffRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "顧客担当者ID"
        },
        "optionalId": {
          "type": "string",
          "title": "顧客担当者管理ID(未指定の場合、管理IDの設定を解除)"
        },
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "customerOptionalId": {
          "type": "string",
          "title": "顧客管理ID(顧客IDの代わりに指定可)"
        }
      },
      "title": "顧客担当者の管理ID更新のリクエスト",
      "required": [
        "id",
        "customerId"
      ]
    },
    "AliasCustomerStaffResponse": {
      "type": "object",
      "properties": {
        "customerStaff": {
          "$ref": "#/definitions/v1.CustomerStaff",
          "title": "顧客担当者"
        }
      },
      "title": "顧客担当者の管理ID更新のレスポンス"
    },
    "Amendment.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_ADD_ITEM",
        "TYPE_CHANGE_ITEM",
        "TYPE_CUSTOMIZE_ITEM",
        "TYPE_CHANGE_CHARGE_ITEM_QUANTITY",
        "TYPE_RENEW_ITEM",
        "TYPE_CANCEL_ITEM"
      ],
      "default": "TYPE_UNSPECIFIED",
      "title": "- TYPE_ADD_ITEM: アイテム追加改定\n - TYPE_CHANGE_ITEM: アイテム乗換改定\n - TYPE_CUSTOMIZE_ITEM: アイテム編集改定\n - TYPE_CHANGE_CHARGE_ITEM_QUANTITY: アイテム契約数変更改定\n - TYPE_RENEW_ITEM: アイテム更新改定\n - TYPE_CANCEL_ITEM: アイテム途中解約改定"
    },
    "Any": {
      "type": "object",
      "properties": {
        "@type": {
          "type": "string"
        }
      },
      "additionalProperties": {}
    },
    "AnyItemHasStatusInFilterClause": {
      "type": "object",
      "properties": {
        "statuses": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v2.Contract.Item.Status"
          }
        }
      },
      "title": "契約アイテムステータスフィルタ"
    },
    "AutoRenewal": {
      "type": "object",
      "properties": {
        "type": {
          "$ref": "#/definitions/AutoRenewal.Type",
          "title": "自動更新タイプ"
        },
        "term": {
          "$ref": "#/definitions/AutoRenewal.Term",
          "title": "自動更新タイミング（typeがENABLEDの場合のみ必須）"
        }
      },
      "title": "自動更新設定",
      "required": [
        "type"
      ]
    },
    "AutoRenewal.Term": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数（自動更新の場合は0以下の値を指定）\n契約終了日より前の日付を指定する必要があるため、マイナス値を使用します\n例: -10 (契約終了日の10日前に自動更新), -1 (契約終了日の1ヶ月前に自動更新 ※unitがMONTHLYの場合)"
        },
        "unit": {
          "$ref": "#/definitions/AutoRenewal.Term.Unit",
          "title": "単位"
        }
      },
      "title": "自動更新タイミング",
      "required": [
        "value",
        "unit"
      ]
    },
    "AutoRenewal.Term.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_DAILY",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "title": "期間単位"
    },
    "AutoRenewal.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_DISABLED",
        "TYPE_ENABLED"
      ],
      "default": "TYPE_UNSPECIFIED",
      "description": "- TYPE_DISABLED: 自動更新しない\n - TYPE_ENABLED: 自動更新する",
      "title": "自動更新タイプ"
    },
    "AutoRenewalSetting": {
      "type": "object",
      "properties": {
        "type": {
          "$ref": "#/definitions/AutoRenewalSetting.Type",
          "title": "自動更新タイプ"
        },
        "term": {
          "$ref": "#/definitions/AutoRenewalSetting.Term",
          "title": "自動更新タイミング(typeがTYPE_ENABLEDの場合のみ必須)"
        }
      },
      "description": "契約アイテム(プラン・定額アドオン)を契約終了時に自動更新するかどうかを表す。\nこのフィールド自体を省略した場合は、カタログアイテムの自動更新設定がそのまま継承される。",
      "title": "自動更新設定",
      "required": [
        "type"
      ]
    },
    "AutoRenewalSetting.Term": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数。契約終了日当日もしくはそれ以前の日付を表すため、\nUNIT_DAILY の場合は0以下、UNIT_MONTHLY の場合は負数(0は不可)を指定する。\n例: { \"value\": -1, \"unit\": \"UNIT_MONTHLY\" } => 契約終了日の1ヶ月前に自動更新"
        },
        "unit": {
          "$ref": "#/definitions/AutoRenewalSetting.Term.Unit",
          "title": "単位"
        }
      },
      "title": "自動更新タイミング",
      "required": [
        "value",
        "unit"
      ]
    },
    "AutoRenewalSetting.Term.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_DAILY",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_DAILY: 日\n - UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "AutoRenewalSetting.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_DISABLED",
        "TYPE_ENABLED"
      ],
      "default": "TYPE_UNSPECIFIED",
      "description": "- TYPE_DISABLED: 自動更新しない\n - TYPE_ENABLED: 自動更新する",
      "title": "自動更新タイプ"
    },
    "AvailabilityCycle": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/AvailabilityCycle.Unit",
          "title": "単位"
        }
      },
      "required": [
        "value",
        "unit"
      ]
    },
    "AvailabilityCycle.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "BatchRecordPaymentsRequest": {
      "type": "object",
      "properties": {
        "payments": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/PaymentRecord"
          },
          "title": "入金情報リスト [最小: 1 / 最大: 1000]"
        }
      },
      "title": "一括入金処理リクエスト",
      "required": [
        "payments"
      ]
    },
    "BatchRecordPaymentsResponse": {
      "type": "object",
      "properties": {
        "summary": {
          "$ref": "#/definitions/PaymentSummary",
          "title": "処理結果のサマリー"
        },
        "errors": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/PaymentRecordError"
          },
          "title": "処理に失敗した請求"
        }
      },
      "title": "一括入金処理レスポンス"
    },
    "BatchUpdateBillingStatusesRequest": {
      "type": "object",
      "properties": {
        "byIds": {
          "$ref": "#/definitions/BillingIdList",
          "title": "請求IDによる直接指定"
        },
        "byCondition": {
          "$ref": "#/definitions/BillingCondition",
          "title": "検索条件による指定"
        },
        "status": {
          "$ref": "#/definitions/BatchUpdateBillingStatusesRequest.Status",
          "title": "変更先のステータス"
        }
      },
      "title": "請求ステータス一括更新リクエスト",
      "required": [
        "status"
      ]
    },
    "BatchUpdateBillingStatusesRequest.Status": {
      "type": "string",
      "enum": [
        "STATUS_UNSPECIFIED",
        "STATUS_UNBILLED",
        "STATUS_INVOICE_CREATED",
        "STATUS_POSTED"
      ],
      "default": "STATUS_UNSPECIFIED",
      "title": "- STATUS_UNBILLED: 請求待ち\n - STATUS_INVOICE_CREATED: 請求書作成済み\n - STATUS_POSTED: 入金待ち"
    },
    "BatchUpdateBillingStatusesResponse": {
      "type": "object",
      "properties": {
        "summary": {
          "$ref": "#/definitions/UpdateSummary",
          "title": "更新結果のサマリー"
        },
        "errors": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/BillingUpdateError"
          },
          "title": "更新に失敗した請求"
        }
      },
      "title": "請求ステータス一括更新レスポンス"
    },
    "BatchUpdateResourceItem": {
      "type": "object",
      "properties": {
        "resource": {
          "$ref": "#/definitions/Resource",
          "title": "リソース"
        }
      },
      "title": "一括更新の個別アイテム",
      "required": [
        "resource"
      ]
    },
    "BatchUpdateResourcesRequest": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/BatchUpdateResourceItem"
          },
          "title": "更新対象リソースのリスト [最小: 1 / 最大: 100]"
        },
        "resourceType": {
          "$ref": "#/definitions/SRN.Type",
          "title": "リソース種別（リクエスト内の全アイテムで共通）"
        }
      },
      "title": "カスタムフィールド一括更新リクエスト",
      "required": [
        "items",
        "resourceType"
      ]
    },
    "BatchUpdateResourcesResponse": {
      "type": "object",
      "properties": {
        "summary": {
          "$ref": "#/definitions/CustomFieldUpdateSummary",
          "title": "更新結果のサマリー"
        },
        "resources": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/Resource"
          },
          "title": "更新に成功したリソース"
        },
        "errors": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CustomFieldUpdateError"
          },
          "title": "更新に失敗したリソース"
        }
      },
      "title": "カスタムフィールド一括更新レスポンス"
    },
    "Billing.CustomerStaff": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "担当者ID"
        },
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "customerName": {
          "type": "string",
          "title": "顧客名"
        },
        "name": {
          "$ref": "#/definitions/Billing.CustomerStaff.Name",
          "title": "担当者氏名"
        },
        "emailAddress": {
          "type": "string",
          "title": "メールアドレス"
        },
        "phoneNumber": {
          "type": "string",
          "title": "電話番号"
        },
        "department": {
          "type": "string",
          "title": "部署"
        },
        "title": {
          "type": "string",
          "title": "肩書"
        },
        "address": {
          "$ref": "#/definitions/Billing.CustomerStaff.Address",
          "title": "住所"
        },
        "sortOrder": {
          "type": "integer",
          "format": "int32",
          "title": "請求内の担当者の順序(0=主担当者,1以降=副担当者)"
        }
      }
    },
    "Billing.CustomerStaff.Address": {
      "type": "object",
      "properties": {
        "zipCode": {
          "type": "string",
          "title": "郵便番号"
        },
        "country": {
          "$ref": "#/definitions/Billing.CustomerStaff.Address.Country",
          "title": "国"
        },
        "prefecture": {
          "$ref": "#/definitions/Billing.CustomerStaff.Address.Prefecture",
          "title": "都道府県"
        },
        "city": {
          "type": "string",
          "title": "市区郡"
        },
        "addressLines": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "町名・番地"
        },
        "prefectureJa": {
          "type": "string",
          "title": "都道府県(日本語表記)"
        }
      },
      "title": "住所"
    },
    "Billing.CustomerStaff.Address.Country": {
      "type": "string",
      "enum": [
        "COUNTRY_UNSPECIFIED",
        "COUNTRY_JP"
      ],
      "default": "COUNTRY_UNSPECIFIED",
      "title": "国"
    },
    "Billing.CustomerStaff.Address.Prefecture": {
      "type": "string",
      "enum": [
        "PREFECTURE_UNSPECIFIED",
        "PREFECTURE_HOKKAIDO",
        "PREFECTURE_AOMORI",
        "PREFECTURE_IWATE",
        "PREFECTURE_MIYAGI",
        "PREFECTURE_AKITA",
        "PREFECTURE_YAMAGATA",
        "PREFECTURE_FUKUSHIMA",
        "PREFECTURE_IBARAKI",
        "PREFECTURE_TOCHIGI",
        "PREFECTURE_GUNMA",
        "PREFECTURE_SAITAMA",
        "PREFECTURE_CHIBA",
        "PREFECTURE_TOKYO",
        "PREFECTURE_KANAGAWA",
        "PREFECTURE_NIIGATA",
        "PREFECTURE_TOYAMA",
        "PREFECTURE_ISHIKAWA",
        "PREFECTURE_FUKUI",
        "PREFECTURE_YAMANASHI",
        "PREFECTURE_NAGANO",
        "PREFECTURE_GIFU",
        "PREFECTURE_SHIZUOKA",
        "PREFECTURE_AICHI",
        "PREFECTURE_MIE",
        "PREFECTURE_SHIGA",
        "PREFECTURE_KYOTO",
        "PREFECTURE_OSAKA",
        "PREFECTURE_HYOGO",
        "PREFECTURE_NARA",
        "PREFECTURE_WAKAYAMA",
        "PREFECTURE_TOTTORI",
        "PREFECTURE_SHIMANE",
        "PREFECTURE_OKAYAMA",
        "PREFECTURE_HIROSHIMA",
        "PREFECTURE_YAMAGUCHI",
        "PREFECTURE_TOKUSHIMA",
        "PREFECTURE_KAGAWA",
        "PREFECTURE_EHIME",
        "PREFECTURE_KOCHI",
        "PREFECTURE_FUKUOKA",
        "PREFECTURE_SAGA",
        "PREFECTURE_NAGASAKI",
        "PREFECTURE_KUMAMOTO",
        "PREFECTURE_OITA",
        "PREFECTURE_MIYAZAKI",
        "PREFECTURE_KAGOSHIMA",
        "PREFECTURE_OKINAWA"
      ],
      "default": "PREFECTURE_UNSPECIFIED",
      "title": "都道府県"
    },
    "Billing.CustomerStaff.Name": {
      "type": "object",
      "properties": {
        "firstName": {
          "type": "string",
          "title": "顧客担当者の名"
        },
        "lastName": {
          "type": "string",
          "title": "顧客担当者の姓"
        }
      },
      "title": "名前"
    },
    "Billing.Item": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "請求項目ID"
        },
        "name": {
          "type": "string",
          "title": "請求項目名"
        },
        "unitPrice": {
          "type": "number",
          "format": "double",
          "title": "単価"
        },
        "quantity": {
          "type": "string",
          "format": "int64",
          "title": "数量"
        },
        "subtotal": {
          "type": "number",
          "format": "double",
          "title": "小計"
        },
        "taxPercentage": {
          "type": "integer",
          "format": "int32",
          "title": "税率"
        },
        "startDate": {
          "type": "string",
          "format": "date-time",
          "title": "開始日(RFC 3339 format)"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "終了日(RFC 3339 format)"
        },
        "catalogChargeItemId": {
          "type": "string",
          "title": "カタログ課金項目ID"
        }
      }
    },
    "BillingCondition": {
      "type": "object",
      "properties": {
        "condition": {
          "$ref": "#/definitions/SearchBillingsRequest.Clause",
          "title": "検索条件"
        },
        "excludeBillingIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "除外する請求IDリスト [最大: 10000]"
        }
      },
      "title": "検索条件による指定",
      "required": [
        "condition"
      ]
    },
    "BillingCycle": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/BillingCycle.Unit",
          "title": "単位"
        }
      },
      "required": [
        "value",
        "unit"
      ]
    },
    "BillingCycle.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "BillingDate": {
      "type": "object",
      "properties": {
        "gte": {
          "type": "string",
          "format": "date-time"
        },
        "lte": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "BillingIdList": {
      "type": "object",
      "properties": {
        "billingIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "対象請求IDリスト [最小: 1 / 最大: 1000]"
        }
      },
      "title": "請求IDリストによる指定",
      "required": [
        "billingIds"
      ]
    },
    "BillingOrder": {
      "type": "object",
      "properties": {
        "field": {
          "$ref": "#/definitions/BillingOrder.Field"
        },
        "direction": {
          "$ref": "#/definitions/BillingOrder.Direction"
        }
      },
      "title": "ソート条件"
    },
    "BillingOrder.Direction": {
      "type": "string",
      "enum": [
        "DIRECTION_UNSPECIFIED",
        "DIRECTION_ASCENDING",
        "DIRECTION_DESCENDING"
      ],
      "default": "DIRECTION_UNSPECIFIED",
      "description": "- DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
      "title": "順序"
    },
    "BillingOrder.Field": {
      "type": "string",
      "enum": [
        "FIELD_UNSPECIFIED",
        "FIELD_ID",
        "FIELD_BILLING_DATE"
      ],
      "default": "FIELD_UNSPECIFIED",
      "description": "- FIELD_ID: 請求ID\n - FIELD_BILLING_DATE: 請求日",
      "title": "対象"
    },
    "BillingUpdateError": {
      "type": "object",
      "properties": {
        "billingId": {
          "type": "string",
          "title": "請求ID"
        },
        "errorType": {
          "$ref": "#/definitions/BillingUpdateError.ErrorType",
          "title": "エラータイプ"
        },
        "message": {
          "type": "string",
          "title": "エラーメッセージ"
        }
      },
      "title": "請求ステータス更新エラー"
    },
    "BillingUpdateError.ErrorType": {
      "type": "string",
      "enum": [
        "ERROR_TYPE_UNSPECIFIED",
        "ERROR_TYPE_NOT_FOUND",
        "ERROR_TYPE_INVALID_TRANSITION",
        "ERROR_TYPE_STORE_FAILED"
      ],
      "default": "ERROR_TYPE_UNSPECIFIED"
    },
    "CancelAmendmentRequest": {
      "type": "object",
      "properties": {
        "amendmentId": {
          "type": "string",
          "title": "改定ID"
        }
      },
      "title": "改定取消リクエスト",
      "required": [
        "amendmentId"
      ]
    },
    "CancelAmendmentResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/CancelAmendmentResponse.Contract",
          "title": "対象の契約"
        }
      },
      "title": "改定取消レスポンス"
    },
    "CancelAmendmentResponse.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "CancelContractRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        },
        "effectiveStartDate": {
          "type": "string",
          "format": "date-time",
          "title": "改定の有効開始日"
        },
        "oldDailyRates": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.LastAvailabilityDailyRate"
          },
          "title": "解約時の終了月日割設定"
        },
        "memo": {
          "type": "string",
          "title": "改定メモ"
        }
      },
      "title": "契約途中解約改定のリクエスト",
      "required": [
        "contractId",
        "contractOptionalId",
        "effectiveStartDate"
      ]
    },
    "CancelContractResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/CancelContractResponse.Contract",
          "title": "対象の契約"
        },
        "amendments": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CancelContractResponse.Amendment"
          },
          "title": "改定"
        }
      },
      "title": "契約途中解約改定のレスポンス"
    },
    "CancelContractResponse.Amendment": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "CancelContractResponse.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "CancelContractServiceRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        },
        "contractServiceId": {
          "type": "string",
          "title": "契約サービスID"
        },
        "effectiveStartDate": {
          "type": "string",
          "format": "date-time",
          "title": "改定の有効開始日"
        },
        "lastAvailabilityDailyRates": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v2.LastAvailabilityDailyRate"
          },
          "title": "解約時の終了月日割設定"
        },
        "memo": {
          "type": "string",
          "title": "改定メモ"
        }
      },
      "required": [
        "contractId",
        "contractOptionalId",
        "contractServiceId",
        "effectiveStartDate"
      ]
    },
    "CancelContractServiceResponse": {
      "type": "object",
      "properties": {
        "amendment": {
          "$ref": "#/definitions/CancelContractServiceResponse.Amendment",
          "title": "作成された改定"
        }
      }
    },
    "CancelContractServiceResponse.Amendment": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "改定ID"
        }
      }
    },
    "CancelOptionRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        },
        "optionItemId": {
          "type": "string",
          "title": "オプションアイテムID"
        },
        "effectiveStartDate": {
          "type": "string",
          "format": "date-time",
          "title": "改定の有効開始日"
        },
        "lastAvailabilityDailyRates": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.LastAvailabilityDailyRate"
          },
          "title": "解約時の終了月日割設定"
        },
        "memo": {
          "type": "string",
          "title": "改定メモ"
        }
      },
      "title": "オプション項目途中解約改定のリクエスト",
      "required": [
        "contractId",
        "contractOptionalId",
        "optionItemId",
        "effectiveStartDate"
      ]
    },
    "CancelOptionResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/CancelOptionResponse.Contract",
          "title": "対象の契約"
        },
        "amendment": {
          "$ref": "#/definitions/CancelOptionResponse.Amendment",
          "title": "改定"
        }
      },
      "title": "オプション項目途中解約改定のレスポンス"
    },
    "CancelOptionResponse.Amendment": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "CancelOptionResponse.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "CatalogChargeItem.DailyRate": {
      "type": "object",
      "properties": {
        "type": {
          "$ref": "#/definitions/CatalogChargeItem.DailyRate.Type"
        },
        "fixedRateValue": {
          "type": "number",
          "format": "double",
          "title": "FIXED_RATE指定時の値"
        }
      }
    },
    "CatalogChargeItem.DailyRate.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_FULL_PRICE",
        "TYPE_DAILY_RATE",
        "TYPE_FIXED_RATE"
      ],
      "default": "TYPE_UNSPECIFIED",
      "title": "- TYPE_FULL_PRICE: 満額\n - TYPE_DAILY_RATE: 利用日数 / 当月の総日数の割合\n - TYPE_FIXED_RATE: 固定された割合"
    },
    "CatalogChargeItem.Timing": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "数(負数の場合は前を表す。例: { \"value\": -1, \"unit\": \"UNIT_MONTHLY\" } => 先月)"
        },
        "unit": {
          "$ref": "#/definitions/CatalogChargeItem.Timing.Unit",
          "title": "単位"
        },
        "monthlyOption": {
          "$ref": "#/definitions/CatalogChargeItem.Timing.MonthlyOption",
          "title": "UNIT_MONTHLY指定時のオプション"
        }
      },
      "required": [
        "value",
        "unit",
        "monthlyOption"
      ]
    },
    "CatalogChargeItem.Timing.MonthlyOption": {
      "type": "string",
      "enum": [
        "MONTHLY_OPTION_UNSPECIFIED",
        "MONTHLY_OPTION_DAY_1",
        "MONTHLY_OPTION_DAY_2",
        "MONTHLY_OPTION_DAY_3",
        "MONTHLY_OPTION_DAY_4",
        "MONTHLY_OPTION_DAY_5",
        "MONTHLY_OPTION_DAY_6",
        "MONTHLY_OPTION_DAY_7",
        "MONTHLY_OPTION_DAY_8",
        "MONTHLY_OPTION_DAY_9",
        "MONTHLY_OPTION_DAY_10",
        "MONTHLY_OPTION_DAY_11",
        "MONTHLY_OPTION_DAY_12",
        "MONTHLY_OPTION_DAY_13",
        "MONTHLY_OPTION_DAY_14",
        "MONTHLY_OPTION_DAY_15",
        "MONTHLY_OPTION_DAY_16",
        "MONTHLY_OPTION_DAY_17",
        "MONTHLY_OPTION_DAY_18",
        "MONTHLY_OPTION_DAY_19",
        "MONTHLY_OPTION_DAY_20",
        "MONTHLY_OPTION_DAY_21",
        "MONTHLY_OPTION_DAY_22",
        "MONTHLY_OPTION_DAY_23",
        "MONTHLY_OPTION_DAY_24",
        "MONTHLY_OPTION_DAY_25",
        "MONTHLY_OPTION_DAY_26",
        "MONTHLY_OPTION_DAY_27",
        "MONTHLY_OPTION_DAY_28",
        "MONTHLY_OPTION_DAY_29",
        "MONTHLY_OPTION_DAY_30",
        "MONTHLY_OPTION_DAY_31",
        "MONTHLY_OPTION_FIRST_DAY_OF_MONTH",
        "MONTHLY_OPTION_LAST_DAY_OF_MONTH"
      ],
      "default": "MONTHLY_OPTION_UNSPECIFIED",
      "description": "- MONTHLY_OPTION_FIRST_DAY_OF_MONTH: alias MONTHLY_OPTION_DAY_1",
      "title": "UNIT_MONTHLY指定時のオプション(1~31の数字 or Enumの文字列)"
    },
    "CatalogChargeItem.Timing.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "CatalogItem": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "カタログアイテムID"
        },
        "optionalId": {
          "type": "string",
          "title": "カタログアイテム管理ID"
        },
        "name": {
          "type": "string",
          "title": "カタログアイテム名"
        },
        "description": {
          "type": "string",
          "title": "カタログアイテム概要"
        },
        "productId": {
          "type": "string",
          "title": "プロダクトID"
        },
        "availabilityClosingDate": {
          "$ref": "#/definitions/ClosingDate",
          "title": "利用締め日"
        },
        "availabilityCycle": {
          "$ref": "#/definitions/AvailabilityCycle",
          "title": "利用周期(例: 1月毎)"
        },
        "status": {
          "$ref": "#/definitions/CatalogItem.Status",
          "title": "ステータス"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/DefaultContractTerm",
          "title": "更新時に延長される期間(旧:契約周期 effective_cycle)"
        },
        "contractSelectRule": {
          "$ref": "#/definitions/ContractSelectRule",
          "title": "契約での取り扱い"
        },
        "catalogChargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.CatalogChargeItem"
          },
          "title": "カタログ課金項目"
        },
        "autoRenewal": {
          "$ref": "#/definitions/AutoRenewal",
          "title": "自動更新設定"
        }
      },
      "title": "カタログアイテム"
    },
    "CatalogItem.Status": {
      "type": "string",
      "enum": [
        "STATUS_UNSPECIFIED",
        "STATUS_ON_SALE",
        "STATUS_DISCONTINUED"
      ],
      "default": "STATUS_UNSPECIFIED",
      "title": "- STATUS_ON_SALE: 販売中\n - STATUS_DISCONTINUED: 終売"
    },
    "ChangeMainItemRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        },
        "mainItemId": {
          "type": "string",
          "title": "メインアイテムID"
        },
        "item": {
          "$ref": "#/definitions/ChangeMainItemRequest.Item",
          "title": "乗り換え先のアイテム"
        },
        "memo": {
          "type": "string",
          "title": "改定メモ"
        }
      },
      "title": "契約アイテム乗換改定のリクエスト",
      "required": [
        "contractId",
        "mainItemId",
        "item"
      ]
    },
    "ChangeMainItemRequest.Item": {
      "type": "object",
      "properties": {
        "catalogItemId": {
          "type": "string",
          "title": "カタログアイテムID"
        },
        "catalogItemOptionalId": {
          "type": "string",
          "title": "カタログアイテム管理ID(カタログアイテムIDの代わりに指定可)"
        },
        "effectiveStartDate": {
          "type": "string",
          "format": "date-time",
          "title": "改定の有効開始日(省略時はアイテム終了日の翌日になります(RFC 3339 format))"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(省略時はカタログの契約期間から算出(RFC 3339 format))"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/ChangeMainItemRequest.Item.Term",
          "title": "基本契約期間(省略時はカタログの契約期間から適用)"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/Item.ChargeItem"
          },
          "title": "課金項目"
        },
        "name": {
          "type": "string",
          "title": "アイテム名。指定しなければカタログアイテムに従います。"
        }
      },
      "title": "メインアイテム",
      "required": [
        "catalogItemId"
      ]
    },
    "ChangeMainItemRequest.Item.Term": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/ChangeMainItemRequest.Item.Term.Unit",
          "title": "単位"
        }
      },
      "title": "基本契約期間",
      "required": [
        "value",
        "unit"
      ]
    },
    "ChangeMainItemRequest.Item.Term.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "ChangeMainItemResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/ChangeMainItemResponse.Contract",
          "title": "対象の契約"
        },
        "amendment": {
          "$ref": "#/definitions/ChangeMainItemResponse.Amendment",
          "title": "改定"
        }
      },
      "title": "アイテム乗換改定のレスポンス"
    },
    "ChangeMainItemResponse.Amendment": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "ChangeMainItemResponse.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "ChangeOptionItemRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        },
        "optionItemId": {
          "type": "string",
          "title": "乗換対象のオプションアイテムID"
        },
        "effectiveStartDate": {
          "type": "string",
          "format": "date-time",
          "title": "改定の有効開始日(乗換日)(RFC 3339 format)"
        },
        "item": {
          "$ref": "#/definitions/ChangeOptionItemRequest.OptionItem",
          "title": "乗換先のオプションアイテム"
        },
        "lastAvailabilityDailyRates": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.LastAvailabilityDailyRate"
          },
          "title": "乗り換え前のオプションの終了月日割設定"
        },
        "memo": {
          "type": "string",
          "title": "改定メモ"
        }
      },
      "title": "オプションアイテム乗り換え改定のリクエスト",
      "required": [
        "contractId",
        "contractOptionalId",
        "optionItemId",
        "effectiveStartDate",
        "item"
      ]
    },
    "ChangeOptionItemRequest.ChargeItem": {
      "type": "object",
      "properties": {
        "catalogChargeItemId": {
          "type": "string",
          "title": "カタログ課金項目ID"
        },
        "optionalId": {
          "type": "string",
          "title": "カタログ課金項目管理ID(半角英数字と_-のみ使用できます)"
        },
        "billAllAtOnce": {
          "type": "boolean",
          "title": "一括請求オプション。指定しなければカタログアイテムに従います"
        },
        "quantity": {
          "type": "integer",
          "format": "int32",
          "title": "契約数。料金モデルが従量制の場合に使用できます"
        },
        "name": {
          "type": "string",
          "title": "課金項目名。指定しなければカタログアイテムに従います"
        },
        "price": {
          "type": "integer",
          "format": "int32",
          "title": "単価。カタログの料金モデルが定額または従量制のみで使用できます。指定しなければカタログアイテムに従います"
        },
        "billingTiming": {
          "$ref": "#/definitions/ChangeOptionItemRequest.ChargeItem.Timing",
          "title": "請求タイミング"
        },
        "billingDueTiming": {
          "$ref": "#/definitions/ChangeOptionItemRequest.ChargeItem.Timing",
          "title": "支払期限タイミング"
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/ChangeOptionItemRequest.ChargeItem.Tier"
          },
          "title": "ティア（段階別価格設定）。ボリューム/段階制の料金モデルで使用します。priceとは排他的です"
        }
      },
      "required": [
        "catalogChargeItemId"
      ]
    },
    "ChangeOptionItemRequest.ChargeItem.Tier": {
      "type": "object",
      "properties": {
        "upperLimit": {
          "type": "string",
          "title": "ティアの上限値。省略時は上限なし（最後のティア）"
        },
        "kind": {
          "$ref": "#/definitions/ChangeOptionItemRequest.ChargeItem.Tier.Kind",
          "title": "料金計算式の種類"
        },
        "unitPrice": {
          "type": "string",
          "title": "単価（KIND_PER_UNIT時に使用）"
        },
        "price": {
          "type": "string",
          "title": "定額価格（KIND_FLAT_FEE時に使用）"
        }
      },
      "title": "ティア（段階別価格設定）\nProtoJSON Format https://protobuf.dev/programming-guides/json/ では discriminated union を適切に表現できないので、\n止む無く value だけ oneof で表現しています。\nしたがって { kind: 'KIND_PER_UNIT', price: string } のようなデータも proto 上では可能な定義になってしまっています。",
      "required": [
        "kind"
      ]
    },
    "ChangeOptionItemRequest.ChargeItem.Tier.Kind": {
      "type": "string",
      "enum": [
        "KIND_UNSPECIFIED",
        "KIND_PER_UNIT",
        "KIND_FLAT_FEE"
      ],
      "default": "KIND_UNSPECIFIED",
      "description": "- KIND_UNSPECIFIED: 未指定\n - KIND_PER_UNIT: 従量制（単価×数量）\n - KIND_FLAT_FEE: 定額制",
      "title": "料金計算式の種類"
    },
    "ChangeOptionItemRequest.ChargeItem.Timing": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "数(負数の場合は前を表す。例: { \"value\": -1, \"unit\": \"UNIT_MONTHLY\" } => 先月)"
        },
        "unit": {
          "$ref": "#/definitions/ChangeOptionItemRequest.ChargeItem.Timing.Unit",
          "title": "単位"
        },
        "monthlyOption": {
          "$ref": "#/definitions/ChangeOptionItemRequest.ChargeItem.Timing.MonthlyOption",
          "title": "UNIT_MONTHLY指定時のオプション"
        }
      },
      "title": "タイミング",
      "required": [
        "value",
        "unit",
        "monthlyOption"
      ]
    },
    "ChangeOptionItemRequest.ChargeItem.Timing.MonthlyOption": {
      "type": "string",
      "enum": [
        "MONTHLY_OPTION_UNSPECIFIED",
        "MONTHLY_OPTION_DAY_1",
        "MONTHLY_OPTION_DAY_2",
        "MONTHLY_OPTION_DAY_3",
        "MONTHLY_OPTION_DAY_4",
        "MONTHLY_OPTION_DAY_5",
        "MONTHLY_OPTION_DAY_6",
        "MONTHLY_OPTION_DAY_7",
        "MONTHLY_OPTION_DAY_8",
        "MONTHLY_OPTION_DAY_9",
        "MONTHLY_OPTION_DAY_10",
        "MONTHLY_OPTION_DAY_11",
        "MONTHLY_OPTION_DAY_12",
        "MONTHLY_OPTION_DAY_13",
        "MONTHLY_OPTION_DAY_14",
        "MONTHLY_OPTION_DAY_15",
        "MONTHLY_OPTION_DAY_16",
        "MONTHLY_OPTION_DAY_17",
        "MONTHLY_OPTION_DAY_18",
        "MONTHLY_OPTION_DAY_19",
        "MONTHLY_OPTION_DAY_20",
        "MONTHLY_OPTION_DAY_21",
        "MONTHLY_OPTION_DAY_22",
        "MONTHLY_OPTION_DAY_23",
        "MONTHLY_OPTION_DAY_24",
        "MONTHLY_OPTION_DAY_25",
        "MONTHLY_OPTION_DAY_26",
        "MONTHLY_OPTION_DAY_27",
        "MONTHLY_OPTION_DAY_28",
        "MONTHLY_OPTION_DAY_29",
        "MONTHLY_OPTION_DAY_30",
        "MONTHLY_OPTION_DAY_31",
        "MONTHLY_OPTION_FIRST_DAY_OF_MONTH",
        "MONTHLY_OPTION_LAST_DAY_OF_MONTH"
      ],
      "default": "MONTHLY_OPTION_UNSPECIFIED",
      "description": "- MONTHLY_OPTION_FIRST_DAY_OF_MONTH: alias MONTHLY_OPTION_DAY_1",
      "title": "UNIT_MONTHLY指定時のオプション(1~31の数字 or Enumの文字列)"
    },
    "ChangeOptionItemRequest.ChargeItem.Timing.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_DAILY",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_DAILY: 日\n - UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "ChangeOptionItemRequest.OptionItem": {
      "type": "object",
      "properties": {
        "catalogItemId": {
          "type": "string",
          "title": "カタログアイテムID"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(省略時はカタログの契約期間から算出(RFC 3339 format))"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/ChangeOptionItemRequest.Term",
          "title": "基本契約期間(省略時はカタログの契約期間から適用)"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/ChangeOptionItemRequest.ChargeItem"
          },
          "title": "課金項目"
        },
        "name": {
          "type": "string",
          "title": "アイテム名。指定しなければカタログアイテムに従います。"
        }
      },
      "title": "乗換先のオプションアイテム",
      "required": [
        "catalogItemId"
      ]
    },
    "ChangeOptionItemRequest.Term": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/ChangeOptionItemRequest.Term.Unit",
          "title": "単位"
        }
      },
      "title": "基本契約期間",
      "required": [
        "value",
        "unit"
      ]
    },
    "ChangeOptionItemRequest.Term.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "ChangeOptionItemResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/ChangeOptionItemResponse.Contract",
          "title": "対象の契約"
        },
        "amendment": {
          "$ref": "#/definitions/ChangeOptionItemResponse.Amendment",
          "title": "改定"
        }
      },
      "title": "オプションアイテム乗り換え改定のレスポンス"
    },
    "ChangeOptionItemResponse.Amendment": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "ChangeOptionItemResponse.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "ChangeQuantityExpectedBillingRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "optionalId": {
          "type": "string",
          "title": "契約管理ID(IDの代わりに指定可)"
        },
        "contractChargeItemId": {
          "type": "string",
          "title": "契約の課金項目ID（ContractChargeItemId）"
        },
        "effectiveStartDate": {
          "type": "string",
          "format": "date-time",
          "title": "有効開始日 (RFC3339)"
        },
        "quantity": {
          "type": "integer",
          "format": "int32",
          "title": "新しい数量"
        },
        "changeQuantityDailyRate": {
          "$ref": "#/definitions/v1.DailyRate",
          "title": "契約数変更における日割り設定"
        }
      },
      "title": "契約数変更に伴う請求予定計算のリクエスト",
      "required": [
        "id",
        "contractChargeItemId",
        "effectiveStartDate",
        "quantity"
      ]
    },
    "ChangeQuantityExpectedBillingResponse": {
      "type": "object",
      "properties": {
        "expectedBilling": {
          "$ref": "#/definitions/ExpectedBilling"
        }
      },
      "title": "契約数変更に伴い単一の請求予定を返すレスポンス"
    },
    "ChangeQuantityRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        },
        "contractChargeItemId": {
          "type": "string",
          "title": "契約課金項目ID"
        },
        "effectiveStartDate": {
          "type": "string",
          "format": "date-time"
        },
        "quantity": {
          "type": "integer",
          "format": "int32",
          "title": "変更後の契約数"
        },
        "memo": {
          "type": "string",
          "title": "改定メモ"
        },
        "changeQuantityDailyRate": {
          "$ref": "#/definitions/ChangeQuantityRequest.DailyRate",
          "title": "契約数変更時の日割設定"
        }
      },
      "title": "契約数変更リクエスト"
    },
    "ChangeQuantityRequest.DailyRate": {
      "type": "object",
      "properties": {
        "type": {
          "$ref": "#/definitions/ChangeQuantityRequest.DailyRate.Type"
        },
        "fixedRateValue": {
          "type": "number",
          "format": "double",
          "title": "FIXED_RATE指定時の値"
        }
      }
    },
    "ChangeQuantityRequest.DailyRate.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_FULL_PRICE",
        "TYPE_DAILY_RATE",
        "TYPE_FIXED_RATE"
      ],
      "default": "TYPE_UNSPECIFIED",
      "title": "- TYPE_FULL_PRICE: 満額\n - TYPE_DAILY_RATE: 利用日数 / 当月の総日数の割合\n - TYPE_FIXED_RATE: 固定された割合"
    },
    "ChangeQuantityResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/ChangeQuantityResponse.Contract",
          "title": "対象の契約"
        },
        "amendment": {
          "$ref": "#/definitions/ChangeQuantityResponse.Amendment",
          "title": "改定"
        }
      },
      "title": "契約数変更レスポンス"
    },
    "ChangeQuantityResponse.Amendment": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "ChangeQuantityResponse.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "ChargeItemType": {
      "type": "string",
      "enum": [
        "CHARGE_ITEM_TYPE_UNSPECIFIED",
        "CHARGE_ITEM_TYPE_RECURRING",
        "CHARGE_ITEM_TYPE_ONE_TIME",
        "CHARGE_ITEM_TYPE_DISCOUNT"
      ],
      "default": "CHARGE_ITEM_TYPE_UNSPECIFIED",
      "description": "- CHARGE_ITEM_TYPE_RECURRING: 定期課金\n - CHARGE_ITEM_TYPE_ONE_TIME: 一回課金\n - CHARGE_ITEM_TYPE_DISCOUNT: ディスカウント",
      "title": "課金項目タイプ"
    },
    "Clause.Status": {
      "type": "object",
      "properties": {
        "eq": {
          "$ref": "#/definitions/Status.Status"
        }
      }
    },
    "ClosingDate": {
      "type": "string",
      "enum": [
        "CLOSING_DATE_UNSPECIFIED",
        "CLOSING_DATE_LAST_DAY_OF_MONTH",
        "CLOSING_DATE_ONE_DAY_BEFORE"
      ],
      "default": "CLOSING_DATE_UNSPECIFIED",
      "title": "- CLOSING_DATE_LAST_DAY_OF_MONTH: 月末締め\n - CLOSING_DATE_ONE_DAY_BEFORE: 利用開始日の前日"
    },
    "Contract.ChargeItem.Tier.FeeFormula": {
      "type": "string",
      "enum": [
        "FEE_FORMULA_UNSPECIFIED",
        "FEE_FORMULA_PER_UNIT",
        "FEE_FORMULA_FLAT_FEE"
      ],
      "default": "FEE_FORMULA_UNSPECIFIED"
    },
    "Contract.ChargeItem.Tier.Kind": {
      "type": "string",
      "enum": [
        "KIND_UNSPECIFIED",
        "KIND_PER_UNIT",
        "KIND_FLAT_FEE"
      ],
      "default": "KIND_UNSPECIFIED"
    },
    "Contract.Service": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約サービスID"
        },
        "mainItem": {
          "$ref": "#/definitions/v2.Contract.Item",
          "title": "メイン契約アイテム"
        },
        "optionItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v2.Contract.Item"
          },
          "title": "オプション契約アイテム（メインアイテムに紐づくオプション）"
        }
      },
      "title": "契約サービス"
    },
    "ContractChargeItemType": {
      "type": "string",
      "enum": [
        "CONTRACT_CHARGE_ITEM_TYPE_UNSPECIFIED",
        "CONTRACT_CHARGE_ITEM_TYPE_RECURRING",
        "CONTRACT_CHARGE_ITEM_TYPE_ONE_TIME"
      ],
      "default": "CONTRACT_CHARGE_ITEM_TYPE_UNSPECIFIED",
      "description": "- CONTRACT_CHARGE_ITEM_TYPE_RECURRING: 定期課金\n - CONTRACT_CHARGE_ITEM_TYPE_ONE_TIME: 一回課金",
      "title": "契約課金項目タイプ"
    },
    "ContractEndDate": {
      "type": "object",
      "properties": {
        "gte": {
          "type": "string",
          "format": "date-time"
        },
        "lte": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "ContractEndDateFilterClause": {
      "type": "object",
      "properties": {
        "gte": {
          "type": "string",
          "format": "date-time"
        },
        "lte": {
          "type": "string",
          "format": "date-time"
        }
      },
      "title": "契約終了日フィルタ"
    },
    "ContractItemEndDate": {
      "type": "object",
      "properties": {
        "gte": {
          "type": "string",
          "format": "date-time"
        },
        "lte": {
          "type": "string",
          "format": "date-time"
        }
      },
      "title": "契約アイテム終了日フィルタ"
    },
    "ContractItemEndDateFilterClause": {
      "type": "object",
      "properties": {
        "gte": {
          "type": "string",
          "format": "date-time"
        },
        "lte": {
          "type": "string",
          "format": "date-time"
        }
      },
      "title": "契約アイテム終了日フィルタ"
    },
    "ContractOrder": {
      "type": "object",
      "properties": {
        "field": {
          "$ref": "#/definitions/ContractOrder.Field"
        },
        "direction": {
          "$ref": "#/definitions/ContractOrder.Direction"
        }
      },
      "title": "ソート条件"
    },
    "ContractOrder.Direction": {
      "type": "string",
      "enum": [
        "DIRECTION_UNSPECIFIED",
        "DIRECTION_ASCENDING",
        "DIRECTION_DESCENDING"
      ],
      "default": "DIRECTION_UNSPECIFIED",
      "description": "- DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
      "title": "順序"
    },
    "ContractOrder.Field": {
      "type": "string",
      "enum": [
        "FIELD_UNSPECIFIED",
        "FIELD_ID",
        "FIELD_CONTRACT_END_DATE"
      ],
      "default": "FIELD_UNSPECIFIED",
      "description": "- FIELD_ID: 請求ID\n - FIELD_CONTRACT_END_DATE: 契約終了日",
      "title": "対象"
    },
    "ContractSelectRule": {
      "type": "string",
      "enum": [
        "CONTRACT_SELECT_RULE_UNSPECIFIED",
        "CONTRACT_SELECT_RULE_MAIN_OR_OPTION",
        "CONTRACT_SELECT_RULE_ONLY_MAIN",
        "CONTRACT_SELECT_RULE_ONLY_OPTION"
      ],
      "default": "CONTRACT_SELECT_RULE_UNSPECIFIED",
      "description": "- CONTRACT_SELECT_RULE_UNSPECIFIED: 未指定\n - CONTRACT_SELECT_RULE_MAIN_OR_OPTION: メインまたはオプション\n - CONTRACT_SELECT_RULE_ONLY_MAIN: メインのみ\n - CONTRACT_SELECT_RULE_ONLY_OPTION: オプションのみ",
      "title": "契約での取り扱い"
    },
    "ContractSortOrder": {
      "type": "object",
      "properties": {
        "field": {
          "$ref": "#/definitions/ContractSortOrder.Field"
        },
        "direction": {
          "$ref": "#/definitions/ContractSortOrder.Direction"
        }
      },
      "title": "契約のソート条件"
    },
    "ContractSortOrder.Direction": {
      "type": "string",
      "enum": [
        "DIRECTION_UNSPECIFIED",
        "DIRECTION_ASCENDING",
        "DIRECTION_DESCENDING"
      ],
      "default": "DIRECTION_UNSPECIFIED",
      "description": "- DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
      "title": "順序"
    },
    "ContractSortOrder.Field": {
      "type": "string",
      "enum": [
        "FIELD_UNSPECIFIED",
        "FIELD_ID",
        "FIELD_CONTRACT_END_DATE"
      ],
      "default": "FIELD_UNSPECIFIED",
      "description": "- FIELD_ID: 契約ID\n - FIELD_CONTRACT_END_DATE: 契約終了日",
      "title": "対象"
    },
    "CreateBillingsRequest": {
      "type": "object",
      "properties": {
        "targetContracts": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CreateBillingsRequest.ContractIdentifier"
          },
          "title": "対象契約のリスト"
        },
        "holdInvoiceCreation": {
          "type": "boolean",
          "title": "請求書作成を保留するかどうか"
        },
        "arbitraryBillingDate": {
          "type": "string",
          "format": "date-time",
          "title": "請求日（任意）。未指定の場合は契約の次回請求日を使用する"
        },
        "arbitraryBillingDueDate": {
          "type": "string",
          "format": "date-time",
          "title": "支払期限日（任意）。未指定の場合は契約の支払期限タイミングを使用する"
        }
      },
      "title": "請求生成のリクエスト",
      "required": [
        "targetContracts"
      ]
    },
    "CreateBillingsRequest.ContractIdentifier": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "optionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        }
      },
      "title": "対象契約の識別子",
      "required": [
        "id",
        "optionalId"
      ]
    },
    "CreateBillingsResponse": {
      "type": "object",
      "properties": {
        "ids": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "請求ID"
        }
      },
      "title": "請求生成のレスポンス"
    },
    "CreateContractRequest.CatalogItemIdentifier": {
      "type": "object",
      "properties": {
        "catalogItemId": {
          "type": "string",
          "title": "カタログアイテムID"
        },
        "catalogItemOptionalId": {
          "type": "string",
          "title": "カタログアイテム管理ID(カタログアイテムIDの代わりに指定可)"
        }
      },
      "title": "カタログアイテム識別子",
      "required": [
        "catalogItemId"
      ]
    },
    "CreateContractRequest.ChargeItem.Pricing": {
      "type": "object",
      "properties": {
        "price": {
          "type": "integer",
          "format": "int32",
          "title": "単一価格（定額制または従量制のみ）"
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CreateContractRequest.ChargeItem.Tier"
          },
          "title": "ティア（段階的価格設定）"
        }
      },
      "title": "料金設定（どちらか片方必須）"
    },
    "CreateContractRequest.ChargeItem.Tier": {
      "type": "object",
      "properties": {
        "upperLimit": {
          "type": "string",
          "title": "上限値（最後のティアのみ省略可）"
        },
        "feeFormula": {
          "$ref": "#/definitions/CreateContractRequest.ChargeItem.Tier.FeeFormula",
          "title": "料金計算式"
        },
        "unitPrice": {
          "type": "string",
          "title": "単価。定額制の場合はこの値がそのまま料金となり、従量制の場合は数量との積算で料金が決まる"
        }
      },
      "title": "ティア",
      "required": [
        "feeFormula",
        "unitPrice"
      ]
    },
    "CreateContractRequest.ChargeItem.Tier.FeeFormula": {
      "type": "string",
      "enum": [
        "FEE_FORMULA_UNSPECIFIED",
        "FEE_FORMULA_PER_UNIT",
        "FEE_FORMULA_FLAT_FEE"
      ],
      "default": "FEE_FORMULA_UNSPECIFIED",
      "description": "- FEE_FORMULA_PER_UNIT: 従量\n - FEE_FORMULA_FLAT_FEE: 定額",
      "title": "料金計算式"
    },
    "CreateContractRequest.ChargeItem.Timing": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "数(負数の場合は前を表す。例: { \"value\": -1, \"unit\": \"UNIT_MONTHLY\" } => 先月)"
        },
        "unit": {
          "$ref": "#/definitions/CreateContractRequest.ChargeItem.Timing.Unit",
          "title": "単位"
        },
        "monthlyOption": {
          "$ref": "#/definitions/CreateContractRequest.ChargeItem.Timing.MonthlyOption",
          "title": "UNIT_MONTHLY指定時のオプション"
        }
      },
      "title": "タイミング",
      "required": [
        "value",
        "unit",
        "monthlyOption"
      ]
    },
    "CreateContractRequest.ChargeItem.Timing.MonthlyOption": {
      "type": "string",
      "enum": [
        "MONTHLY_OPTION_UNSPECIFIED",
        "MONTHLY_OPTION_DAY_1",
        "MONTHLY_OPTION_DAY_2",
        "MONTHLY_OPTION_DAY_3",
        "MONTHLY_OPTION_DAY_4",
        "MONTHLY_OPTION_DAY_5",
        "MONTHLY_OPTION_DAY_6",
        "MONTHLY_OPTION_DAY_7",
        "MONTHLY_OPTION_DAY_8",
        "MONTHLY_OPTION_DAY_9",
        "MONTHLY_OPTION_DAY_10",
        "MONTHLY_OPTION_DAY_11",
        "MONTHLY_OPTION_DAY_12",
        "MONTHLY_OPTION_DAY_13",
        "MONTHLY_OPTION_DAY_14",
        "MONTHLY_OPTION_DAY_15",
        "MONTHLY_OPTION_DAY_16",
        "MONTHLY_OPTION_DAY_17",
        "MONTHLY_OPTION_DAY_18",
        "MONTHLY_OPTION_DAY_19",
        "MONTHLY_OPTION_DAY_20",
        "MONTHLY_OPTION_DAY_21",
        "MONTHLY_OPTION_DAY_22",
        "MONTHLY_OPTION_DAY_23",
        "MONTHLY_OPTION_DAY_24",
        "MONTHLY_OPTION_DAY_25",
        "MONTHLY_OPTION_DAY_26",
        "MONTHLY_OPTION_DAY_27",
        "MONTHLY_OPTION_DAY_28",
        "MONTHLY_OPTION_DAY_29",
        "MONTHLY_OPTION_DAY_30",
        "MONTHLY_OPTION_DAY_31",
        "MONTHLY_OPTION_FIRST_DAY_OF_MONTH",
        "MONTHLY_OPTION_LAST_DAY_OF_MONTH"
      ],
      "default": "MONTHLY_OPTION_UNSPECIFIED",
      "description": "- MONTHLY_OPTION_FIRST_DAY_OF_MONTH: alias MONTHLY_OPTION_DAY_1",
      "title": "UNIT_MONTHLY指定時のオプション(1~31の数字 or Enumの文字列)"
    },
    "CreateContractRequest.ChargeItem.Timing.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_DAILY",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_DAILY: 日\n - UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "CreateContractRequest.Customer": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "顧客ID"
        },
        "optionalId": {
          "type": "string",
          "title": "顧客管理ID(顧客IDの代わりに指定可)"
        },
        "customerStaffId": {
          "type": "string",
          "title": "顧客担当者ID(請求先等の担当者として登録されます)"
        },
        "customerStaffOptionalId": {
          "type": "string",
          "title": "顧客担当者管理ID(顧客担当者IDの代わりに指定可)"
        }
      },
      "title": "顧客",
      "required": [
        "id"
      ]
    },
    "CreateContractRequest.CustomerStaff": {
      "type": "object",
      "properties": {
        "customerStaffId": {
          "type": "string",
          "title": "顧客担当者ID"
        },
        "customerStaffOptionalId": {
          "type": "string",
          "title": "顧客担当者管理ID(顧客担当者IDの代わりに指定可)"
        }
      },
      "title": "顧客担当者",
      "required": [
        "customerStaffId"
      ]
    },
    "CreateContractRequest.MainItem": {
      "type": "object",
      "properties": {
        "catalogItemId": {
          "type": "string",
          "title": "カタログアイテムID"
        },
        "catalogItemOptionalId": {
          "type": "string",
          "title": "カタログアイテム管理ID(カタログアイテムIDの代わりに指定可)"
        },
        "itemStartDate": {
          "type": "string",
          "format": "date-time",
          "title": "(DEPRECATED: start_date をお使いください) アイテム契約開始日(RFC 3339 format)"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.CreateContractRequest.ChargeItem"
          },
          "title": "課金項目パラメータ"
        },
        "optionItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CreateContractRequest.OptionItem"
          },
          "title": "オプションとなるアイテム"
        },
        "startDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約開始日(RFC 3339 format)"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(省略時はカタログの契約期間から算出(RFC 3339 format))"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/v1.CreateContractRequest.Term",
          "title": "基本契約期間(省略時はカタログの契約期間から適用)"
        },
        "name": {
          "type": "string",
          "title": "アイテム名。指定しなければカタログアイテムに従います。"
        },
        "availabilityCycle": {
          "$ref": "#/definitions/v1.CreateContractRequest.Term",
          "title": "利用周期(省略時はカタログの利用周期から適用)"
        }
      },
      "title": "メインとなるアイテム",
      "required": [
        "startDate"
      ]
    },
    "CreateContractRequest.OptionItem": {
      "type": "object",
      "properties": {
        "catalogItemId": {
          "type": "string",
          "title": "カタログアイテムID"
        },
        "catalogItemOptionalId": {
          "type": "string",
          "title": "カタログアイテム管理ID(カタログアイテムIDの代わりに指定可)"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.CreateContractRequest.ChargeItem"
          },
          "title": "課金項目パラメータ"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(省略時はカタログの契約期間から算出(RFC 3339 format))"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/v1.CreateContractRequest.Term",
          "title": "基本契約期間(省略時はカタログの契約期間から適用)"
        },
        "name": {
          "type": "string",
          "title": "アイテム名。指定しなければカタログアイテムに従います。"
        },
        "availabilityCycle": {
          "$ref": "#/definitions/v1.CreateContractRequest.Term",
          "title": "利用周期(省略時はカタログの利用周期から適用)"
        }
      },
      "title": "オプションとなるアイテム"
    },
    "CreateContractRequest.Service": {
      "type": "object",
      "properties": {
        "mainItem": {
          "$ref": "#/definitions/Service.MainItem",
          "title": "メインとなるアイテム"
        },
        "optionItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/Service.OptionItem"
          },
          "title": "オプションとなるアイテム"
        }
      },
      "title": "契約サービス",
      "required": [
        "mainItem"
      ]
    },
    "CreateCustomerRequest": {
      "type": "object",
      "properties": {
        "optionalId": {
          "type": "string",
          "title": "顧客管理ID"
        },
        "name": {
          "type": "string",
          "title": "顧客名"
        },
        "salesRepresentative": {
          "$ref": "#/definitions/CreateCustomerRequest.SalesRepresentative"
        },
        "crmAccountId": {
          "type": "string",
          "title": "外部CRMサービスのアカウントID"
        }
      },
      "title": "顧客作成のリクエスト",
      "required": [
        "name"
      ]
    },
    "CreateCustomerRequest.SalesRepresentative": {
      "type": "object",
      "properties": {
        "firstName": {
          "type": "string",
          "title": "営業担当者の名"
        },
        "lastName": {
          "type": "string",
          "title": "営業担当者の姓"
        }
      },
      "title": "営業担当者"
    },
    "CreateCustomerResponse": {
      "type": "object",
      "properties": {
        "customer": {
          "$ref": "#/definitions/v1.Customer",
          "title": "顧客"
        }
      },
      "title": "顧客作成のレスポンス"
    },
    "CreateCustomerStaffRequest": {
      "type": "object",
      "properties": {
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "customerOptionalId": {
          "type": "string",
          "title": "顧客管理ID(顧客IDの代わりに指定可)"
        },
        "optionalId": {
          "type": "string",
          "title": "顧客担当者管理ID"
        },
        "name": {
          "$ref": "#/definitions/CreateCustomerStaffRequest.Name",
          "title": "顧客担当者名"
        },
        "department": {
          "type": "string",
          "title": "部門"
        },
        "title": {
          "type": "string",
          "title": "肩書"
        },
        "phoneNumber": {
          "type": "string",
          "title": "電話番号"
        },
        "emailAddress": {
          "type": "string",
          "title": "メールアドレス"
        },
        "address": {
          "$ref": "#/definitions/CreateCustomerStaffRequest.Address",
          "title": "住所"
        },
        "crmStaffId": {
          "type": "string",
          "title": "外部CRMサービスの担当者ID"
        }
      },
      "title": "顧客担当者作成のリクエスト",
      "required": [
        "customerId"
      ]
    },
    "CreateCustomerStaffRequest.Address": {
      "type": "object",
      "properties": {
        "zipCode": {
          "type": "string",
          "title": "郵便番号"
        },
        "country": {
          "$ref": "#/definitions/CreateCustomerStaffRequest.Address.Country",
          "title": "国"
        },
        "prefecture": {
          "$ref": "#/definitions/CreateCustomerStaffRequest.Address.Prefecture",
          "title": "都道府県"
        },
        "city": {
          "type": "string",
          "title": "市区町村"
        },
        "addressLines": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "[番地, 建物名・階数]"
        }
      },
      "title": "住所"
    },
    "CreateCustomerStaffRequest.Address.Country": {
      "type": "string",
      "enum": [
        "COUNTRY_UNSPECIFIED",
        "COUNTRY_JP"
      ],
      "default": "COUNTRY_UNSPECIFIED",
      "title": "国"
    },
    "CreateCustomerStaffRequest.Address.Prefecture": {
      "type": "string",
      "enum": [
        "PREFECTURE_UNSPECIFIED",
        "PREFECTURE_HOKKAIDO",
        "PREFECTURE_AOMORI",
        "PREFECTURE_IWATE",
        "PREFECTURE_MIYAGI",
        "PREFECTURE_AKITA",
        "PREFECTURE_YAMAGATA",
        "PREFECTURE_FUKUSHIMA",
        "PREFECTURE_IBARAKI",
        "PREFECTURE_TOCHIGI",
        "PREFECTURE_GUNMA",
        "PREFECTURE_SAITAMA",
        "PREFECTURE_CHIBA",
        "PREFECTURE_TOKYO",
        "PREFECTURE_KANAGAWA",
        "PREFECTURE_NIIGATA",
        "PREFECTURE_TOYAMA",
        "PREFECTURE_ISHIKAWA",
        "PREFECTURE_FUKUI",
        "PREFECTURE_YAMANASHI",
        "PREFECTURE_NAGANO",
        "PREFECTURE_GIFU",
        "PREFECTURE_SHIZUOKA",
        "PREFECTURE_AICHI",
        "PREFECTURE_MIE",
        "PREFECTURE_SHIGA",
        "PREFECTURE_KYOTO",
        "PREFECTURE_OSAKA",
        "PREFECTURE_HYOGO",
        "PREFECTURE_NARA",
        "PREFECTURE_WAKAYAMA",
        "PREFECTURE_TOTTORI",
        "PREFECTURE_SHIMANE",
        "PREFECTURE_OKAYAMA",
        "PREFECTURE_HIROSHIMA",
        "PREFECTURE_YAMAGUCHI",
        "PREFECTURE_TOKUSHIMA",
        "PREFECTURE_KAGAWA",
        "PREFECTURE_EHIME",
        "PREFECTURE_KOCHI",
        "PREFECTURE_FUKUOKA",
        "PREFECTURE_SAGA",
        "PREFECTURE_NAGASAKI",
        "PREFECTURE_KUMAMOTO",
        "PREFECTURE_OITA",
        "PREFECTURE_MIYAZAKI",
        "PREFECTURE_KAGOSHIMA",
        "PREFECTURE_OKINAWA"
      ],
      "default": "PREFECTURE_UNSPECIFIED",
      "title": "都道府県"
    },
    "CreateCustomerStaffRequest.Name": {
      "type": "object",
      "properties": {
        "firstName": {
          "type": "string",
          "title": "顧客担当者の名"
        },
        "lastName": {
          "type": "string",
          "title": "顧客担当者の姓"
        },
        "firstNameKana": {
          "type": "string",
          "title": "顧客担当者の名（ふりがな）"
        },
        "lastNameKana": {
          "type": "string",
          "title": "顧客担当者の姓（ふりがな）"
        }
      },
      "title": "名前"
    },
    "CreateCustomerStaffResponse": {
      "type": "object",
      "properties": {
        "customerStaff": {
          "$ref": "#/definitions/v1.CustomerStaff",
          "title": "顧客担当者"
        }
      },
      "title": "顧客担当者作成のレスポンス"
    },
    "CreateProductRequest": {
      "type": "object",
      "properties": {
        "optionalId": {
          "type": "string",
          "title": "プロダクト管理ID"
        },
        "name": {
          "type": "string",
          "title": "プロダクト名"
        },
        "description": {
          "type": "string",
          "title": "プロダクト概要"
        }
      },
      "title": "プロダクト作成のリクエスト"
    },
    "CreateProductResponse": {
      "type": "object",
      "properties": {
        "product": {
          "$ref": "#/definitions/Product"
        }
      },
      "title": "プロダクト作成のレスポンス"
    },
    "CustomFieldMaster": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "カスタムフィールドマスターID"
        },
        "type": {
          "$ref": "#/definitions/CustomFieldMaster.FieldType",
          "title": "カスタムフィールドタイプ\n(DEPRECATED: field_type をお使いください)"
        },
        "name": {
          "type": "string",
          "title": "カスタムフィールドマスタ名"
        },
        "fieldType": {
          "$ref": "#/definitions/CustomFieldMaster.FieldType",
          "title": "カスタムフィールドタイプ"
        },
        "dataType": {
          "$ref": "#/definitions/CustomFieldMaster.DataType",
          "title": "カスタムフィールドデータタイプ"
        }
      },
      "title": "カスタムフィールドマスター"
    },
    "CustomFieldMaster.DataType": {
      "type": "string",
      "enum": [
        "DATA_TYPE_UNSPECIFIED",
        "DATA_TYPE_STRING",
        "DATA_TYPE_DATE",
        "DATA_TYPE_SELECT_LIST"
      ],
      "default": "DATA_TYPE_UNSPECIFIED",
      "title": "カスタムフィールドデータタイプ"
    },
    "CustomFieldMaster.FieldType": {
      "type": "string",
      "enum": [
        "FIELD_TYPE_UNSPECIFIED",
        "FIELD_TYPE_CUSTOMER",
        "FIELD_TYPE_CONTRACT"
      ],
      "default": "FIELD_TYPE_UNSPECIFIED",
      "title": "カスタムフィールドタイプ"
    },
    "CustomFieldUpdateError": {
      "type": "object",
      "properties": {
        "resource": {
          "$ref": "#/definitions/Resource",
          "title": "エラーが発生したリソースの識別子"
        },
        "errorType": {
          "$ref": "#/definitions/CustomFieldUpdateError.ErrorType",
          "title": "エラータイプ"
        },
        "message": {
          "type": "string",
          "title": "エラーメッセージ"
        }
      },
      "title": "カスタムフィールド更新エラー"
    },
    "CustomFieldUpdateError.ErrorType": {
      "type": "string",
      "enum": [
        "ERROR_TYPE_UNSPECIFIED",
        "ERROR_TYPE_NOT_FOUND",
        "ERROR_TYPE_VALIDATION_FAILED",
        "ERROR_TYPE_STORE_FAILED"
      ],
      "default": "ERROR_TYPE_UNSPECIFIED"
    },
    "CustomFieldUpdateSummary": {
      "type": "object",
      "properties": {
        "totalCount": {
          "type": "integer",
          "format": "int32",
          "title": "要求されたリソース数"
        },
        "successCount": {
          "type": "integer",
          "format": "int32",
          "title": "更新に成功したリソース数"
        },
        "failedCount": {
          "type": "integer",
          "format": "int32",
          "title": "更新に失敗したリソース数"
        }
      },
      "title": "カスタムフィールド更新サマリー"
    },
    "Customer.SalesRepresentative": {
      "type": "object",
      "properties": {
        "firstName": {
          "type": "string",
          "title": "営業担当者の名"
        },
        "lastName": {
          "type": "string",
          "title": "営業担当者の姓"
        }
      },
      "title": "営業担当者"
    },
    "CustomerEqFilterClause": {
      "type": "object",
      "properties": {
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "customerOptionalId": {
          "type": "string",
          "title": "顧客管理ID（顧客IDの代わりに指定可）"
        }
      },
      "title": "顧客フィルタ",
      "required": [
        "customerId"
      ]
    },
    "CustomerIdentifier": {
      "type": "object",
      "properties": {
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "customerOptionalId": {
          "type": "string",
          "title": "顧客管理ID（顧客IDの代わりに指定可）"
        }
      },
      "title": "顧客識別子",
      "required": [
        "customerId"
      ]
    },
    "CustomerStaffIdentifier": {
      "type": "object",
      "properties": {
        "customerStaffId": {
          "type": "string",
          "title": "顧客担当者ID"
        },
        "customerStaffOptionalId": {
          "type": "string",
          "title": "顧客担当者管理ID（顧客担当者IDの代わりに指定可）"
        }
      },
      "title": "顧客担当者識別子",
      "required": [
        "customerStaffId"
      ]
    },
    "CustomizeOptionItemRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        },
        "optionItemId": {
          "type": "string"
        },
        "effectiveStartDate": {
          "type": "string",
          "format": "date-time",
          "title": "改定の有効開始日"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CustomizeOptionItemRequest.ChargeItem"
          },
          "title": "契約課金項目"
        },
        "memo": {
          "type": "string",
          "title": "改定メモ"
        }
      },
      "title": "オプションアイテム編集改定のリクエスト",
      "required": [
        "contractId",
        "contractOptionalId",
        "optionItemId",
        "effectiveStartDate"
      ]
    },
    "CustomizeOptionItemRequest.ChargeItem": {
      "type": "object",
      "properties": {
        "contractChargeItemId": {
          "type": "string",
          "title": "契約課金項目ID"
        },
        "billAllAtOnce": {
          "type": "boolean",
          "title": "一括請求オプション。指定しなければ編集前と同じ値となります"
        },
        "name": {
          "type": "string",
          "title": "請求書記載名。指定しなければ編集前と同じ値になります"
        },
        "price": {
          "type": "integer",
          "format": "int32",
          "title": "単価。カタログの料金モデルが定額または従量制のみで使用できます。指定しなければ編集前と同じ値になります"
        }
      }
    },
    "CustomizeOptionItemResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/CustomizeOptionItemResponse.Contract",
          "title": "対象の契約"
        },
        "amendment": {
          "$ref": "#/definitions/CustomizeOptionItemResponse.Amendment",
          "title": "改定"
        }
      },
      "title": "オプションアイテム編集改定のレスポンス"
    },
    "CustomizeOptionItemResponse.Amendment": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "CustomizeOptionItemResponse.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "DailyUsage": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      },
      "title": "使用量(日毎)"
    },
    "DayOfMonth": {
      "type": "string",
      "enum": [
        "DAY_OF_MONTH_UNSPECIFIED",
        "DAY_OF_MONTH_1",
        "DAY_OF_MONTH_2",
        "DAY_OF_MONTH_3",
        "DAY_OF_MONTH_4",
        "DAY_OF_MONTH_5",
        "DAY_OF_MONTH_6",
        "DAY_OF_MONTH_7",
        "DAY_OF_MONTH_8",
        "DAY_OF_MONTH_9",
        "DAY_OF_MONTH_10",
        "DAY_OF_MONTH_11",
        "DAY_OF_MONTH_12",
        "DAY_OF_MONTH_13",
        "DAY_OF_MONTH_14",
        "DAY_OF_MONTH_15",
        "DAY_OF_MONTH_16",
        "DAY_OF_MONTH_17",
        "DAY_OF_MONTH_18",
        "DAY_OF_MONTH_19",
        "DAY_OF_MONTH_20",
        "DAY_OF_MONTH_21",
        "DAY_OF_MONTH_22",
        "DAY_OF_MONTH_23",
        "DAY_OF_MONTH_24",
        "DAY_OF_MONTH_25",
        "DAY_OF_MONTH_26",
        "DAY_OF_MONTH_27",
        "DAY_OF_MONTH_28",
        "DAY_OF_MONTH_29",
        "DAY_OF_MONTH_30",
        "DAY_OF_MONTH_31",
        "DAY_OF_MONTH_FIRST",
        "DAY_OF_MONTH_LAST"
      ],
      "default": "DAY_OF_MONTH_UNSPECIFIED",
      "description": "- DAY_OF_MONTH_FIRST: alias DAY_OF_MONTH_1",
      "title": "月の日"
    },
    "DefaultContractTerm": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/DefaultContractTerm.Unit",
          "title": "単位"
        }
      },
      "required": [
        "value",
        "unit"
      ]
    },
    "DefaultContractTerm.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "DeleteCustomerRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "顧客ID"
        },
        "optionalId": {
          "type": "string",
          "title": "顧客管理ID(顧客IDの代わりに指定可)"
        }
      },
      "title": "顧客削除のリクエスト"
    },
    "DeleteCustomerResponse": {
      "type": "object",
      "title": "顧客削除のレスポンス"
    },
    "DeleteCustomerStaffRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "顧客担当者ID"
        },
        "optionalId": {
          "type": "string",
          "title": "顧客担当者管理ID(顧客担当者IDの代わりに指定可)"
        },
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "customerOptionalId": {
          "type": "string",
          "title": "顧客管理ID(顧客IDの代わりに指定可)"
        }
      },
      "title": "顧客担当削除のリクエスト",
      "required": [
        "id",
        "customerId"
      ]
    },
    "DeleteCustomerStaffResponse": {
      "type": "object",
      "title": "顧客担当者削除のレスポンス"
    },
    "ExpectedBilling": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/ExpectedBilling.Item"
          },
          "title": "請求項目"
        },
        "billingDate": {
          "type": "string",
          "format": "date-time",
          "title": "請求日(RFC 3339 format)"
        },
        "dueDate": {
          "type": "string",
          "format": "date-time",
          "title": "期限日(RFC 3339 format)"
        },
        "total": {
          "type": "number",
          "format": "double",
          "title": "合計(税込)。請求項目の料金の合計"
        },
        "totalTaxAmount": {
          "type": "number",
          "format": "double",
          "title": "税額"
        },
        "totalTaxExcluded": {
          "type": "number",
          "format": "double",
          "title": "合計(税抜)。請求項目の料金の合計"
        }
      },
      "title": "請求予定"
    },
    "ExpectedBilling.Item": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "title": "請求項目名"
        },
        "unitPrice": {
          "type": "number",
          "format": "double",
          "title": "単価"
        },
        "quantity": {
          "type": "string",
          "format": "int64",
          "title": "数量"
        },
        "subtotal": {
          "type": "number",
          "format": "double",
          "title": "小計"
        },
        "taxPercentage": {
          "type": "integer",
          "format": "int32",
          "title": "税率"
        },
        "startDate": {
          "type": "string",
          "format": "date-time",
          "title": "開始日(RFC 3339 format)"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "終了日(RFC 3339 format)"
        }
      },
      "title": "請求項目"
    },
    "Extensions": {
      "type": "object",
      "properties": {
        "billingDestination": {
          "$ref": "#/definitions/CreateContractRequest.Customer",
          "title": "請求先顧客"
        }
      },
      "title": "拡張機能"
    },
    "FincodeCustomer": {
      "type": "object",
      "properties": {
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "fincodeCustomerId": {
          "type": "string",
          "title": "fincode顧客ID"
        }
      },
      "title": "fincode顧客連携情報"
    },
    "FlatFeeOption": {
      "type": "object",
      "properties": {
        "price": {
          "type": "number",
          "format": "double",
          "title": "料金"
        }
      },
      "required": [
        "price"
      ]
    },
    "GetBillingRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "請求ID"
        }
      },
      "title": "請求取得リクエスト",
      "required": [
        "id"
      ]
    },
    "GetBillingResponse": {
      "type": "object",
      "properties": {
        "billing": {
          "$ref": "#/definitions/public.v1.Billing",
          "title": "請求"
        }
      },
      "title": "請求取得レスポンス"
    },
    "GetCatalogItemRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "カタログアイテムID"
        },
        "optionalId": {
          "type": "string",
          "title": "カタログアイテム管理ID(カタログアイテムIDの代わりに指定可)"
        }
      },
      "title": "カタログアイテム取得のリクエスト"
    },
    "GetCatalogItemResponse": {
      "type": "object",
      "properties": {
        "catalogItem": {
          "$ref": "#/definitions/CatalogItem"
        }
      },
      "title": "カタログアイテム取得のレスポンス"
    },
    "GetCustomerRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "顧客ID"
        },
        "optionalId": {
          "type": "string",
          "title": "顧客管理ID(顧客IDの代わりに指定可)"
        },
        "crmAccountId": {
          "type": "string",
          "title": "外部CRMサービスのアカウントID(顧客IDの代わりに指定可)"
        }
      },
      "title": "顧客取得のリクエスト"
    },
    "GetCustomerResponse": {
      "type": "object",
      "properties": {
        "customer": {
          "$ref": "#/definitions/v1.Customer"
        }
      },
      "title": "顧客取得のレスポンス"
    },
    "GetCustomerStaffRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "顧客担当者ID"
        },
        "optionalId": {
          "type": "string",
          "title": "顧客担当者管理ID(顧客担当者IDの代わりに指定可)"
        },
        "crmStaffId": {
          "type": "string",
          "title": "外部CRMサービスの担当者ID(顧客担当者IDの代わりに指定可)"
        },
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "customerOptionalId": {
          "type": "string",
          "title": "顧客管理ID(顧客IDの代わりに指定可)"
        }
      },
      "title": "顧客担当取得のリクエスト",
      "required": [
        "id"
      ]
    },
    "GetCustomerStaffResponse": {
      "type": "object",
      "properties": {
        "customerStaff": {
          "$ref": "#/definitions/v1.CustomerStaff",
          "title": "顧客担当者"
        }
      },
      "title": "顧客担当者取得のレスポンス"
    },
    "GetLinkedCustomerRequest": {
      "type": "object",
      "properties": {
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        }
      },
      "title": "fincode顧客取得のリクエスト",
      "required": [
        "customerId"
      ]
    },
    "GetLinkedCustomerResponse": {
      "type": "object",
      "properties": {
        "fincodeCustomer": {
          "$ref": "#/definitions/FincodeCustomer",
          "title": "fincode顧客連携情報（紐づいていない場合はnull）"
        }
      },
      "title": "fincode顧客取得のレスポンス"
    },
    "GetPaymentMethodRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "決済方法ID"
        },
        "optionalId": {
          "type": "string",
          "title": "決済方法管理ID(決済方法IDの代わりに指定可)"
        }
      },
      "title": "決済方法取得のリクエスト"
    },
    "GetPaymentMethodResponse": {
      "type": "object",
      "properties": {
        "paymentMethod": {
          "$ref": "#/definitions/PaymentMethod"
        }
      },
      "title": "決済方法取得のレスポンス"
    },
    "GetProductRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "プロダクトID"
        },
        "optionalId": {
          "type": "string",
          "title": "プロダクト管理ID(プロダクトIDの代わりに指定可)"
        }
      },
      "title": "プロダクト取得のリクエスト",
      "required": [
        "id"
      ]
    },
    "GetProductResponse": {
      "type": "object",
      "properties": {
        "product": {
          "$ref": "#/definitions/Product"
        }
      },
      "title": "プロダクト取得のレスポンス"
    },
    "GetResourceRequest": {
      "type": "object",
      "properties": {
        "srn": {
          "$ref": "#/definitions/SRN",
          "title": "リソースの識別子"
        }
      },
      "title": "対象リソースのカスタムフィールド取得のリクエスト",
      "required": [
        "srn"
      ]
    },
    "GetResourceResponse": {
      "type": "object",
      "properties": {
        "resource": {
          "$ref": "#/definitions/Resource",
          "title": "リソース"
        }
      },
      "title": "対象リソースのカスタムフィールド取得のレスポンス"
    },
    "GetUsageUnitRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "使用量単位ID"
        },
        "optionalId": {
          "type": "string",
          "title": "使用量単位管理ID(使用量単位IDの代わりに指定可)"
        }
      },
      "title": "使用量単位の取得リクエスト",
      "required": [
        "id"
      ]
    },
    "GetUsageUnitResponse": {
      "type": "object",
      "properties": {
        "usageUnit": {
          "$ref": "#/definitions/v1.UsageUnit"
        }
      },
      "title": "使用量単位の取得レスポンス"
    },
    "IsDraftFilterClause": {
      "type": "object",
      "properties": {
        "isDraft": {
          "type": "boolean",
          "title": "下書きフラグ(trueで下書き契約のみ、falseで通常契約のみ取得)"
        }
      },
      "title": "下書きフラグフィルタ"
    },
    "Item.ChargeItem": {
      "type": "object",
      "properties": {
        "catalogChargeItemId": {
          "type": "string"
        },
        "optionalId": {
          "type": "string",
          "title": "契約課金項目管理ID(半角英数字と_-のみ使用できます)"
        },
        "billAllAtOnce": {
          "type": "boolean",
          "title": "一括請求オプション。指定しなければカタログアイテムに従います"
        },
        "quantity": {
          "type": "integer",
          "format": "int32",
          "title": "契約数。料金モデルが従量制の場合に使用できます"
        },
        "name": {
          "type": "string",
          "title": "課金項目名。指定しなければカタログアイテムに従います"
        },
        "price": {
          "type": "integer",
          "format": "int32",
          "title": "単価。カタログの料金モデルが定額または従量制のみで使用できます。指定しなければカタログアイテムに従います"
        },
        "billingTiming": {
          "$ref": "#/definitions/Item.ChargeItem.Timing",
          "title": "請求タイミング"
        },
        "billingDueTiming": {
          "$ref": "#/definitions/Item.ChargeItem.Timing",
          "title": "支払期限タイミング"
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/Item.ChargeItem.Tier"
          },
          "title": "ティア（段階別価格設定）。ボリューム/段階制の料金モデルで使用します。priceとは排他的です"
        }
      },
      "required": [
        "catalogChargeItemId"
      ]
    },
    "Item.ChargeItem.Tier": {
      "type": "object",
      "properties": {
        "upperLimit": {
          "type": "string",
          "title": "ティアの上限値。省略時は上限なし（最後のティア）"
        },
        "kind": {
          "$ref": "#/definitions/Item.ChargeItem.Tier.Kind",
          "title": "料金計算式の種類"
        },
        "unitPrice": {
          "type": "string",
          "title": "単価（KIND_PER_UNIT時に使用）"
        },
        "price": {
          "type": "string",
          "title": "定額価格（KIND_FLAT_FEE時に使用）"
        }
      },
      "title": "ティア（段階別価格設定）\nProtoJSON Format https://protobuf.dev/programming-guides/json/ では discriminated union を適切に表現できないので、\n止む無く value だけ oneof で表現しています。\nしたがって { kind: 'KIND_PER_UNIT', price: string } のようなデータも proto 上では可能な定義になってしまっています。",
      "required": [
        "kind"
      ]
    },
    "Item.ChargeItem.Tier.Kind": {
      "type": "string",
      "enum": [
        "KIND_UNSPECIFIED",
        "KIND_PER_UNIT",
        "KIND_FLAT_FEE"
      ],
      "default": "KIND_UNSPECIFIED",
      "description": "- KIND_UNSPECIFIED: 未指定\n - KIND_PER_UNIT: 従量制（単価×数量）\n - KIND_FLAT_FEE: 定額制",
      "title": "料金計算式の種類"
    },
    "Item.ChargeItem.Timing": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "数(負数の場合は前を表す。例: { \"value\": -1, \"unit\": \"UNIT_MONTHLY\" } => 先月)"
        },
        "unit": {
          "$ref": "#/definitions/Item.ChargeItem.Timing.Unit",
          "title": "単位"
        },
        "monthlyOption": {
          "$ref": "#/definitions/Item.ChargeItem.Timing.MonthlyOption",
          "title": "UNIT_MONTHLY指定時のオプション"
        }
      },
      "title": "タイミング",
      "required": [
        "value",
        "unit",
        "monthlyOption"
      ]
    },
    "Item.ChargeItem.Timing.MonthlyOption": {
      "type": "string",
      "enum": [
        "MONTHLY_OPTION_UNSPECIFIED",
        "MONTHLY_OPTION_DAY_1",
        "MONTHLY_OPTION_DAY_2",
        "MONTHLY_OPTION_DAY_3",
        "MONTHLY_OPTION_DAY_4",
        "MONTHLY_OPTION_DAY_5",
        "MONTHLY_OPTION_DAY_6",
        "MONTHLY_OPTION_DAY_7",
        "MONTHLY_OPTION_DAY_8",
        "MONTHLY_OPTION_DAY_9",
        "MONTHLY_OPTION_DAY_10",
        "MONTHLY_OPTION_DAY_11",
        "MONTHLY_OPTION_DAY_12",
        "MONTHLY_OPTION_DAY_13",
        "MONTHLY_OPTION_DAY_14",
        "MONTHLY_OPTION_DAY_15",
        "MONTHLY_OPTION_DAY_16",
        "MONTHLY_OPTION_DAY_17",
        "MONTHLY_OPTION_DAY_18",
        "MONTHLY_OPTION_DAY_19",
        "MONTHLY_OPTION_DAY_20",
        "MONTHLY_OPTION_DAY_21",
        "MONTHLY_OPTION_DAY_22",
        "MONTHLY_OPTION_DAY_23",
        "MONTHLY_OPTION_DAY_24",
        "MONTHLY_OPTION_DAY_25",
        "MONTHLY_OPTION_DAY_26",
        "MONTHLY_OPTION_DAY_27",
        "MONTHLY_OPTION_DAY_28",
        "MONTHLY_OPTION_DAY_29",
        "MONTHLY_OPTION_DAY_30",
        "MONTHLY_OPTION_DAY_31",
        "MONTHLY_OPTION_FIRST_DAY_OF_MONTH",
        "MONTHLY_OPTION_LAST_DAY_OF_MONTH"
      ],
      "default": "MONTHLY_OPTION_UNSPECIFIED",
      "description": "- MONTHLY_OPTION_FIRST_DAY_OF_MONTH: alias MONTHLY_OPTION_DAY_1",
      "title": "UNIT_MONTHLY指定時のオプション(1~31の数字 or Enumの文字列)"
    },
    "Item.ChargeItem.Timing.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_DAILY",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_DAILY: 日\n - UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "LinkCustomerRequest": {
      "type": "object",
      "properties": {
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "fincodeCustomerId": {
          "type": "string",
          "title": "fincode顧客ID"
        }
      },
      "title": "fincode顧客紐づけのリクエスト",
      "required": [
        "customerId",
        "fincodeCustomerId"
      ]
    },
    "LinkCustomerResponse": {
      "type": "object",
      "properties": {
        "fincodeCustomer": {
          "$ref": "#/definitions/FincodeCustomer",
          "title": "fincode顧客連携情報"
        }
      },
      "title": "fincode顧客紐づけのレスポンス"
    },
    "ListAmendmentsByContractOptionalIdRequest": {
      "type": "object",
      "properties": {
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID"
        },
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "契約管理IDに紐づく改定の一覧取得リクエスト",
      "required": [
        "contractOptionalId"
      ]
    },
    "ListAmendmentsByContractOptionalIdResponse": {
      "type": "object",
      "properties": {
        "amendments": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Amendment"
          },
          "title": "改定"
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "契約管理IDに紐づく改定の一覧取得レスポンス"
    },
    "ListAmendmentsByContractRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "optionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        },
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "契約に紐づく改定の一覧取得リクエスト",
      "required": [
        "id",
        "optionalId"
      ]
    },
    "ListAmendmentsByContractResponse": {
      "type": "object",
      "properties": {
        "amendments": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Amendment"
          },
          "title": "改定"
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "契約に紐づく改定の一覧取得レスポンス"
    },
    "ListAmendmentsRequest": {
      "type": "object",
      "properties": {
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        },
        "orderBy": {
          "$ref": "#/definitions/Order",
          "title": "ソート条件\nexample:\n```\n{ \"orderBy\": [ { \"field\": \"FIELD_EXECUTE_DATE\", \"direction\": \"DIRECTION_DESCENDING\" } ] }\n```"
        }
      },
      "title": "改定の検索リクエスト",
      "required": [
        "pageSize"
      ]
    },
    "ListAmendmentsResponse": {
      "type": "object",
      "properties": {
        "amendments": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Amendment"
          },
          "title": "改定"
        },
        "nextPageToken": {
          "type": "string"
        }
      },
      "title": "改定一覧レスポンス"
    },
    "ListBillingsByContractRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "optionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        },
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        },
        "orderBy": {
          "$ref": "#/definitions/BillingOrder",
          "title": "ソート条件\nexample:\n```\n{ \"orderBy\": [ { \"field\": \"FIELD_BILLING_DATE\", \"direction\": \"DIRECTION_DESCENDING\" } ] }\n```"
        }
      },
      "title": "請求の一覧取得のリクエスト",
      "required": [
        "id",
        "optionalId"
      ]
    },
    "ListBillingsByContractResponse": {
      "type": "object",
      "properties": {
        "billings": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/public.v1.Billing"
          },
          "title": "請求"
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "請求の一覧取得のレスポンス"
    },
    "ListBillingsRequest": {
      "type": "object",
      "properties": {
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "請求の一覧取得のリクエスト"
    },
    "ListBillingsResponse": {
      "type": "object",
      "properties": {
        "billings": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/public.v1.Billing"
          },
          "title": "請求"
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "請求の一覧取得のレスポンス"
    },
    "ListCatalogItemsRequest": {
      "type": "object",
      "properties": {
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "カタログアイテムの一覧取得のリクエスト",
      "required": [
        "pageSize"
      ]
    },
    "ListCatalogItemsResponse": {
      "type": "object",
      "properties": {
        "catalogItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CatalogItem"
          },
          "title": "カタログアイテム"
        },
        "nextPageToken": {
          "type": "string"
        }
      },
      "title": "カタログアイテムの一覧取得のレスポンス"
    },
    "ListContractsAtDateRequest": {
      "type": "object",
      "properties": {
        "filters": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/ListContractsAtDateRequest.FilterClause"
          },
          "title": "契約のフィルタ条件"
        },
        "sortOrder": {
          "$ref": "#/definitions/ContractSortOrder",
          "title": "ソート順"
        },
        "offsetToken": {
          "type": "string",
          "title": "オフセット情報を含むページングトークン。"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        },
        "atPointInServiceTimeline": {
          "type": "string",
          "format": "date-time",
          "title": "契約サービスタイムラインのどの時点での契約を取得するかの指定。"
        }
      },
      "title": "契約の一覧取得（契約サービスタイムライン上での日付指定あり）のリクエスト",
      "required": [
        "atPointInServiceTimeline"
      ]
    },
    "ListContractsAtDateRequest.FilterClause": {
      "type": "object",
      "properties": {
        "contractEndDate": {
          "$ref": "#/definitions/ContractEndDateFilterClause"
        },
        "contractItemEndDate": {
          "$ref": "#/definitions/ContractItemEndDateFilterClause"
        },
        "customerEq": {
          "$ref": "#/definitions/CustomerEqFilterClause"
        },
        "isDraft": {
          "$ref": "#/definitions/IsDraftFilterClause",
          "title": "下書きフラグフィルタ(未指定時はfalse扱い＝通常契約のみ)"
        }
      }
    },
    "ListContractsAtDateResponse": {
      "type": "object",
      "properties": {
        "contracts": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v2.Contract"
          },
          "description": "一覧の終端に到達していない場合でも、この配列の長さが page_size に満たない場合があり得る。\n特に、リクエストしたオフセットからすぐに取得できる契約が存在しない場合は空配列となるが、\nnext_offset_token が null でない限り、次のページに進むことでさらに結果が得られる可能性が残される。",
          "title": "契約"
        },
        "nextOffsetToken": {
          "type": "string",
          "description": "contracts が一覧の終端に到達し、次のページが新たに結果を含むことが無いことが分かるとき、null が返却される。",
          "title": "次の一覧取得に使用するオフセットトークン"
        }
      },
      "title": "契約の一覧取得（契約サービスタイムライン上での日付指定あり）のレスポンス"
    },
    "ListContractsByCustomerRequest": {
      "type": "object",
      "properties": {
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "customerOptionalId": {
          "type": "string",
          "title": "顧客管理ID(顧客IDの代わりに指定可)"
        },
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "顧客に紐づく契約の一覧取得リクエスト",
      "required": [
        "customerId"
      ]
    },
    "ListContractsByCustomerResponse": {
      "type": "object",
      "properties": {
        "contracts": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Contract"
          }
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "顧客に紐づく契約の一覧取得レスポンス"
    },
    "ListContractsRequest.FilterClause": {
      "type": "object",
      "properties": {
        "contractEndDate": {
          "$ref": "#/definitions/ContractEndDateFilterClause"
        },
        "contractItemEndDate": {
          "$ref": "#/definitions/ContractItemEndDateFilterClause"
        },
        "statusIn": {
          "$ref": "#/definitions/AnyItemHasStatusInFilterClause",
          "title": "NOTE: 必要なデータ移行が完了したため、PREVIEW 制限を解除している。"
        },
        "customerEq": {
          "$ref": "#/definitions/CustomerEqFilterClause"
        },
        "isDraft": {
          "$ref": "#/definitions/IsDraftFilterClause",
          "title": "下書きフラグフィルタ(未指定時はfalse扱い＝通常契約のみ)"
        }
      }
    },
    "ListCustomFieldMastersRequest": {
      "type": "object",
      "properties": {
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "カスタムフィールドマスターの一覧取得のリクエスト",
      "required": [
        "pageSize"
      ]
    },
    "ListCustomFieldMastersResponse": {
      "type": "object",
      "properties": {
        "customFieldMasters": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CustomFieldMaster"
          },
          "title": "カスタムフィールドマスター"
        },
        "nextPageToken": {
          "type": "string"
        }
      },
      "title": "カスタムフィールドマスターの一覧取得のレスポンス"
    },
    "ListCustomerStaffsRequest": {
      "type": "object",
      "properties": {
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "customerOptionalId": {
          "type": "string",
          "title": "顧客管理ID(顧客IDの代わりに指定可)"
        },
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "顧客担当者の一覧取得のリクエスト",
      "required": [
        "customerId",
        "pageSize"
      ]
    },
    "ListCustomerStaffsResponse": {
      "type": "object",
      "properties": {
        "customerStaffs": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.CustomerStaff"
          }
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "顧客担当者の一覧取得レスポンス"
    },
    "ListCustomersRequest": {
      "type": "object",
      "properties": {
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "顧客の一覧取得のリクエスト",
      "required": [
        "pageSize"
      ]
    },
    "ListCustomersResponse": {
      "type": "object",
      "properties": {
        "customers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Customer"
          }
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "顧客の一覧取得レスポンス"
    },
    "ListExpectedBillingsByContractRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "optionalId": {
          "type": "string",
          "title": "契約管理ID(IDの代わりに指定可)"
        },
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "契約に紐づく請求予定一覧取得のリクエスト",
      "required": [
        "id"
      ]
    },
    "ListExpectedBillingsByContractResponse": {
      "type": "object",
      "properties": {
        "expectedBillings": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/ExpectedBilling"
          },
          "title": "請求予定"
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "契約に紐づく請求予定一覧取得のレスポンス"
    },
    "ListPaymentMethodsRequest": {
      "type": "object",
      "properties": {
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン [デフォルト: 10 / 最小: 1 / 最大: 100]"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        },
        "orderBy": {
          "$ref": "#/definitions/PaymentMethodOrder",
          "title": "ソート条件\nexample:\n```\n{ \"orderBy\": [ { \"field\": \"FIELD_ID\", \"direction\": \"DIRECTION_DESCENDING\" } ] }\n```"
        }
      },
      "title": "決済方法の一覧取得のリクエスト",
      "required": [
        "pageSize"
      ]
    },
    "ListPaymentMethodsResponse": {
      "type": "object",
      "properties": {
        "paymentMethods": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/PaymentMethod"
          }
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "決済方法の一覧取得レスポンス"
    },
    "ListUsageUnitsRequest": {
      "type": "object",
      "properties": {
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "使用量単位一覧の取得リクエスト",
      "required": [
        "pageSize"
      ]
    },
    "ListUsageUnitsResponse": {
      "type": "object",
      "properties": {
        "usageUnits": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.UsageUnit"
          }
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "使用量単位一覧の取得レスポンス"
    },
    "NullValue": {
      "type": "string",
      "enum": [
        "NULL_VALUE"
      ],
      "default": "NULL_VALUE",
      "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\nThe JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value."
    },
    "Order": {
      "type": "object",
      "properties": {
        "field": {
          "$ref": "#/definitions/Order.Field"
        },
        "direction": {
          "$ref": "#/definitions/Order.Direction"
        }
      },
      "title": "ソート条件"
    },
    "Order.Direction": {
      "type": "string",
      "enum": [
        "DIRECTION_UNSPECIFIED",
        "DIRECTION_ASCENDING",
        "DIRECTION_DESCENDING"
      ],
      "default": "DIRECTION_UNSPECIFIED",
      "description": "- DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
      "title": "順序"
    },
    "Order.Field": {
      "type": "string",
      "enum": [
        "FIELD_UNSPECIFIED",
        "FIELD_ID",
        "FIELD_EXECUTE_DATE",
        "FIELD_EFFECTIVE_START_DATE"
      ],
      "default": "FIELD_UNSPECIFIED",
      "description": "- FIELD_ID: ID\n - FIELD_EXECUTE_DATE: 改定実行日\n - FIELD_EFFECTIVE_START_DATE: 改定の有効開始日",
      "title": "対象"
    },
    "PayPerUse": {
      "type": "string",
      "enum": [
        "PAY_PER_USE_UNSPECIFIED",
        "PAY_PER_USE_QUANTITY",
        "PAY_PER_USE_USAGE"
      ],
      "default": "PAY_PER_USE_UNSPECIFIED",
      "title": "- PAY_PER_USE_QUANTITY: 数量\n - PAY_PER_USE_USAGE: 使用量"
    },
    "PaymentMethod": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "決済方法ID"
        },
        "optionalId": {
          "type": "string",
          "title": "決済方法管理ID（更新時、決済方法IDの代わりに指定可）"
        },
        "name": {
          "type": "string",
          "title": "決済方法名"
        },
        "type": {
          "$ref": "#/definitions/PaymentMethod.Type",
          "title": "決済方法種別"
        }
      },
      "title": "決済方法"
    },
    "PaymentMethod.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_CSV_DOWNLOAD",
        "TYPE_SCALEBASE_PAYMENT",
        "TYPE_MFCLOUD_INVOICE",
        "TYPE_FREEE_INVOICE",
        "TYPE_MAKELEAPS"
      ],
      "default": "TYPE_UNSPECIFIED",
      "title": "種別"
    },
    "PaymentMethodIdentifier": {
      "type": "object",
      "properties": {
        "paymentMethodId": {
          "type": "string",
          "title": "決済方法ID"
        },
        "paymentMethodOptionalId": {
          "type": "string",
          "title": "決済方法管理ID(決済方法IDの代わりに指定可)"
        }
      },
      "title": "決済方法識別子",
      "required": [
        "paymentMethodId"
      ]
    },
    "PaymentMethodOrder": {
      "type": "object",
      "properties": {
        "field": {
          "$ref": "#/definitions/PaymentMethodOrder.Field"
        },
        "direction": {
          "$ref": "#/definitions/PaymentMethodOrder.Direction"
        }
      },
      "title": "ソート条件"
    },
    "PaymentMethodOrder.Direction": {
      "type": "string",
      "enum": [
        "DIRECTION_UNSPECIFIED",
        "DIRECTION_ASCENDING",
        "DIRECTION_DESCENDING"
      ],
      "default": "DIRECTION_UNSPECIFIED",
      "description": "- DIRECTION_ASCENDING: 昇順\n - DIRECTION_DESCENDING: 降順",
      "title": "順序"
    },
    "PaymentMethodOrder.Field": {
      "type": "string",
      "enum": [
        "FIELD_UNSPECIFIED",
        "FIELD_ID"
      ],
      "default": "FIELD_UNSPECIFIED",
      "description": "- FIELD_ID: 請求ID",
      "title": "対象"
    },
    "PaymentRecord": {
      "type": "object",
      "properties": {
        "billingId": {
          "type": "string",
          "title": "請求ID"
        },
        "paidAt": {
          "type": "string",
          "format": "date-time",
          "title": "入金日"
        }
      },
      "title": "入金情報",
      "required": [
        "billingId",
        "paidAt"
      ]
    },
    "PaymentRecordError": {
      "type": "object",
      "properties": {
        "billingId": {
          "type": "string",
          "title": "請求ID"
        },
        "errorType": {
          "$ref": "#/definitions/PaymentRecordError.ErrorType",
          "title": "エラータイプ"
        },
        "message": {
          "type": "string",
          "title": "エラーメッセージ"
        }
      },
      "title": "入金処理エラー"
    },
    "PaymentRecordError.ErrorType": {
      "type": "string",
      "enum": [
        "ERROR_TYPE_UNSPECIFIED",
        "ERROR_TYPE_NOT_FOUND",
        "ERROR_TYPE_INVALID_STATUS",
        "ERROR_TYPE_INVALID_AMOUNT",
        "ERROR_TYPE_STORE_FAILED"
      ],
      "default": "ERROR_TYPE_UNSPECIFIED"
    },
    "PaymentSummary": {
      "type": "object",
      "properties": {
        "totalCount": {
          "type": "integer",
          "format": "int32",
          "title": "要求された請求数"
        },
        "successCount": {
          "type": "integer",
          "format": "int32",
          "title": "成功した請求数"
        },
        "failedCount": {
          "type": "integer",
          "format": "int32",
          "title": "失敗した請求数"
        }
      },
      "title": "入金処理結果のサマリー"
    },
    "PerUnitOption": {
      "type": "object",
      "properties": {
        "price": {
          "type": "number",
          "format": "double",
          "title": "単価"
        },
        "payPerUse": {
          "$ref": "#/definitions/PayPerUse",
          "title": "従量測定方式"
        }
      },
      "required": [
        "price"
      ]
    },
    "PricingModel": {
      "type": "object",
      "properties": {
        "type": {
          "$ref": "#/definitions/PricingModel.Type"
        },
        "flatFeeOption": {
          "$ref": "#/definitions/FlatFeeOption"
        },
        "perUnitOption": {
          "$ref": "#/definitions/PerUnitOption"
        },
        "volumeOption": {
          "$ref": "#/definitions/VolumeOption"
        },
        "tieredOption": {
          "$ref": "#/definitions/TieredOption"
        }
      }
    },
    "PricingModel.FeeFormula": {
      "type": "string",
      "enum": [
        "FEE_FORMULA_UNSPECIFIED",
        "FEE_FORMULA_FLAT_FEE",
        "FEE_FORMULA_PER_UNIT"
      ],
      "default": "FEE_FORMULA_UNSPECIFIED",
      "title": "- FEE_FORMULA_FLAT_FEE: 定額\n - FEE_FORMULA_PER_UNIT: 従量"
    },
    "PricingModel.Tier": {
      "type": "object",
      "properties": {
        "unitPrice": {
          "type": "number",
          "format": "double",
          "title": "単価"
        },
        "feeFormula": {
          "$ref": "#/definitions/PricingModel.FeeFormula",
          "title": "計算式"
        },
        "upperLimit": {
          "type": "number",
          "format": "double",
          "title": "上限値(未指定時は上限なし)"
        }
      },
      "required": [
        "unitPrice",
        "feeFormula"
      ]
    },
    "PricingModel.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_FLAT_FEE",
        "TYPE_PER_UNIT",
        "TYPE_VOLUME_PRICING",
        "TYPE_TIERED_PRICING"
      ],
      "default": "TYPE_UNSPECIFIED",
      "title": "- TYPE_FLAT_FEE: 定額モデル\n - TYPE_PER_UNIT: 従量モデル\n - TYPE_VOLUME_PRICING: 選択式ティアモデル\n - TYPE_TIERED_PRICING: 積上式ティアモデル"
    },
    "Product": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "プロダクトID"
        },
        "optionalId": {
          "type": "string",
          "title": "プロダクト管理ID"
        },
        "name": {
          "type": "string",
          "title": "プロダクト名"
        },
        "description": {
          "type": "string",
          "title": "プロダクト概要"
        }
      },
      "title": "プロダクト"
    },
    "RenewContractItemRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "contractItemId": {
          "type": "string",
          "title": "契約アイテムID"
        },
        "memo": {
          "type": "string",
          "title": "改定メモ"
        }
      },
      "title": "契約アイテム更新リクエスト",
      "required": [
        "contractId",
        "contractItemId"
      ]
    },
    "RenewContractItemResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/RenewContractItemResponse.Contract",
          "title": "対象の契約"
        },
        "amendment": {
          "$ref": "#/definitions/RenewContractItemResponse.Amendment",
          "title": "改定"
        }
      },
      "title": "契約アイテム更新レスポンス"
    },
    "RenewContractItemResponse.Amendment": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "RenewContractItemResponse.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "RenewalWithQuantityChangeExpectedBillingRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "optionalId": {
          "type": "string",
          "title": "契約管理ID(IDの代わりに指定可)"
        },
        "contractChargeItemId": {
          "type": "string",
          "title": "契約の課金項目ID（ContractChargeItemId）"
        },
        "quantity": {
          "type": "integer",
          "format": "int32",
          "title": "新しい数量"
        },
        "changeQuantityDailyRate": {
          "$ref": "#/definitions/v1.DailyRate",
          "title": "契約数変更における日割り設定"
        }
      },
      "title": "契約更新と数量変更に伴う請求予定計算のリクエスト",
      "required": [
        "id",
        "contractChargeItemId",
        "quantity"
      ]
    },
    "RenewalWithQuantityChangeExpectedBillingResponse": {
      "type": "object",
      "properties": {
        "expectedBilling": {
          "$ref": "#/definitions/ExpectedBilling"
        }
      },
      "title": "契約更新と数量変更に伴う請求予定計算のレスポンス"
    },
    "Resource": {
      "type": "object",
      "properties": {
        "srn": {
          "$ref": "#/definitions/SRN"
        },
        "sra": {
          "$ref": "#/definitions/SRA"
        },
        "customFields": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.CustomField"
          },
          "title": "カスタムフィールド"
        }
      },
      "title": "リソース"
    },
    "Rounding": {
      "type": "string",
      "enum": [
        "ROUNDING_UNSPECIFIED",
        "ROUNDING_ROUND_UP",
        "ROUNDING_ROUND_DOWN",
        "ROUNDING_ROUND_HALF_UP"
      ],
      "default": "ROUNDING_UNSPECIFIED",
      "title": "- ROUNDING_ROUND_UP: 切り上げ(0から離れるように丸める)\n - ROUNDING_ROUND_DOWN: 切り捨て(0に近づくように丸める)\n - ROUNDING_ROUND_HALF_UP: 四捨五入(「もっとも近い数字」に丸め、小数部が0.5以上の場合はROUND_UP、それ以外の場合はROUND_DOWN)"
    },
    "SRA": {
      "type": "object",
      "properties": {
        "optionalId": {
          "type": "string",
          "title": "管理ID"
        },
        "resourceType": {
          "$ref": "#/definitions/SRA.Type"
        }
      },
      "title": "Scalebaseリソースエイリアス(SRA)\nScalebaseリソースネーム(SRN)の代わりに指定可\nScalebaseリソースに割り当てられた可変なエイリアス（管理ID）によってリソースを識別します。",
      "required": [
        "optionalId",
        "resourceType"
      ]
    },
    "SRA.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_CUSTOMER",
        "TYPE_CONTRACT"
      ],
      "default": "TYPE_UNSPECIFIED",
      "title": "管理IDに対応しているリソース種別"
    },
    "SRN": {
      "type": "object",
      "properties": {
        "resourceId": {
          "type": "string",
          "title": "リソースID"
        },
        "resourceType": {
          "$ref": "#/definitions/SRN.Type"
        }
      },
      "title": "Scalebaseリソースネーム(SRN)\nScalebaseリソースを一意に識別します。顧客や契約など、Scalebase全体でリソースを明確に指定する場合はSRNが必要になります。",
      "required": [
        "resourceId",
        "resourceType"
      ]
    },
    "SRN.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_CUSTOMER",
        "TYPE_CONTRACT",
        "TYPE_CONTRACT_SERVICE",
        "TYPE_CONTRACT_ITEM",
        "TYPE_BILLING",
        "TYPE_CATALOG_ITEM"
      ],
      "default": "TYPE_UNSPECIFIED",
      "title": "リソース種別"
    },
    "SearchBillingsRequest": {
      "type": "object",
      "properties": {
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        },
        "query": {
          "type": "string",
          "title": "template: :10:8: executing \"\" at <.EnumType>: can't evaluate field EnumType in type *descriptor.Field"
        },
        "filter": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/SearchBillingsRequest.Clause"
          },
          "title": "フィルター"
        },
        "orderBy": {
          "$ref": "#/definitions/BillingOrder",
          "title": "ソート条件\nexample:\n```\n{ \"orderBy\": [ { \"field\": \"FIELD_BILLING_DATE\", \"direction\": \"DIRECTION_DESCENDING\" } ] }\n```"
        }
      },
      "title": "請求の一覧取得のリクエスト",
      "required": [
        "pageSize"
      ]
    },
    "SearchBillingsRequest.Clause": {
      "type": "object",
      "properties": {
        "status": {
          "$ref": "#/definitions/Clause.Status"
        },
        "billingDate": {
          "$ref": "#/definitions/BillingDate"
        },
        "statuses": {
          "$ref": "#/definitions/Statuses"
        }
      },
      "title": "フィルター項目\nexample:\n  { \"status\": { \"eq\": \"STATUS_UNBILLED\" }}"
    },
    "SearchBillingsResponse": {
      "type": "object",
      "properties": {
        "billings": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/public.v1.Billing"
          },
          "title": "請求"
        },
        "nextPageToken": {
          "type": "string"
        }
      },
      "title": "請求の一覧取得のレスポンス"
    },
    "SearchContractsRequest": {
      "type": "object",
      "properties": {
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        },
        "filter": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/SearchContractsRequest.Clause"
          },
          "title": "フィルター\nexample:\n```\n{ \"contractEndDate\": { \"gte\": \"2025-01-23T00:00:00+09:00\" }}\n{ \"contractItemEndDate\": { \"gte\": \"2025-01-31T15:00:00.000Z\" }}\n```"
        },
        "orderBy": {
          "$ref": "#/definitions/ContractOrder",
          "title": "ソート条件\nexample:\n```\n{ \"orderBy\": [ { \"field\": \"FIELD_UPDATED_AT\", \"direction\": \"DIRECTION_DESCENDING\" } ] }\n```"
        }
      },
      "title": "契約の検索による一覧取得のリクエスト"
    },
    "SearchContractsRequest.Clause": {
      "type": "object",
      "properties": {
        "contractEndDate": {
          "$ref": "#/definitions/ContractEndDate"
        },
        "contractItemEndDate": {
          "$ref": "#/definitions/ContractItemEndDate"
        },
        "isDraft": {
          "type": "boolean",
          "title": "下書きフラグフィルタ(trueで下書き契約のみ、falseで通常契約のみ取得。未指定時はfalse扱い)"
        }
      },
      "title": "フィルター項目\nexample:\n  { \"contractEndDate\": { \"gte\": \"2025-01-23T00:00:00+09:00\" }}\n  { \"contractItemEndDate\": { \"gte\": \"2025-01-31T15:00:00.000Z\" }}"
    },
    "SearchContractsResponse": {
      "type": "object",
      "properties": {
        "contracts": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Contract"
          },
          "title": "契約"
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "契約の検索による一覧取得レスポンス"
    },
    "Service.MainItem": {
      "type": "object",
      "properties": {
        "catalogItemIdentifier": {
          "$ref": "#/definitions/CreateContractRequest.CatalogItemIdentifier",
          "title": "カタログアイテム識別子"
        },
        "startDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約開始日(RFC 3339 format)"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(省略時は更新時に延長される期間から算出(RFC 3339 format))"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/v2.CreateContractRequest.Term",
          "title": "更新時に延長される期間(省略時はカタログから適用されます)"
        },
        "name": {
          "type": "string",
          "title": "アイテム名（省略時はカタログから適用されます）"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v2.CreateContractRequest.ChargeItem"
          },
          "title": "課金項目パラメータ"
        },
        "availabilityCycle": {
          "$ref": "#/definitions/v2.CreateContractRequest.Term",
          "title": "利用周期(省略時はカタログの利用周期から適用されます)"
        },
        "autoRenewal": {
          "$ref": "#/definitions/AutoRenewalSetting",
          "title": "自動更新設定(省略時はカタログの自動更新設定が継承されます)"
        }
      },
      "title": "契約メインアイテム",
      "required": [
        "catalogItemIdentifier",
        "startDate"
      ]
    },
    "Service.OptionItem": {
      "type": "object",
      "properties": {
        "catalogItemIdentifier": {
          "$ref": "#/definitions/CreateContractRequest.CatalogItemIdentifier",
          "title": "カタログアイテム識別子"
        },
        "startDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約開始日(RFC 3339 format)"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(省略時は更新時に延長される期間から算出(RFC 3339 format))"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/v2.CreateContractRequest.Term",
          "title": "更新時に延長される期間(省略時はカタログから適用されます)"
        },
        "name": {
          "type": "string",
          "title": "アイテム名（省略時はカタログから適用されます）"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v2.CreateContractRequest.ChargeItem"
          },
          "title": "課金項目パラメータ"
        },
        "availabilityCycle": {
          "$ref": "#/definitions/v2.CreateContractRequest.Term",
          "title": "利用周期(省略時はカタログの利用周期から適用されます)"
        },
        "autoRenewal": {
          "$ref": "#/definitions/AutoRenewalSetting",
          "title": "自動更新設定(省略時はカタログの自動更新設定が継承されます)"
        }
      },
      "title": "契約オプションアイテム",
      "required": [
        "catalogItemIdentifier"
      ]
    },
    "ServingStatus": {
      "type": "string",
      "enum": [
        "UNKNOWN",
        "SERVING",
        "NOT_SERVING",
        "SERVICE_UNKNOWN"
      ],
      "default": "UNKNOWN",
      "description": " - SERVICE_UNKNOWN: Used only by the Watch method."
    },
    "Status.Status": {
      "type": "string",
      "enum": [
        "STATUS_UNSPECIFIED",
        "STATUS_HOLD_INVOICE_CREATION",
        "STATUS_UNBILLED",
        "STATUS_POSTED",
        "STATUS_PARTIALLY_PAID",
        "STATUS_PAID",
        "STATUS_PAYMENT_EXCLUDED",
        "STATUS_PAYMENT_DUE",
        "STATUS_PAYMENT_UNNECESSARY",
        "STATUS_PARTIALLY_UNPAID",
        "STATUS_PAYMENT_REFUNDED",
        "STATUS_PAID_WITH_CARD",
        "STATUS_INVOICE_CREATED",
        "STATUS_INVOICE_DELETED",
        "STATUS_INVALIDATED"
      ],
      "default": "STATUS_UNSPECIFIED"
    },
    "Statuses": {
      "type": "object",
      "properties": {
        "in": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Status.Status"
          }
        }
      }
    },
    "TieredOption": {
      "type": "object",
      "properties": {
        "payPerUse": {
          "$ref": "#/definitions/PayPerUse",
          "title": "従量測定方式"
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/PricingModel.Tier"
          }
        }
      },
      "required": [
        "tiers"
      ]
    },
    "UnlinkCustomerRequest": {
      "type": "object",
      "properties": {
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        }
      },
      "title": "fincode顧客紐づけ解除のリクエスト",
      "required": [
        "customerId"
      ]
    },
    "UnlinkCustomerResponse": {
      "type": "object",
      "title": "fincode顧客紐づけ解除のレスポンス"
    },
    "UpdateCustomerResponse": {
      "type": "object",
      "properties": {
        "customer": {
          "$ref": "#/definitions/v1.Customer",
          "title": "顧客"
        }
      },
      "title": "顧客更新のレスポンス"
    },
    "UpdateCustomerStaffResponse": {
      "type": "object",
      "properties": {
        "customerStaff": {
          "$ref": "#/definitions/v1.CustomerStaff",
          "title": "顧客担当者"
        }
      },
      "title": "顧客担当者更新のレスポンス"
    },
    "UpdatePaymentMethodRequest": {
      "type": "object",
      "properties": {
        "contractIdentifier": {
          "$ref": "#/definitions/UpdatePaymentMethodRequest.ContractIdentifier",
          "title": "契約識別子"
        },
        "paymentMethodIdentifier": {
          "$ref": "#/definitions/PaymentMethodIdentifier",
          "title": "決済方法識別子"
        }
      },
      "title": "決済方法変更リクエスト",
      "required": [
        "contractIdentifier",
        "paymentMethodIdentifier"
      ]
    },
    "UpdatePaymentMethodRequest.ContractIdentifier": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID(契約IDの代わりに指定可)"
        }
      },
      "title": "契約識別子",
      "required": [
        "contractId"
      ]
    },
    "UpdatePaymentMethodResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v2.Contract",
          "title": "更新された契約"
        }
      },
      "title": "決済方法変更レスポンス"
    },
    "UpdateResourceResponse": {
      "type": "object",
      "properties": {
        "resource": {
          "$ref": "#/definitions/Resource",
          "title": "リソース"
        }
      },
      "title": "カスタムフィールド新規追加・更新のレスポンス"
    },
    "UpdateSummary": {
      "type": "object",
      "properties": {
        "totalCount": {
          "type": "integer",
          "format": "int32",
          "title": "要求された請求数"
        },
        "successCount": {
          "type": "integer",
          "format": "int32",
          "title": "更新に成功した請求数"
        },
        "failedCount": {
          "type": "integer",
          "format": "int32",
          "title": "更新に失敗した請求数"
        }
      },
      "title": "更新結果のサマリー"
    },
    "UpsertDailyUsageByContractAndUsageUnitRequest": {
      "type": "object",
      "properties": {
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID"
        },
        "usageUnitOptionalId": {
          "type": "string",
          "title": "使用量単位管理ID"
        },
        "targetDate": {
          "type": "string",
          "format": "date-time",
          "title": "対象日(RFC 3339 format)"
        },
        "quantity": {
          "type": "number",
          "format": "double",
          "title": "計測された値"
        }
      },
      "title": "契約と使用量単位より使用量を作成or更新のリクエスト",
      "required": [
        "contractOptionalId",
        "usageUnitOptionalId",
        "targetDate",
        "quantity"
      ]
    },
    "UpsertDailyUsageByContractAndUsageUnitResponse": {
      "type": "object",
      "properties": {
        "usage": {
          "$ref": "#/definitions/DailyUsage"
        }
      },
      "title": "契約と使用量単位より使用量を作成or更新のレスポンス"
    },
    "UpsertDailyUsageByOptionalIdRequest": {
      "type": "object",
      "properties": {
        "contractOptionalId": {
          "type": "string",
          "title": "契約管理ID"
        },
        "usageUnitOptionalId": {
          "type": "string",
          "title": "使用量単位管理ID"
        },
        "targetDate": {
          "type": "string",
          "format": "date-time",
          "title": "対象日(RFC 3339 format)"
        },
        "quantity": {
          "type": "number",
          "format": "double",
          "title": "計測された値"
        }
      },
      "title": "契約と使用量単位より使用量を作成or更新のリクエスト",
      "required": [
        "contractOptionalId",
        "usageUnitOptionalId",
        "targetDate",
        "quantity"
      ]
    },
    "UpsertDailyUsageByOptionalIdResponse": {
      "type": "object",
      "properties": {
        "usage": {
          "$ref": "#/definitions/DailyUsage"
        }
      },
      "title": "契約と使用量単位より使用量を作成or更新のレスポンス"
    },
    "UpsertDailyUsageRequest": {
      "type": "object",
      "properties": {
        "contractChargeItemId": {
          "type": "string",
          "title": "契約課金項目ID"
        },
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "customerOptionalId": {
          "type": "string",
          "title": "顧客管理ID(顧客IDの代わりに指定可)"
        },
        "usageUnitId": {
          "type": "string",
          "title": "使用量単位ID"
        },
        "usageUnitOptionalId": {
          "type": "string",
          "title": "使用量単位管理ID(使用量単位IDの代わりに指定可)"
        },
        "targetDate": {
          "type": "string",
          "format": "date-time",
          "title": "対象日(RFC 3339 format)"
        },
        "quantity": {
          "type": "number",
          "format": "double",
          "title": "計測された値"
        }
      },
      "title": "使用量を作成or更新のリクエスト",
      "required": [
        "contractChargeItemId",
        "customerId",
        "usageUnitId",
        "targetDate",
        "quantity"
      ]
    },
    "UpsertDailyUsageResponse": {
      "type": "object",
      "properties": {
        "usage": {
          "$ref": "#/definitions/DailyUsage"
        }
      },
      "title": "使用量を作成or更新のレスポンス"
    },
    "VolumeOption": {
      "type": "object",
      "properties": {
        "payPerUse": {
          "$ref": "#/definitions/PayPerUse",
          "title": "従量測定方式"
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/PricingModel.Tier"
          }
        }
      },
      "required": [
        "tiers"
      ]
    },
    "public.v1.Billing": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "請求ID"
        },
        "invoiceNumber": {
          "type": "string",
          "title": "請求書番号"
        },
        "total": {
          "type": "string",
          "title": "請求金額"
        },
        "tax": {
          "type": "string",
          "title": "税額"
        },
        "status": {
          "$ref": "#/definitions/public.v1.Billing.Status",
          "title": "ステータス"
        },
        "paymentMethodId": {
          "type": "string",
          "title": "決済方法ID"
        },
        "billingDate": {
          "type": "string",
          "format": "date-time",
          "title": "請求日(RFC 3339 format)"
        },
        "billingDueDate": {
          "type": "string",
          "format": "date-time",
          "title": "支払期限日(RFC 3339 format)"
        },
        "billingIssueDate": {
          "type": "string",
          "format": "date-time",
          "title": "請求生成日(RFC 3339 format)"
        },
        "billingItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/Billing.Item"
          },
          "title": "請求アイテム"
        },
        "billingCustomerStaffs": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/Billing.CustomerStaff"
          },
          "title": "請求先の顧客顧客担当者"
        }
      },
      "title": "請求"
    },
    "public.v1.Billing.Status": {
      "type": "string",
      "enum": [
        "STATUS_UNSPECIFIED",
        "STATUS_HOLD_INVOICE_CREATION",
        "STATUS_UNBILLED",
        "STATUS_POSTED",
        "STATUS_PARTIALLY_PAID",
        "STATUS_PAID",
        "STATUS_PAYMENT_EXCLUDED",
        "STATUS_PAYMENT_DUE",
        "STATUS_PAYMENT_UNNECESSARY",
        "STATUS_PARTIALLY_UNPAID",
        "STATUS_PAYMENT_REFUNDED",
        "STATUS_PAID_WITH_CARD",
        "STATUS_INVOICE_CREATED",
        "STATUS_INVOICE_DELETED",
        "STATUS_INVALIDATED"
      ],
      "default": "STATUS_UNSPECIFIED"
    },
    "public.v1.CheckResponse": {
      "type": "object",
      "properties": {
        "status": {
          "$ref": "#/definitions/ServingStatus",
          "title": "ステータス"
        },
        "metadata": {
          "type": "object",
          "title": "(メタデータ)"
        }
      },
      "title": "ヘルスチェックのレスポンス"
    },
    "public.v1.GetProviderRequest": {
      "type": "object",
      "title": "プロバイダー取得リクエスト"
    },
    "public.v1.GetProviderResponse": {
      "type": "object",
      "properties": {
        "provider": {
          "$ref": "#/definitions/public.v1.Provider",
          "title": "プロバイダー"
        }
      },
      "title": "プロバイダー取得レスポンス"
    },
    "public.v1.Provider": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "プロバイダーID"
        },
        "name": {
          "type": "string",
          "title": "企業名"
        },
        "representativeName": {
          "$ref": "#/definitions/public.v1.Provider.Name",
          "title": "代表氏名"
        },
        "phoneNumber": {
          "type": "string",
          "title": "電話番号"
        },
        "emailAddress": {
          "type": "string",
          "title": "メールアドレス"
        },
        "address": {
          "$ref": "#/definitions/public.v1.Provider.Address",
          "title": "住所"
        }
      },
      "title": "プロバイダー"
    },
    "public.v1.Provider.Address": {
      "type": "object",
      "properties": {
        "zipCode": {
          "type": "string",
          "title": "郵便番号"
        },
        "country": {
          "$ref": "#/definitions/public.v1.Provider.Address.Country",
          "title": "国"
        },
        "prefecture": {
          "$ref": "#/definitions/public.v1.Provider.Address.Prefecture",
          "title": "都道府県"
        },
        "city": {
          "type": "string",
          "title": "市区町村"
        },
        "addressLines": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "[番地, 建物名・階数]"
        }
      },
      "title": "住所"
    },
    "public.v1.Provider.Address.Country": {
      "type": "string",
      "enum": [
        "COUNTRY_UNSPECIFIED",
        "COUNTRY_JP"
      ],
      "default": "COUNTRY_UNSPECIFIED",
      "title": "国"
    },
    "public.v1.Provider.Address.Prefecture": {
      "type": "string",
      "enum": [
        "PREFECTURE_UNSPECIFIED",
        "PREFECTURE_HOKKAIDO",
        "PREFECTURE_AOMORI",
        "PREFECTURE_IWATE",
        "PREFECTURE_MIYAGI",
        "PREFECTURE_AKITA",
        "PREFECTURE_YAMAGATA",
        "PREFECTURE_FUKUSHIMA",
        "PREFECTURE_IBARAKI",
        "PREFECTURE_TOCHIGI",
        "PREFECTURE_GUNMA",
        "PREFECTURE_SAITAMA",
        "PREFECTURE_CHIBA",
        "PREFECTURE_TOKYO",
        "PREFECTURE_KANAGAWA",
        "PREFECTURE_NIIGATA",
        "PREFECTURE_TOYAMA",
        "PREFECTURE_ISHIKAWA",
        "PREFECTURE_FUKUI",
        "PREFECTURE_YAMANASHI",
        "PREFECTURE_NAGANO",
        "PREFECTURE_GIFU",
        "PREFECTURE_SHIZUOKA",
        "PREFECTURE_AICHI",
        "PREFECTURE_MIE",
        "PREFECTURE_SHIGA",
        "PREFECTURE_KYOTO",
        "PREFECTURE_OSAKA",
        "PREFECTURE_HYOGO",
        "PREFECTURE_NARA",
        "PREFECTURE_WAKAYAMA",
        "PREFECTURE_TOTTORI",
        "PREFECTURE_SHIMANE",
        "PREFECTURE_OKAYAMA",
        "PREFECTURE_HIROSHIMA",
        "PREFECTURE_YAMAGUCHI",
        "PREFECTURE_TOKUSHIMA",
        "PREFECTURE_KAGAWA",
        "PREFECTURE_EHIME",
        "PREFECTURE_KOCHI",
        "PREFECTURE_FUKUOKA",
        "PREFECTURE_SAGA",
        "PREFECTURE_NAGASAKI",
        "PREFECTURE_KUMAMOTO",
        "PREFECTURE_OITA",
        "PREFECTURE_MIYAZAKI",
        "PREFECTURE_KAGOSHIMA",
        "PREFECTURE_OKINAWA"
      ],
      "default": "PREFECTURE_UNSPECIFIED",
      "title": "都道府県"
    },
    "public.v1.Provider.Name": {
      "type": "object",
      "properties": {
        "firstName": {
          "type": "string",
          "title": "名"
        },
        "lastName": {
          "type": "string",
          "title": "姓"
        }
      },
      "title": "名前"
    },
    "rpc.Status": {
      "type": "object",
      "properties": {
        "code": {
          "type": "integer",
          "format": "int32"
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/Any"
          }
        }
      }
    },
    "v1.Amendment": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "改定ID"
        },
        "amendmentType": {
          "$ref": "#/definitions/Amendment.Type",
          "title": "改定タイプ"
        },
        "contractId": {
          "type": "string",
          "title": "契約ID"
        },
        "version": {
          "type": "integer",
          "format": "int32",
          "title": "バージョン"
        },
        "executeDate": {
          "type": "string",
          "format": "date-time",
          "title": "改定実行日(RFC 3339 format)"
        },
        "effectiveStartDate": {
          "type": "string",
          "format": "date-time",
          "title": "改定の有効開始日(RFC 3339 format)"
        },
        "memo": {
          "type": "string",
          "title": "改定メモ"
        },
        "targetContractItemId": {
          "type": "string",
          "title": "対象の課金項目ID"
        }
      }
    },
    "v1.CatalogChargeItem": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "カタログ課金項目ID"
        },
        "name": {
          "type": "string",
          "title": "課金項目名"
        },
        "billAllAtOnce": {
          "type": "boolean",
          "title": "一括請求オプション"
        },
        "unitPrice": {
          "type": "string",
          "title": "単価"
        },
        "chargeItemType": {
          "$ref": "#/definitions/ChargeItemType",
          "title": "課金項目タイプ"
        },
        "pricingModelType": {
          "$ref": "#/definitions/v1.PricingModelType",
          "title": "料金モデルタイプ"
        },
        "pricingModel": {
          "$ref": "#/definitions/PricingModel",
          "title": "料金モデルの詳細"
        },
        "billingTiming": {
          "$ref": "#/definitions/CatalogChargeItem.Timing",
          "title": "請求タイミング(ex: 翌々月 初日)"
        },
        "billingDueTiming": {
          "$ref": "#/definitions/CatalogChargeItem.Timing",
          "title": "支払期限タイミング"
        },
        "billingCycle": {
          "$ref": "#/definitions/BillingCycle",
          "title": "請求周期"
        },
        "scale": {
          "type": "integer",
          "format": "int32",
          "title": "端数処理の精度"
        },
        "rounding": {
          "$ref": "#/definitions/Rounding",
          "title": "端数処理の方法"
        },
        "startDailyRate": {
          "$ref": "#/definitions/CatalogChargeItem.DailyRate",
          "title": "開始月日割設定"
        },
        "endDailyRate": {
          "$ref": "#/definitions/CatalogChargeItem.DailyRate",
          "title": "終了月日割設定"
        },
        "usageUnitId": {
          "type": "string",
          "title": "使用量単位ID（従量課金の場合に指定）"
        },
        "estimateItemName": {
          "type": "string",
          "title": "見積書記載名"
        }
      }
    },
    "v1.ConfirmDraftContractRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        }
      },
      "title": "契約の下書き解除リクエスト",
      "required": [
        "contractId"
      ]
    },
    "v1.ConfirmDraftContractResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v1.Contract",
          "title": "契約"
        }
      },
      "title": "契約の下書き解除レスポンス"
    },
    "v1.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "optionalId": {
          "type": "string",
          "title": "契約管理ID"
        },
        "mainItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Contract.Item"
          },
          "title": "メイン契約アイテム"
        },
        "customFields": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Contract.CustomField"
          },
          "title": "契約カスタムフィールド"
        },
        "version": {
          "type": "integer",
          "format": "int32",
          "title": "契約バージョン"
        },
        "customerId": {
          "type": "string",
          "title": "契約顧客ID"
        },
        "paymentMethodId": {
          "type": "string",
          "title": "決済手段ID"
        },
        "billingCustomerStaffIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "請求担当者ID（配列の先頭が主請求担当者）"
        },
        "shippingCustomerStaffIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "納入先担当者ID（配列の先頭が主納入先担当者）"
        },
        "isDraft": {
          "type": "boolean",
          "title": "下書きフラグ"
        }
      },
      "title": "契約"
    },
    "v1.Contract.ChargeItem": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約課金項目ID"
        },
        "billAllAtOnce": {
          "type": "boolean",
          "title": "一括請求オプション(定期課金の契約課金項目の場合のみ返却されます。使用量ベース定期課金では常にfalse)"
        },
        "name": {
          "type": "string",
          "title": "契約課金項目名"
        },
        "quantity": {
          "type": "string",
          "format": "int64",
          "title": "契約数。すべての料金モデルで使用できます。定額制の場合は1に正規化されます"
        },
        "usageUnitId": {
          "type": "string",
          "title": "(DEPRECATED: usage_unit.id をお使いください) 使用量単位ID(使用量ベースの課金項目の場合のみ返却されます)"
        },
        "usageUnit": {
          "$ref": "#/definitions/v1.Contract.ChargeItem.UsageUnit",
          "title": "使用量単位(使用量ベースの課金項目の場合のみ返却されます)"
        },
        "pricingModelType": {
          "type": "string",
          "title": "料金計算モデル\nNOTE: StringValue だと空文字とのマッピングに問題があるため optional string を使用しています"
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Contract.ChargeItem.Tier"
          },
          "title": "ティア"
        },
        "billingCycle": {
          "$ref": "#/definitions/v1.Contract.Item.Term",
          "title": "請求周期"
        }
      },
      "title": "契約課金項目"
    },
    "v1.Contract.ChargeItem.Tier": {
      "type": "object",
      "properties": {
        "upperLimit": {
          "type": "string"
        },
        "kind": {
          "$ref": "#/definitions/Contract.ChargeItem.Tier.Kind"
        },
        "unitPrice": {
          "type": "string"
        },
        "price": {
          "type": "string"
        }
      },
      "title": "意図としては TypeScript で表現すると\n({ kind: 'KIND_PER_UNIT', unit_price: string } | { kind: 'KIND_FLAT_FEE', price: string }) & { upper_limit?: string }\nという discriminated union を想定していますが、\nProtoJSON Format https://protobuf.dev/programming-guides/json/ では discriminated union を適切に表現できないので、\n止む無く value だけ oneof で表現しています。\nしたがって { kind: 'KIND_PER_UNIT', price: string } のようなデータも proto 上では可能な定義になってしまっています。",
      "required": [
        "kind"
      ]
    },
    "v1.Contract.ChargeItem.UsageUnit": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "使用量単位ID"
        },
        "optionalId": {
          "type": "string",
          "title": "使用量単位管理ID"
        }
      }
    },
    "v1.Contract.CustomField": {
      "type": "object",
      "properties": {
        "masterId": {
          "type": "string",
          "title": "カスタムフィールドマスターID"
        },
        "value": {
          "type": "string",
          "title": "カスタムフィールド値"
        }
      },
      "title": "カスタムフィールド"
    },
    "v1.Contract.Item": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約アイテムID"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Contract.ChargeItem"
          },
          "title": "契約課金項目"
        },
        "optionItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Contract.Item"
          },
          "title": "オプション契約アイテム（自身がオプションアイテムの場合は空）"
        },
        "status": {
          "$ref": "#/definitions/v1.Contract.Item.Status",
          "title": "契約アイテムステータス"
        },
        "startDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約開始日(RFC 3339 format)"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(RFC 3339 format)"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/v1.Contract.Item.Term",
          "title": "基本契約期間"
        },
        "name": {
          "type": "string",
          "title": "アイテム名"
        },
        "availabilityCycle": {
          "$ref": "#/definitions/v1.Contract.Item.Term",
          "title": "利用周期"
        }
      },
      "title": "契約アイテム"
    },
    "v1.Contract.Item.Status": {
      "type": "string",
      "enum": [
        "STATUS_UNSPECIFIED",
        "STATUS_WAITING_ACTIVATION",
        "STATUS_ACTIVE",
        "STATUS_WAITING_CANCELLATION",
        "STATUS_CANCELED",
        "STATUS_WAITING_COMPLETION",
        "STATUS_COMPLETED",
        "STATUS_INVALIDATED"
      ],
      "default": "STATUS_UNSPECIFIED",
      "title": "- STATUS_WAITING_ACTIVATION: 有効化待ち\n - STATUS_ACTIVE: 有効\n - STATUS_WAITING_CANCELLATION: 解約待ち\n - STATUS_CANCELED: 途中解約\n - STATUS_WAITING_COMPLETION: 終了待ち\n - STATUS_COMPLETED: 終了\n - STATUS_INVALIDATED: 無効"
    },
    "v1.Contract.Item.Term": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/v1.Contract.Item.Term.Unit",
          "title": "単位"
        }
      },
      "title": "基本契約期間"
    },
    "v1.Contract.Item.Term.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "v1.CreateContractRequest": {
      "type": "object",
      "properties": {
        "optionalId": {
          "type": "string",
          "title": "契約管理ID"
        },
        "customer": {
          "$ref": "#/definitions/CreateContractRequest.Customer",
          "title": "顧客"
        },
        "mainItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CreateContractRequest.MainItem"
          },
          "title": "メインとなるアイテム"
        },
        "billingCustomerStaffs": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CreateContractRequest.CustomerStaff"
          },
          "title": "請求担当者（配列の先頭が主請求担当者、優先順位: 1. billingCustomerStaffs -> 2. extensions.billingDestination -> 3. customer.customerStaff）"
        },
        "shippingCustomerStaffs": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CreateContractRequest.CustomerStaff"
          },
          "title": "納入先担当者（配列の先頭が主納入先担当者）"
        },
        "paymentMethodId": {
          "type": "string",
          "title": "決済手段ID(指定しない場合はデフォルトの決済手段が適用されます)"
        },
        "paymentMethodOptionalId": {
          "type": "string",
          "title": "決済手段管理ID(決済手段IDの代わりに指定可)"
        },
        "extensions": {
          "$ref": "#/definitions/Extensions",
          "title": "拡張機能: 請求先の指定など契約作成をサポートする機能を提供します。"
        },
        "isDraft": {
          "type": "boolean",
          "title": "下書きフラグ(trueの場合、契約は下書き状態で作成され、請求生成が抑制されます)"
        }
      },
      "title": "契約作成のリクエスト",
      "required": [
        "customer",
        "mainItems"
      ]
    },
    "v1.CreateContractRequest.ChargeItem": {
      "type": "object",
      "properties": {
        "catalogChargeItemId": {
          "type": "string",
          "title": "カタログ課金項目ID"
        },
        "billAllAtOnce": {
          "type": "boolean",
          "title": "一括請求オプション。指定しなければカタログアイテムに従います"
        },
        "quantity": {
          "type": "integer",
          "format": "int32",
          "title": "契約数。すべての料金モデルで使用できます。定額制の場合は1に正規化されます"
        },
        "chargeItemName": {
          "type": "string",
          "title": "(DEPRECATED: name をお使いください) 課金項目名"
        },
        "price": {
          "type": "integer",
          "format": "int32",
          "title": "単価。カタログの料金モデルが定額または従量制のみで使用できます。指定しなければカタログアイテムに従います"
        },
        "billingTiming": {
          "$ref": "#/definitions/CreateContractRequest.ChargeItem.Timing",
          "title": "請求タイミング"
        },
        "billingDueTiming": {
          "$ref": "#/definitions/CreateContractRequest.ChargeItem.Timing",
          "title": "支払期限タイミング"
        },
        "name": {
          "type": "string",
          "title": "課金項目名。指定しなければカタログアイテムに従います"
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Contract.ChargeItem.Tier"
          },
          "title": "Volume/Tiered pricing tiers; conflicts with price"
        },
        "billingCycle": {
          "$ref": "#/definitions/v1.CreateContractRequest.Term",
          "title": "請求周期(省略時はカタログの請求周期から適用)"
        }
      },
      "required": [
        "catalogChargeItemId"
      ]
    },
    "v1.CreateContractRequest.Term": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/v1.CreateContractRequest.Term.Unit",
          "title": "単位"
        }
      },
      "title": "基本契約期間",
      "required": [
        "value",
        "unit"
      ]
    },
    "v1.CreateContractRequest.Term.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "v1.CreateContractResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v1.Contract",
          "title": "契約"
        }
      },
      "title": "契約作成のレスポンス"
    },
    "v1.CustomField": {
      "type": "object",
      "properties": {
        "masterId": {
          "type": "string",
          "title": "カスタムフィールドマスターID"
        },
        "string": {
          "type": "string",
          "title": "テキスト型の値"
        },
        "date": {
          "type": "string",
          "format": "date-time",
          "title": "日付型の値(RFC 3339 format)"
        },
        "selectList": {
          "type": "string",
          "title": "選択リスト型の値"
        }
      },
      "title": "カスタムフィールド"
    },
    "v1.Customer": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "顧客ID"
        },
        "optionalId": {
          "type": "string",
          "title": "顧客管理ID（更新時、顧客IDの代わりに指定可）"
        },
        "name": {
          "type": "string",
          "title": "顧客名（更新可）"
        },
        "salesRepresentative": {
          "$ref": "#/definitions/Customer.SalesRepresentative",
          "title": "営業担当者"
        },
        "crmAccountId": {
          "type": "string",
          "title": "外部CRMサービスのアカウントID"
        }
      },
      "title": "顧客"
    },
    "v1.CustomerStaff": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "顧客担当者ID"
        },
        "customerId": {
          "type": "string",
          "title": "顧客ID"
        },
        "optionalId": {
          "type": "string",
          "title": "顧客担当者管理ID（更新時、顧客担当者IDの代わりに指定可）"
        },
        "name": {
          "$ref": "#/definitions/v1.CustomerStaff.Name",
          "title": "顧客担当者名（更新可）"
        },
        "department": {
          "type": "string",
          "title": "部門（更新可）"
        },
        "title": {
          "type": "string",
          "title": "肩書（更新可）"
        },
        "phoneNumber": {
          "type": "string",
          "title": "電話番号（更新可）"
        },
        "emailAddress": {
          "type": "string",
          "title": "メールアドレス（更新可）"
        },
        "address": {
          "$ref": "#/definitions/v1.CustomerStaff.Address",
          "title": "住所（更新可）"
        },
        "isDeleted": {
          "type": "boolean",
          "title": "削除済みかどうか",
          "readOnly": true
        },
        "crmStaffId": {
          "type": "string",
          "title": "外部CRMサービスの担当者ID"
        }
      },
      "title": "顧客担当者"
    },
    "v1.CustomerStaff.Address": {
      "type": "object",
      "properties": {
        "zipCode": {
          "type": "string",
          "title": "郵便番号（更新可）"
        },
        "country": {
          "$ref": "#/definitions/v1.CustomerStaff.Address.Country",
          "title": "国（更新可）"
        },
        "prefecture": {
          "$ref": "#/definitions/v1.CustomerStaff.Address.Prefecture",
          "title": "都道府県（更新可）"
        },
        "city": {
          "type": "string",
          "title": "市区郡（更新可）"
        },
        "addressLines": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "町名・番地（更新可）"
        }
      },
      "title": "住所"
    },
    "v1.CustomerStaff.Address.Country": {
      "type": "string",
      "enum": [
        "COUNTRY_UNSPECIFIED",
        "COUNTRY_JP"
      ],
      "default": "COUNTRY_UNSPECIFIED",
      "title": "国"
    },
    "v1.CustomerStaff.Address.Prefecture": {
      "type": "string",
      "enum": [
        "PREFECTURE_UNSPECIFIED",
        "PREFECTURE_HOKKAIDO",
        "PREFECTURE_AOMORI",
        "PREFECTURE_IWATE",
        "PREFECTURE_MIYAGI",
        "PREFECTURE_AKITA",
        "PREFECTURE_YAMAGATA",
        "PREFECTURE_FUKUSHIMA",
        "PREFECTURE_IBARAKI",
        "PREFECTURE_TOCHIGI",
        "PREFECTURE_GUNMA",
        "PREFECTURE_SAITAMA",
        "PREFECTURE_CHIBA",
        "PREFECTURE_TOKYO",
        "PREFECTURE_KANAGAWA",
        "PREFECTURE_NIIGATA",
        "PREFECTURE_TOYAMA",
        "PREFECTURE_ISHIKAWA",
        "PREFECTURE_FUKUI",
        "PREFECTURE_YAMANASHI",
        "PREFECTURE_NAGANO",
        "PREFECTURE_GIFU",
        "PREFECTURE_SHIZUOKA",
        "PREFECTURE_AICHI",
        "PREFECTURE_MIE",
        "PREFECTURE_SHIGA",
        "PREFECTURE_KYOTO",
        "PREFECTURE_OSAKA",
        "PREFECTURE_HYOGO",
        "PREFECTURE_NARA",
        "PREFECTURE_WAKAYAMA",
        "PREFECTURE_TOTTORI",
        "PREFECTURE_SHIMANE",
        "PREFECTURE_OKAYAMA",
        "PREFECTURE_HIROSHIMA",
        "PREFECTURE_YAMAGUCHI",
        "PREFECTURE_TOKUSHIMA",
        "PREFECTURE_KAGAWA",
        "PREFECTURE_EHIME",
        "PREFECTURE_KOCHI",
        "PREFECTURE_FUKUOKA",
        "PREFECTURE_SAGA",
        "PREFECTURE_NAGASAKI",
        "PREFECTURE_KUMAMOTO",
        "PREFECTURE_OITA",
        "PREFECTURE_MIYAZAKI",
        "PREFECTURE_KAGOSHIMA",
        "PREFECTURE_OKINAWA"
      ],
      "default": "PREFECTURE_UNSPECIFIED",
      "title": "都道府県"
    },
    "v1.CustomerStaff.Name": {
      "type": "object",
      "properties": {
        "firstName": {
          "type": "string",
          "title": "顧客担当者の名（更新可）"
        },
        "lastName": {
          "type": "string",
          "title": "顧客担当者の姓（更新可）"
        },
        "firstNameKana": {
          "type": "string",
          "title": "顧客担当者の名（ふりがな）（更新可）"
        },
        "lastNameKana": {
          "type": "string",
          "title": "顧客担当者の姓（ふりがな）（更新可）"
        }
      },
      "title": "名前"
    },
    "v1.DailyRate": {
      "type": "object",
      "properties": {
        "type": {
          "$ref": "#/definitions/v1.DailyRate.Type"
        },
        "fixedRateValue": {
          "type": "number",
          "format": "double",
          "title": "FIXED_RATE指定時の値"
        }
      },
      "title": "日割設定"
    },
    "v1.DailyRate.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_FULL_PRICE",
        "TYPE_DAILY_RATE",
        "TYPE_FIXED_RATE"
      ],
      "default": "TYPE_UNSPECIFIED",
      "title": "- TYPE_FULL_PRICE: 満額\n - TYPE_DAILY_RATE: 利用日数 / 当月の総日数の割合\n - TYPE_FIXED_RATE: 固定された割合"
    },
    "v1.GetContractByOptionalIdRequest": {
      "type": "object",
      "properties": {
        "optionalId": {
          "type": "string",
          "title": "契約管理ID"
        },
        "version": {
          "type": "integer",
          "format": "int32",
          "title": "契約バージョン。指定がなければ最新バージョンの契約が返却される"
        }
      },
      "title": "契約管理IDによる契約取得のリクエスト",
      "required": [
        "optionalId"
      ]
    },
    "v1.GetContractByOptionalIdResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v1.Contract",
          "title": "契約"
        }
      },
      "title": "契約管理IDによる契約取得のレスポンス"
    },
    "v1.GetContractRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "version": {
          "type": "integer",
          "format": "int32",
          "title": "契約バージョン。指定がなければ最新バージョンの契約が返却される"
        }
      },
      "title": "契約取得のリクエスト",
      "required": [
        "id"
      ]
    },
    "v1.GetContractResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v1.Contract",
          "title": "契約"
        }
      },
      "title": "契約取得のレスポンス"
    },
    "v1.LastAvailabilityDailyRate": {
      "type": "object",
      "properties": {
        "contractChargeItemId": {
          "type": "string"
        },
        "lastAvailabilityDailyRate": {
          "$ref": "#/definitions/v1.DailyRate"
        }
      },
      "title": "終了月日割設定",
      "required": [
        "lastAvailabilityDailyRate"
      ]
    },
    "v1.ListContractsRequest": {
      "type": "object",
      "properties": {
        "pageToken": {
          "type": "string",
          "title": "一覧取得に使用するトークン"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "契約の一覧取得のリクエスト"
    },
    "v1.ListContractsResponse": {
      "type": "object",
      "properties": {
        "contracts": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1.Contract"
          },
          "title": "契約"
        },
        "nextPageToken": {
          "type": "string",
          "title": "次の一覧取得に使用するトークン"
        }
      },
      "title": "契約の一覧取得レスポンス"
    },
    "v1.PricingModelType": {
      "type": "string",
      "enum": [
        "PRICING_MODEL_TYPE_UNSPECIFIED",
        "PRICING_MODEL_TYPE_FLAT_FEE",
        "PRICING_MODEL_TYPE_PER_UNIT",
        "PRICING_MODEL_TYPE_VOLUME",
        "PRICING_MODEL_TYPE_TIERED"
      ],
      "default": "PRICING_MODEL_TYPE_UNSPECIFIED",
      "description": "- PRICING_MODEL_TYPE_FLAT_FEE: 定額\n - PRICING_MODEL_TYPE_PER_UNIT: 従量\n - PRICING_MODEL_TYPE_VOLUME: 選択式\n - PRICING_MODEL_TYPE_TIERED: 積上式",
      "title": "料金モデルタイプ"
    },
    "v1.UsageUnit": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "optionalId": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        }
      },
      "title": "使用量単位"
    },
    "v2.ConfirmDraftContractRequest": {
      "type": "object",
      "properties": {
        "contractId": {
          "type": "string",
          "title": "契約ID"
        }
      },
      "title": "契約の下書き解除リクエスト",
      "required": [
        "contractId"
      ]
    },
    "v2.ConfirmDraftContractResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v2.Contract",
          "title": "契約"
        }
      },
      "title": "契約の下書き解除レスポンス"
    },
    "v2.Contract": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "optionalId": {
          "type": "string",
          "title": "契約管理ID"
        },
        "services": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/Contract.Service"
          },
          "title": "契約サービス(複数のメイン・オプションアイテムをサービス単位でグルーピング)"
        },
        "customFields": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v2.Contract.CustomField"
          },
          "title": "契約カスタムフィールド"
        },
        "customerId": {
          "type": "string",
          "title": "契約顧客ID"
        },
        "paymentMethodId": {
          "type": "string",
          "title": "決済方法ID"
        },
        "billingCustomerStaffIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "請求担当者ID（配列の先頭が主請求担当者）"
        },
        "shippingCustomerStaffIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "納入先担当者ID（配列の先頭が主納入先担当者）"
        },
        "isDraft": {
          "type": "boolean",
          "title": "下書きフラグ"
        }
      },
      "title": "契約"
    },
    "v2.Contract.ChargeItem": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約課金項目ID"
        },
        "billAllAtOnce": {
          "type": "boolean",
          "title": "一括請求オプション(定期課金の契約課金項目の場合のみ返却されます。使用量ベース定期課金では常にfalse)"
        },
        "name": {
          "type": "string",
          "title": "契約課金項目名"
        },
        "quantity": {
          "type": "string",
          "format": "int64",
          "title": "契約数。すべての料金モデルで使用できます。定額制の場合は1に正規化されます"
        },
        "usageUnit": {
          "$ref": "#/definitions/v2.Contract.ChargeItem.UsageUnit",
          "title": "使用量単位(使用量ベースの課金項目の場合のみ返却されます)"
        },
        "pricingModelType": {
          "type": "string",
          "title": "料金計算モデル"
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v2.Contract.ChargeItem.Tier"
          },
          "title": "ティア"
        },
        "catalogChargeItemId": {
          "type": "string",
          "title": "カタログ課金項目ID"
        },
        "contractChargeItemType": {
          "$ref": "#/definitions/ContractChargeItemType",
          "title": "契約課金項目タイプ"
        },
        "billingTiming": {
          "$ref": "#/definitions/v2.Timing",
          "title": "請求タイミング"
        },
        "billingDueTiming": {
          "$ref": "#/definitions/v2.Timing",
          "title": "支払期限タイミング"
        },
        "calculatedPrice": {
          "type": "string",
          "title": "計算済み金額(契約数ベースの課金項目のみ。使用量ベースの場合は0)"
        },
        "billingCycle": {
          "$ref": "#/definitions/v2.Contract.Item.Term",
          "title": "請求周期"
        },
        "optionalId": {
          "type": "string",
          "title": "契約課金項目管理ID"
        }
      },
      "title": "契約課金項目"
    },
    "v2.Contract.ChargeItem.Tier": {
      "type": "object",
      "properties": {
        "upperLimit": {
          "type": "string",
          "title": "上限値（最後のティアのみ省略可）"
        },
        "feeFormula": {
          "$ref": "#/definitions/Contract.ChargeItem.Tier.FeeFormula",
          "title": "料金計算式"
        },
        "unitPrice": {
          "type": "string",
          "title": "単価。定額制の場合はこの値がそのまま料金となり、従量制の場合は数量との積算で料金が決まる"
        }
      },
      "title": "ティア: 料金計算式（定額/従量）と単価のペア、および適用範囲の上限値を表す",
      "required": [
        "feeFormula"
      ]
    },
    "v2.Contract.ChargeItem.UsageUnit": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "使用量単位ID"
        },
        "optionalId": {
          "type": "string",
          "title": "使用量単位管理ID"
        }
      }
    },
    "v2.Contract.CustomField": {
      "type": "object",
      "properties": {
        "masterId": {
          "type": "string",
          "title": "カスタムフィールドマスターID"
        },
        "value": {
          "type": "string",
          "title": "カスタムフィールド値"
        }
      },
      "title": "カスタムフィールド"
    },
    "v2.Contract.Item": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約アイテムID"
        },
        "chargeItems": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v2.Contract.ChargeItem"
          },
          "title": "契約課金項目"
        },
        "status": {
          "$ref": "#/definitions/v2.Contract.Item.Status",
          "description": "「日付指定」で契約を取得した場合以外では、`STATUS_UNSPECIFIED` 以外の値が入ることが保証される。",
          "title": "契約アイテムステータス"
        },
        "startDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約開始日(RFC 3339 format)"
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "title": "契約終了日(RFC 3339 format)"
        },
        "defaultContractTerm": {
          "$ref": "#/definitions/v2.Contract.Item.Term",
          "title": "基本契約期間"
        },
        "name": {
          "type": "string",
          "title": "アイテム名"
        },
        "catalogItemId": {
          "type": "string",
          "title": "カタログアイテムID"
        },
        "availabilityCycle": {
          "$ref": "#/definitions/v2.Contract.Item.Term",
          "title": "利用周期"
        }
      },
      "title": "契約アイテム"
    },
    "v2.Contract.Item.Status": {
      "type": "string",
      "enum": [
        "STATUS_UNSPECIFIED",
        "STATUS_WAITING_ACTIVATION",
        "STATUS_ACTIVE",
        "STATUS_WAITING_CANCELLATION",
        "STATUS_CANCELED",
        "STATUS_WAITING_COMPLETION",
        "STATUS_COMPLETED",
        "STATUS_INVALIDATED"
      ],
      "default": "STATUS_UNSPECIFIED",
      "description": "- STATUS_WAITING_ACTIVATION: 有効化待ち\n - STATUS_ACTIVE: 有効\n - STATUS_WAITING_CANCELLATION: 解約待ち\n - STATUS_CANCELED: 途中解約\n - STATUS_WAITING_COMPLETION: 終了待ち\n - STATUS_COMPLETED: 終了\n - STATUS_INVALIDATED: 無効",
      "title": "契約アイテムステータス"
    },
    "v2.Contract.Item.Term": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/v2.Contract.Item.Term.Unit",
          "title": "単位"
        }
      },
      "title": "基本契約期間"
    },
    "v2.Contract.Item.Term.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "v2.CreateContractRequest": {
      "type": "object",
      "properties": {
        "optionalId": {
          "type": "string",
          "title": "契約管理ID"
        },
        "customer": {
          "$ref": "#/definitions/CustomerIdentifier",
          "title": "顧客識別子"
        },
        "services": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CreateContractRequest.Service"
          },
          "title": "契約サービス(複数のメイン・オプションアイテムをサービス単位でグルーピング、最低1件必須)"
        },
        "billingCustomerStaffs": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CustomerStaffIdentifier"
          },
          "title": "請求先担当者識別子（配列の先頭が請求先主担当、最低1件必須）"
        },
        "shippingCustomerStaffs": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/CustomerStaffIdentifier"
          },
          "title": "納入先担当者識別子（配列の先頭が納入先主担当）"
        },
        "paymentMethodId": {
          "type": "string",
          "title": "決済方法ID（省略時はデフォルトの決済方法が適用されます）"
        },
        "paymentMethodOptionalId": {
          "type": "string",
          "title": "決済方法管理ID（決済方法IDの代わりに指定可）"
        },
        "isDraft": {
          "type": "boolean",
          "title": "下書きフラグ(trueの場合、契約は下書き状態で作成され、請求生成が抑制されます)"
        }
      },
      "title": "契約作成のリクエスト",
      "required": [
        "customer",
        "services"
      ]
    },
    "v2.CreateContractRequest.ChargeItem": {
      "type": "object",
      "properties": {
        "catalogChargeItemId": {
          "type": "string",
          "title": "カタログ課金項目ID"
        },
        "name": {
          "type": "string",
          "title": "請求書記載名(省略時はカタログから適用されます)"
        },
        "quantity": {
          "type": "integer",
          "format": "int32",
          "title": "契約数（定額料金の場合は1に固定されます）"
        },
        "billAllAtOnce": {
          "type": "boolean",
          "title": "一括請求オプション(省略時はカタログから適用されます)"
        },
        "optionalId": {
          "type": "string",
          "title": "課金項目管理ID"
        },
        "pricing": {
          "$ref": "#/definitions/CreateContractRequest.ChargeItem.Pricing",
          "title": "料金設定(省略時はカタログから適用されます)"
        },
        "billingTiming": {
          "$ref": "#/definitions/v2.Timing",
          "title": "請求タイミング(省略時はカタログから適用されます)"
        },
        "billingDueTiming": {
          "$ref": "#/definitions/v2.Timing",
          "title": "支払期限タイミング(省略時はカタログから適用されます)"
        },
        "billingCycle": {
          "$ref": "#/definitions/v2.CreateContractRequest.Term",
          "title": "請求周期(省略時はカタログの請求周期から適用されます)"
        }
      },
      "title": "契約課金項目",
      "required": [
        "catalogChargeItemId"
      ]
    },
    "v2.CreateContractRequest.Term": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "期間数"
        },
        "unit": {
          "$ref": "#/definitions/v2.CreateContractRequest.Term.Unit",
          "title": "単位"
        }
      },
      "title": "更新時に延長される期間"
    },
    "v2.CreateContractRequest.Term.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_MONTHLY: 月",
      "title": "期間単位"
    },
    "v2.CreateContractResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v2.Contract",
          "title": "契約"
        }
      },
      "title": "契約作成のレスポンス"
    },
    "v2.DailyRate": {
      "type": "object",
      "properties": {
        "type": {
          "$ref": "#/definitions/v2.DailyRate.Type"
        },
        "fixedRateValue": {
          "type": "number",
          "format": "double",
          "title": "FIXED_RATE指定時の値"
        }
      },
      "title": "日割設定"
    },
    "v2.DailyRate.Type": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_FULL_PRICE",
        "TYPE_DAILY_RATE",
        "TYPE_FIXED_RATE"
      ],
      "default": "TYPE_UNSPECIFIED",
      "title": "- TYPE_FULL_PRICE: 満額\n - TYPE_DAILY_RATE: 利用日数 / 当月の総日数の割合\n - TYPE_FIXED_RATE: 固定された割合"
    },
    "v2.GetContractByOptionalIdRequest": {
      "type": "object",
      "properties": {
        "optionalId": {
          "type": "string",
          "title": "契約管理ID"
        },
        "atPointInServiceTimeline": {
          "type": "string",
          "format": "date-time",
          "title": "契約サービスタイムラインのどの時点での契約を取得するかの指定。\n指定しない場合は、契約サービスタイムラインの最も未来の時点での契約の状態が返却される。"
        }
      },
      "title": "契約管理IDによる契約取得のリクエスト",
      "required": [
        "optionalId"
      ]
    },
    "v2.GetContractByOptionalIdResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v2.Contract",
          "description": "`at_point_in_service_timeline`をリクエストに含まなかった場合、\n返却される契約アイテムのステータスには`STATUS_UNSPECIFIED` 以外の値が入ることが保証される。",
          "title": "契約"
        }
      },
      "title": "契約管理IDによる契約取得のレスポンス"
    },
    "v2.GetContractRequest": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "title": "契約ID"
        },
        "atPointInServiceTimeline": {
          "type": "string",
          "format": "date-time",
          "title": "契約サービスタイムラインのどの時点での契約を取得するかの指定。\n指定しない場合は、契約サービスタイムラインの最も未来の時点での契約の状態が返却される。"
        }
      },
      "title": "契約取得のリクエスト",
      "required": [
        "id"
      ]
    },
    "v2.GetContractResponse": {
      "type": "object",
      "properties": {
        "contract": {
          "$ref": "#/definitions/v2.Contract",
          "description": "`at_point_in_service_timeline`をリクエストに含まなかった場合、\n返却される契約アイテムのステータスには`STATUS_UNSPECIFIED` 以外の値が入ることが保証される。",
          "title": "契約。"
        }
      },
      "title": "契約取得のレスポンス"
    },
    "v2.LastAvailabilityDailyRate": {
      "type": "object",
      "properties": {
        "contractChargeItemId": {
          "type": "string"
        },
        "lastAvailabilityDailyRate": {
          "$ref": "#/definitions/v2.DailyRate"
        }
      },
      "title": "終了月日割設定",
      "required": [
        "lastAvailabilityDailyRate"
      ]
    },
    "v2.ListContractsRequest": {
      "type": "object",
      "properties": {
        "filters": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/ListContractsRequest.FilterClause"
          },
          "title": "契約のフィルタ条件"
        },
        "sortOrder": {
          "$ref": "#/definitions/ContractSortOrder",
          "title": "ソート順"
        },
        "offsetToken": {
          "type": "string",
          "title": "オフセット情報を含むページングトークン。"
        },
        "pageSize": {
          "type": "integer",
          "format": "int32",
          "title": "一覧取得する最大数 [デフォルト: 10 / 最小: 1 / 最大: 100]"
        }
      },
      "title": "契約の一覧取得のリクエスト"
    },
    "v2.ListContractsResponse": {
      "type": "object",
      "properties": {
        "contracts": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v2.Contract"
          },
          "description": "返却される契約アイテムのステータスには`STATUS_UNSPECIFIED` 以外の値が入ることが保証される。",
          "title": "契約"
        },
        "nextOffsetToken": {
          "type": "string",
          "description": "contracts が一覧の終端に到達し、次のページが新たに結果を含むことが無いことが分かるとき、null が返却される。",
          "title": "次の一覧取得に使用するオフセットトークン"
        }
      },
      "title": "契約の一覧取得のレスポンス"
    },
    "v2.Timing": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32",
          "title": "数(負数の場合は前を表す。例: { \"value\": -1, \"unit\": \"UNIT_MONTHLY\" } => 先月)"
        },
        "unit": {
          "$ref": "#/definitions/v2.Timing.Unit",
          "title": "単位"
        },
        "dayOfMonth": {
          "$ref": "#/definitions/DayOfMonth",
          "title": "UNIT_MONTHLY指定時の日"
        }
      },
      "title": "タイミング",
      "required": [
        "value",
        "unit",
        "dayOfMonth"
      ]
    },
    "v2.Timing.Unit": {
      "type": "string",
      "enum": [
        "UNIT_UNSPECIFIED",
        "UNIT_DAILY",
        "UNIT_MONTHLY"
      ],
      "default": "UNIT_UNSPECIFIED",
      "description": "- UNIT_DAILY: 日\n - UNIT_MONTHLY: 月",
      "title": "期間単位"
    }
  },
  "x-servers": [
    {
      "url": "https://api.sandbox.scalebase.com/",
      "description": "sandbox"
    },
    {
      "url": "https://api.scalebase.com/",
      "description": "production"
    }
  ]
}
