freee/models/partners_response_partners_inner.rs
1/*
2 * freee API
3 *
4 * <h1 id=\"freee_api\">freee API</h1> <hr /> <h2 id=\"start_guide\">スタートガイド</h2> <p>freee API開発がはじめての方は<a href=\"https://developer.freee.co.jp/getting-started\">freee API スタートガイド</a>を参照してください。</p> <hr /> <h2 id=\"specification\">仕様</h2> <h3 id=\"api_endpoint\">APIエンドポイント</h3> <p>https://api.freee.co.jp/ (httpsのみ)</p> <h3 id=\"about_authorize\">認証について</h3> <p>OAuth2.0を利用します。<a href=\"https://developer.freee.co.jp/reference/#%e8%aa%8d%e8%a8%bc\" target=\"_blank\">詳細はリファレンスの認証に関する記載を参照してください。</a></p> <h3 id=\"data_format\">データフォーマット</h3> <p>リクエスト、レスポンスともにJSON形式をサポートしていますが、詳細は、API毎の説明欄(application/jsonなど)を確認してください。</p> <h3 id=\"compatibility\">後方互換性ありの変更</h3> <p>freeeでは、APIを改善していくために以下のような変更は後方互換性ありとして通知なく変更を入れることがあります。アプリケーション実装者は以下を踏まえて開発を行ってください。</p> <ul> <li>新しいAPIリソース・エンドポイントの追加</li> <li>既存のAPIに対して必須ではない新しいリクエストパラメータの追加</li> <li>既存のAPIレスポンスに対する新しいプロパティの追加</li> <li>既存のAPIレスポンスに対するプロパティの順番の入れ変え</li> <li>keyとなっているidやcodeの長さの変更(長くする)</li> </ul> <h3 id=\"common_response_header\">共通レスポンスヘッダー</h3> <p>すべてのAPIのレスポンスには以下のHTTPヘッダーが含まれます。</p> <ul> <li> <p>X-Freee-Request-ID</p> <ul> <li>各リクエスト毎に発行されるID</li> </ul> </li> </ul> <h3 id=\"common_error_response\">共通エラーレスポンス</h3> <ul> <li> <p>ステータスコードはレスポンス内のJSONに含まれる他、HTTPヘッダにも含まれる</p> </li> <li> <p>一部のエラーレスポンスにはエラーコードが含まれます。<br>詳細は、<a href=\"https://developer.freee.co.jp/tips/faq/40x-checkpoint\">HTTPステータスコード400台エラー時のチェックポイント</a>を参照してください</p> </li> <p>type</p> <ul> <li>status : HTTPステータスコードの説明</li> <li>validation : エラーの詳細の説明(開発者向け)</li> </ul> </li> </ul> <p>レスポンスの例</p> <pre><code> { "status_code" : 400, "errors" : [ { "type" : "status", "messages" : ["不正なリクエストです。"] }, { "type" : "validation", "messages" : ["Date は不正な日付フォーマットです。入力例:2019-12-17"] } ] }</code></pre> </br> <h3 id=\"api_rate_limit\">API使用制限</h3> <p>freeeは一定期間に過度のアクセスを検知した場合、APIアクセスをコントロールする場合があります。</p> <p>その際のhttp status codeは403となります。制限がかかってから10分程度が過ぎると再度使用することができるようになります。</p> <h4 id=\"reports_api_endpoint\">/reportsと/receipts/{id}/downloadエンドポイント</h4> <p>freeeはエンドポイント毎に一定頻度以上のアクセスを検知した場合、APIアクセスをコントロールする場合があります。その際のhttp status codeは429(too many requests)となります。</p> <ul> <li>/reports:1秒に10回まで</li> <li>/receipts/{id}/download:1秒に3回まで</li> </ul> <p>http status codeが429となった場合、API使用ステータスはレスポンスヘッダに付与されます。</p> <pre><code>x-ratelimit-limit:10 x-ratelimit-remaining:1 x-ratelimit-reset:2023-01-13T10:22:29+09:00 </code></pre> <br> 各ヘッダの意味は次のとおりです。</p> <table border=\"1\"> <tbody> <tr> <th style=\"padding: 10px\"><strong>ヘッダ名</strong></th> <th style=\"padding: 10px\"><strong>説明</strong></th> </tr> <tr><td style=\"padding: 10px\">x-ratelimit-limit</td><td style=\"padding: 10px\">使用回数の上限</td></tr> <tr><td style=\"padding: 10px\">x-ratelimit-remaining</td><td style=\"padding: 10px\">残り使用回数</td></tr> <tr><td style=\"padding: 10px\">x-ratelimit-reset</td><td style=\"padding: 10px\">使用回数がリセットされる時刻</td></tr> </tbody> </table> </br> <h3 id=\"plan_api_rate_limit\">プラン別のAPI Rate Limit</h3> <table border=\"1\"> <tbody> <tr> <th style=\"padding: 10px\"><strong>freee会計プラン名</strong></th> <th style=\"padding: 10px\"><strong>事業所とアプリケーション毎に1日でのAPIコール数</strong></th> </tr> <tr> <td style=\"padding: 10px\">エンタープライズ</td> <td style=\"padding: 10px\">10,000</td> </tr> <tr> <td style=\"padding: 10px\">プロフェッショナル</td> <td style=\"padding: 10px\">5,000</td> </tr> <tr> <td style=\"padding: 10px\">ベーシック</td> <td style=\"padding: 10px\">3,000</td> </tr> <tr> <td style=\"padding: 10px\">ミニマム</td> <td style=\"padding: 10px\">3,000</td> </tr> <tr> <td style=\"padding: 10px\">上記以外</td> <td style=\"padding: 10px\">3,000</td> </tr> </tbody> </table> <h3 id=\"webhook\">Webhookについて</h3> <p>詳細は<a href=\"https://developer.freee.co.jp/docs/accounting/webhook\" target=\"_blank\">会計Webhook概要</a>を参照してください。</p> <hr /> <h2 id=\"contact\">連絡先</h2> <p>ご不明点、ご要望等は <a href=\"https://support.freee.co.jp/hc/ja/requests/new\">freee サポートデスクへのお問い合わせフォーム</a> からご連絡ください。</p> <hr />© Since 2013 freee K.K.
5 *
6 * The version of the OpenAPI document: v1.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11
12
13
14#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
15pub struct PartnersResponsePartnersInner {
16 /// 取引先ID
17 #[serde(rename = "id")]
18 pub id: i32,
19 /// 取引先コード
20 #[serde(rename = "code", deserialize_with = "Option::deserialize")]
21 pub code: Option<String>,
22 /// 事業所ID
23 #[serde(rename = "company_id")]
24 pub company_id: i32,
25 /// 取引先名
26 #[serde(rename = "name")]
27 pub name: String,
28 /// 更新日 (yyyy-mm-dd)
29 #[serde(rename = "update_date")]
30 pub update_date: String,
31 /// 取引先の使用設定(true: 使用する、false: 使用しない) <br> <ul> <li> 本APIでpartnerを作成した場合はtrueになります。 </li> <li> falseにする場合はWeb画面から変更できます。 </li> <li> trueの場合、Web画面での取引登録時などに入力候補として表示されます。 </li> <li> falseの場合、取引先自体は削除せず、Web画面での取引登録時などに入力候補として表示されません。ただし取引(収入・支出)の作成APIなどでfalseの取引先をパラメータに指定すれば、取引などにfalseの取引先を設定できます。 </li> </ul>
32 #[serde(rename = "available")]
33 pub available: bool,
34 /// ショートカット1 (255文字以内)
35 #[serde(rename = "shortcut1", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
36 pub shortcut1: Option<Option<String>>,
37 /// ショートカット2 (255文字以内)
38 #[serde(rename = "shortcut2", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
39 pub shortcut2: Option<Option<String>>,
40 /// 事業所種別(null: 未設定、1: 法人、2: 個人)
41 #[serde(rename = "org_code", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
42 pub org_code: Option<Option<i32>>,
43 /// 地域(JP: 国内、ZZ:国外)
44 #[serde(rename = "country_code", skip_serializing_if = "Option::is_none")]
45 pub country_code: Option<String>,
46 /// 正式名称(255文字以内)
47 #[serde(rename = "long_name", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
48 pub long_name: Option<Option<String>>,
49 /// カナ名称(255文字以内)
50 #[serde(rename = "name_kana", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
51 pub name_kana: Option<Option<String>>,
52 /// 敬称(御中、様、(空白)の3つから選択)
53 #[serde(rename = "default_title", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
54 pub default_title: Option<Option<String>>,
55 /// 電話番号
56 #[serde(rename = "phone", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
57 pub phone: Option<Option<String>>,
58 /// 担当者 氏名
59 #[serde(rename = "contact_name", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
60 pub contact_name: Option<Option<String>>,
61 /// 担当者 メールアドレス
62 #[serde(rename = "email", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
63 pub email: Option<Option<String>>,
64 /// 振込元口座ID(一括振込ファイル用):(未設定の場合は、nullです。)
65 #[serde(rename = "payer_walletable_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
66 pub payer_walletable_id: Option<Option<i32>>,
67 /// 振込手数料負担(一括振込ファイル用): (振込元(当方): payer, 振込先(先方): payee)
68 #[serde(rename = "transfer_fee_handling_side", skip_serializing_if = "Option::is_none")]
69 pub transfer_fee_handling_side: Option<TransferFeeHandlingSide>,
70 /// この項目はインボイス制度で利用する項目です。2023年4月頃から利用できる予定です。 インボイス制度適格請求書発行事業者(true: 対象事業者、false: 非対象事業者) <a target=\"_blank\" href=\"https://www.invoice-kohyo.nta.go.jp/index.html\">国税庁インボイス制度適格請求書発行事業者公表サイト</a>
71 #[serde(rename = "qualified_invoice_issuer", skip_serializing_if = "Option::is_none")]
72 pub qualified_invoice_issuer: Option<bool>,
73 /// この項目はインボイス制度で利用する項目です。2023年4月頃から利用できる予定です。 インボイス制度適格請求書発行事業者登録番号 - 先頭T数字13桁の固定14桁の文字列 <a target=\"_blank\" href=\"https://www.invoice-kohyo.nta.go.jp/index.html\">国税庁インボイス制度適格請求書発行事業者公表サイト</a>
74 #[serde(rename = "invoice_registration_number", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
75 pub invoice_registration_number: Option<Option<String>>,
76 #[serde(rename = "address_attributes", skip_serializing_if = "Option::is_none")]
77 pub address_attributes: Option<Box<crate::models::PartnersResponsePartnersInnerAddressAttributes>>,
78 #[serde(rename = "partner_doc_setting_attributes", skip_serializing_if = "Option::is_none")]
79 pub partner_doc_setting_attributes: Option<Box<crate::models::PartnerCreateParamsPartnerDocSettingAttributes>>,
80 #[serde(rename = "partner_bank_account_attributes", skip_serializing_if = "Option::is_none")]
81 pub partner_bank_account_attributes: Option<Box<crate::models::PartnersResponsePartnersInnerPartnerBankAccountAttributes>>,
82}
83
84impl PartnersResponsePartnersInner {
85 pub fn new(id: i32, code: Option<String>, company_id: i32, name: String, update_date: String, available: bool) -> PartnersResponsePartnersInner {
86 PartnersResponsePartnersInner {
87 id,
88 code,
89 company_id,
90 name,
91 update_date,
92 available,
93 shortcut1: None,
94 shortcut2: None,
95 org_code: None,
96 country_code: None,
97 long_name: None,
98 name_kana: None,
99 default_title: None,
100 phone: None,
101 contact_name: None,
102 email: None,
103 payer_walletable_id: None,
104 transfer_fee_handling_side: None,
105 qualified_invoice_issuer: None,
106 invoice_registration_number: None,
107 address_attributes: None,
108 partner_doc_setting_attributes: None,
109 partner_bank_account_attributes: None,
110 }
111 }
112}
113
114/// 振込手数料負担(一括振込ファイル用): (振込元(当方): payer, 振込先(先方): payee)
115#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
116pub enum TransferFeeHandlingSide {
117 #[serde(rename = "payer")]
118 Payer,
119 #[serde(rename = "payee")]
120 Payee,
121}
122
123impl Default for TransferFeeHandlingSide {
124 fn default() -> TransferFeeHandlingSide {
125 Self::Payer
126 }
127}
128