Rutter Open API Spec

{
  "info": {
    "title": "Rutter",
    "version": "2024-04-30",
    "description": "The Universal API for all major e-commerce platforms, accounting systems, and payment processors."
  },
  "openapi": "3.1.0",
  "paths": {
    "/accounting/:entityType": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEntityWithCustomFieldsPage"
              },
              "examples": {
                "CreateEntityWithCustomFieldsPage_Example": {
                  "$ref": "#/components/examples/CreateEntityWithCustomFieldsPage_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateEntityWithCustomFieldsPageResponse"
                },
                "examples": {
                  "CreateEntityWithCustomFieldsPageResponse_Example": {
                    "$ref": "#/components/examples/CreateEntityWithCustomFieldsPageResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/:entityType/custom_fields": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "entityType",
            "in": "path",
            "required": true,
            "description": "The supported entity types for which we can fetch the custom field schema.",
            "schema": {
              "$ref": "#/components/schemas/CustomFieldsPagePathParams/properties/entityType"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CustomFieldsGetParams/properties/access_token"
            }
          },
          {
            "name": "platform_fields",
            "in": "query",
            "required": false,
            "description": "Include fields that are platform defined (or unlocked through a platform defined process) vs. only those that are user defined.",
            "schema": {
              "$ref": "#/components/schemas/CustomFieldsGetParams/properties/platform_fields"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CustomFieldsGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFieldsPageGenericEntityResponse"
                },
                "examples": {
                  "CustomFieldsPageGenericEntityResponse_Example": {
                    "$ref": "#/components/examples/CustomFieldsPageGenericEntityResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ]
      }
    },
    "/accounting/accounts": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/expand"
            }
          },
          {
            "name": "account_type",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The exact account type to filter on.",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/account_type"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountsParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAccountResponseWithConnection"
                },
                "examples": {
                  "ListAccountResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListAccountResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "TALLY",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "balance",
          "account_type",
          "status",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateAccountRequest"
              },
              "examples": {
                "CreateCreateAccountRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateAccountRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateAccountResponse"
                },
                "examples": {
                  "CreateAccountResponse_Example": {
                    "$ref": "#/components/examples/CreateAccountResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/accounts/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountResponseWithConnection"
                },
                "examples": {
                  "AccountResponseWithConnection_Example": {
                    "$ref": "#/components/examples/AccountResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "TALLY",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateAccountRequest"
              },
              "examples": {
                "CreateUpdateAccountRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateAccountRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateAccountResponse"
                },
                "examples": {
                  "CreateAccountResponse_Example": {
                    "$ref": "#/components/examples/CreateAccountResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/balance_sheets": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/access_token"
            }
          },
          {
            "name": "start_date",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The first date that you will receive a financial statement for.  This means if you set a start date a year ago, you will receive 13 financial statements, one for each month.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/start_date"
            }
          },
          {
            "name": "end_date",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The last date that you will receive a financial statement for.  If you set a start date of Jan 1 2021 and an end date of Jan 1 2022, you will receive the 13 months between those dates, inclusive.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/end_date"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/expand"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BalanceSheetResultWithConnection"
                },
                "examples": {
                  "BalanceSheetResultWithConnection_Example": {
                    "$ref": "#/components/examples/BalanceSheetResultWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "TALLY",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "start_date",
          "end_date",
          "last_synced_at"
        ]
      }
    },
    "/accounting/bank_deposits": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListBankDepositResponseWithConnection"
                },
                "examples": {
                  "ListBankDepositResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListBankDepositResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateBankDepositRequest"
              },
              "examples": {
                "CreateCreateBankDepositRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateBankDepositRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBankDepositResponse"
                },
                "examples": {
                  "CreateBankDepositResponse_Example": {
                    "$ref": "#/components/examples/CreateBankDepositResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/bank_deposits/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BankDepositResponseWithConnection"
                },
                "examples": {
                  "BankDepositResponseWithConnection_Example": {
                    "$ref": "#/components/examples/BankDepositResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateBankDepositRequest"
              },
              "examples": {
                "CreateUpdateBankDepositRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateBankDepositRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBankDepositResponse"
                },
                "examples": {
                  "CreateBankDepositResponse_Example": {
                    "$ref": "#/components/examples/CreateBankDepositResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/bank_deposits/:id/attachments": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the underlying entity type.",
            "schema": {
              "$ref": "#/components/schemas/PostAttachmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAttachmentBody"
              },
              "examples": {
                "CreateAttachmentBody_Example": {
                  "$ref": "#/components/examples/CreateAttachmentBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PostAttachmentResponse"
                },
                "examples": {
                  "PostAttachmentResponse_Example": {
                    "$ref": "#/components/examples/PostAttachmentResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      },
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the Rutter Entity.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentsByEntityPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BankDepositAttachmentsResponse"
                },
                "examples": {
                  "BankDepositAttachmentsResponse_Example": {
                    "$ref": "#/components/examples/BankDepositAttachmentsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bank_deposits/:id/attachments/:attachmentId/file": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentFilePathParams/properties/id"
            }
          },
          {
            "name": "attachmentId",
            "in": "path",
            "required": true,
            "description": "The platform unique ID of the attachment.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentFilePathParams/properties/attachmentId"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentFileResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bank_deposits/attachments": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/access_token"
            }
          },
          {
            "name": "attached_to_id",
            "in": "query",
            "required": false,
            "description": "The ID of the entity that the attachment is attached to.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/attached_to_id"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/limit"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/expand"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAttachmentsResponse"
                },
                "examples": {
                  "ListAttachmentsResponse_Example": {
                    "$ref": "#/components/examples/ListAttachmentsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bank_deposits/attachments/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the attachment.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bank_feeds/accounts": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListBankFeedAccountResponseWithConnection"
                },
                "examples": {
                  "ListBankFeedAccountResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListBankFeedAccountResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ],
        "x-indexed-fields": [
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateBankFeedAccountRequest"
              },
              "examples": {
                "CreateCreateBankFeedAccountRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateBankFeedAccountRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBankFeedAccountResponse"
                },
                "examples": {
                  "CreateBankFeedAccountResponse_Example": {
                    "$ref": "#/components/examples/CreateBankFeedAccountResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/bank_feeds/accounts/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BankFeedAccountResponseWithConnection"
                },
                "examples": {
                  "BankFeedAccountResponseWithConnection_Example": {
                    "$ref": "#/components/examples/BankFeedAccountResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ]
      }
    },
    "/accounting/bank_feeds/otp": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateBankFeedOTP"
              },
              "examples": {
                "CreateBankFeedOTP_Example": {
                  "$ref": "#/components/examples/CreateBankFeedOTP_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BankFeedOTPResponse"
                },
                "examples": {
                  "BankFeedOTPResponse_Example": {
                    "$ref": "#/components/examples/BankFeedOTPResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "QUICKBOOKS",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/bank_feeds/transactions": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListBankFeedTransactionResponseWithConnection"
                },
                "examples": {
                  "ListBankFeedTransactionResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListBankFeedTransactionResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ],
        "x-indexed-fields": [
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateBankFeedTransactionsRequest"
              },
              "examples": {
                "CreateCreateBankFeedTransactionsRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateBankFeedTransactionsRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListCreateBankFeedTransactionsResponseResponse"
                },
                "examples": {
                  "ListCreateBankFeedTransactionsResponseResponse_Example": {
                    "$ref": "#/components/examples/ListCreateBankFeedTransactionsResponseResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/bank_feeds/transactions/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BankFeedTransactionResponseWithConnection"
                },
                "examples": {
                  "BankFeedTransactionResponseWithConnection_Example": {
                    "$ref": "#/components/examples/BankFeedTransactionResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ]
      }
    },
    "/accounting/bank_transfers": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListBankTransferResponseWithConnection"
                },
                "examples": {
                  "ListBankTransferResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListBankTransferResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateBankTransferRequest"
              },
              "examples": {
                "CreateCreateBankTransferRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateBankTransferRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBankTransferResponse"
                },
                "examples": {
                  "CreateBankTransferResponse_Example": {
                    "$ref": "#/components/examples/CreateBankTransferResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "QUICKBOOKS",
          "XERO"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/bank_transfers/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BankTransferResponseWithConnection"
                },
                "examples": {
                  "BankTransferResponseWithConnection_Example": {
                    "$ref": "#/components/examples/BankTransferResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateBankTransferRequest"
              },
              "examples": {
                "CreateUpdateBankTransferRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateBankTransferRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBankTransferResponse"
                },
                "examples": {
                  "CreateBankTransferResponse_Example": {
                    "$ref": "#/components/examples/CreateBankTransferResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "QUICKBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/bill_credit_applications": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateBillCreditApplicationRequest"
              },
              "examples": {
                "CreateCreateBillCreditApplicationRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateBillCreditApplicationRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBillCreditApplicationResponse"
                },
                "examples": {
                  "CreateBillCreditApplicationResponse_Example": {
                    "$ref": "#/components/examples/CreateBillCreditApplicationResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "FREEAGENT",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bill_credit_memos": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListBillCreditMemoResponseWithConnection"
                },
                "examples": {
                  "ListBillCreditMemoResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListBillCreditMemoResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "EXACTONLINE",
          "FREEAGENT",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateBillCreditMemoRequest"
              },
              "examples": {
                "CreateCreateBillCreditMemoRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateBillCreditMemoRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBillCreditMemoResponse"
                },
                "examples": {
                  "CreateBillCreditMemoResponse_Example": {
                    "$ref": "#/components/examples/CreateBillCreditMemoResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "EXACTONLINE",
          "FREEAGENT",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bill_credit_memos/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BillCreditMemoResponseWithConnection"
                },
                "examples": {
                  "BillCreditMemoResponseWithConnection_Example": {
                    "$ref": "#/components/examples/BillCreditMemoResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "EXACTONLINE",
          "FREEAGENT",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bill_payments": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListBillPaymentResponseWithConnection"
                },
                "examples": {
                  "ListBillPaymentResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListBillPaymentResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "vendor_id",
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateBillPaymentRequest"
              },
              "examples": {
                "CreateCreateBillPaymentRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateBillPaymentRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBillPaymentResponse"
                },
                "examples": {
                  "CreateBillPaymentResponse_Example": {
                    "$ref": "#/components/examples/CreateBillPaymentResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bill_payments/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BillPaymentResponseWithConnection"
                },
                "examples": {
                  "BillPaymentResponseWithConnection_Example": {
                    "$ref": "#/components/examples/BillPaymentResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateBillPaymentRequest"
              },
              "examples": {
                "CreateUpdateBillPaymentRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateBillPaymentRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBillPaymentResponse"
                },
                "examples": {
                  "CreateBillPaymentResponse_Example": {
                    "$ref": "#/components/examples/CreateBillPaymentResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bills": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/expand"
            }
          },
          {
            "name": "document_number",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The exact document number to filter on. Not supported on Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/document_number"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListBillsParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListBillResponseWithConnection"
                },
                "examples": {
                  "ListBillResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListBillResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "document_number",
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateBillRequest"
              },
              "examples": {
                "CreateCreateBillRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateBillRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBillResponse"
                },
                "examples": {
                  "CreateBillResponse_Example": {
                    "$ref": "#/components/examples/CreateBillResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bills/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BillResponseWithConnection"
                },
                "examples": {
                  "BillResponseWithConnection_Example": {
                    "$ref": "#/components/examples/BillResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateBillBodyRequest"
              },
              "examples": {
                "CreateUpdateBillBodyRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateBillBodyRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBillResponse"
                },
                "examples": {
                  "CreateBillResponse_Example": {
                    "$ref": "#/components/examples/CreateBillResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "delete": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateDeleteBillResponse"
                },
                "examples": {
                  "CreateDeleteBillResponse_Example": {
                    "$ref": "#/components/examples/CreateDeleteBillResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/bills/:id/attachments": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the underlying entity type.",
            "schema": {
              "$ref": "#/components/schemas/PostAttachmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAttachmentBody"
              },
              "examples": {
                "CreateAttachmentBody_Example": {
                  "$ref": "#/components/examples/CreateAttachmentBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PostAttachmentResponse"
                },
                "examples": {
                  "PostAttachmentResponse_Example": {
                    "$ref": "#/components/examples/PostAttachmentResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": []
      },
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the Rutter Entity.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentsByEntityPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BillAttachmentsResponse"
                },
                "examples": {
                  "BillAttachmentsResponse_Example": {
                    "$ref": "#/components/examples/BillAttachmentsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bills/:id/attachments/:attachmentId/file": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentFilePathParams/properties/id"
            }
          },
          {
            "name": "attachmentId",
            "in": "path",
            "required": true,
            "description": "The platform unique ID of the attachment.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentFilePathParams/properties/attachmentId"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentFileResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bills/attachments": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/access_token"
            }
          },
          {
            "name": "attached_to_id",
            "in": "query",
            "required": false,
            "description": "The ID of the entity that the attachment is attached to.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/attached_to_id"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/limit"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/expand"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAttachmentsResponse"
                },
                "examples": {
                  "ListAttachmentsResponse_Example": {
                    "$ref": "#/components/examples/ListAttachmentsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/bills/attachments/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the attachment.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/cash_flow_statements": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/access_token"
            }
          },
          {
            "name": "start_date",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The first date that you will receive a financial statement for.  This means if you set a start date a year ago, you will receive 13 financial statements, one for each month.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/start_date"
            }
          },
          {
            "name": "end_date",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The last date that you will receive a financial statement for.  If you set a start date of Jan 1 2021 and an end date of Jan 1 2022, you will receive the 13 months between those dates, inclusive.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/end_date"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/expand"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListCashFlowStatementResponseWithConnection"
                },
                "examples": {
                  "ListCashFlowStatementResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListCashFlowStatementResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "TALLY",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "start_date",
          "end_date",
          "last_synced_at"
        ]
      }
    },
    "/accounting/classes": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListClassResponseWithConnection"
                },
                "examples": {
                  "ListClassResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListClassResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      }
    },
    "/accounting/classes/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ClassResponseWithConnection"
                },
                "examples": {
                  "ClassResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ClassResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/company_info": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CompanyInfo_2024_04_30ResponseWithConnection"
                },
                "examples": {
                  "CompanyInfo_2024_04_30ResponseWithConnection_Example": {
                    "$ref": "#/components/examples/CompanyInfo_2024_04_30ResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "FRESHBOOKS",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "last_synced_at"
        ]
      }
    },
    "/accounting/currencies": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListCurrencyResponseWithConnection"
                },
                "examples": {
                  "ListCurrencyResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListCurrencyResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "currency_code",
          "updated_at",
          "created_at",
          "last_synced_at"
        ]
      }
    },
    "/accounting/currencies/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CurrencyResponseWithConnection"
                },
                "examples": {
                  "CurrencyResponseWithConnection_Example": {
                    "$ref": "#/components/examples/CurrencyResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/customers": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/expand"
            }
          },
          {
            "name": "customer_name",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The exact customer name to filter on. Not supported on Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/customer_name"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CustomersParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAccountingCustomerResponseWithConnection"
                },
                "examples": {
                  "ListAccountingCustomerResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListAccountingCustomerResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "customer_name",
          "email",
          "phone",
          "updated_at",
          "created_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateAccountingCustomerRequest"
              },
              "examples": {
                "CreateCreateAccountingCustomerRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateAccountingCustomerRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateAccountingCustomerResponse"
                },
                "examples": {
                  "CreateAccountingCustomerResponse_Example": {
                    "$ref": "#/components/examples/CreateAccountingCustomerResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/customers/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountingCustomerResponseWithConnection"
                },
                "examples": {
                  "AccountingCustomerResponseWithConnection_Example": {
                    "$ref": "#/components/examples/AccountingCustomerResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateAccountingCustomerRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateAccountingCustomerResponse"
                },
                "examples": {
                  "CreateAccountingCustomerResponse_Example": {
                    "$ref": "#/components/examples/CreateAccountingCustomerResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "FRESHBOOKS",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/departments": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListDepartmentResponseWithConnection"
                },
                "examples": {
                  "ListDepartmentResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListDepartmentResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      }
    },
    "/accounting/departments/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentResponseWithConnection"
                },
                "examples": {
                  "DepartmentResponseWithConnection_Example": {
                    "$ref": "#/components/examples/DepartmentResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/expenses": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/expand"
            }
          },
          {
            "name": "expense_type",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The exact expect type to filter on. Defaults to `expense` if not provided.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/expense_type"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "transaction_date_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `transaction_date` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/transaction_date_max"
            }
          },
          {
            "name": "transaction_date_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `transaction_date` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/transaction_date_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListExpensesPaginationParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListExpenseResponseWithConnection"
                },
                "examples": {
                  "ListExpenseResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListExpenseResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "transaction_date",
          "expense_type",
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateExpenseRequest"
              },
              "examples": {
                "CreateCreateExpenseRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateExpenseRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateExpenseResponse"
                },
                "examples": {
                  "CreateExpenseResponse_Example": {
                    "$ref": "#/components/examples/CreateExpenseResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/expenses/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExpenseResponseWithConnection"
                },
                "examples": {
                  "ExpenseResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ExpenseResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateExpenseBodyRequest"
              },
              "examples": {
                "CreateUpdateExpenseBodyRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateExpenseBodyRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateUpdateExpenseResponseResponse"
                },
                "examples": {
                  "CreateUpdateExpenseResponseResponse_Example": {
                    "$ref": "#/components/examples/CreateUpdateExpenseResponseResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "delete": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteExpenseResponse"
                },
                "examples": {
                  "DeleteExpenseResponse_Example": {
                    "$ref": "#/components/examples/DeleteExpenseResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "QUICKBOOKS",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/expenses/:id/attachments": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the underlying entity type.",
            "schema": {
              "$ref": "#/components/schemas/PostAttachmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAttachmentBody"
              },
              "examples": {
                "CreateAttachmentBody_Example": {
                  "$ref": "#/components/examples/CreateAttachmentBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PostAttachmentResponse"
                },
                "examples": {
                  "PostAttachmentResponse_Example": {
                    "$ref": "#/components/examples/PostAttachmentResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      },
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the Rutter Entity.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentsByEntityPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExpenseAttachmentsResponse"
                },
                "examples": {
                  "ExpenseAttachmentsResponse_Example": {
                    "$ref": "#/components/examples/ExpenseAttachmentsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/expenses/:id/attachments/:attachmentId/file": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentFilePathParams/properties/id"
            }
          },
          {
            "name": "attachmentId",
            "in": "path",
            "required": true,
            "description": "The platform unique ID of the attachment.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentFilePathParams/properties/attachmentId"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentFileResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/expenses/attachments": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/access_token"
            }
          },
          {
            "name": "attached_to_id",
            "in": "query",
            "required": false,
            "description": "The ID of the entity that the attachment is attached to.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/attached_to_id"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/limit"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/expand"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAttachmentsResponse"
                },
                "examples": {
                  "ListAttachmentsResponse_Example": {
                    "$ref": "#/components/examples/ListAttachmentsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/expenses/attachments/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the attachment.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/income_statements": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/access_token"
            }
          },
          {
            "name": "start_date",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The first date that you will receive a financial statement for.  This means if you set a start date a year ago, you will receive 13 financial statements, one for each month.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/start_date"
            }
          },
          {
            "name": "end_date",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The last date that you will receive a financial statement for.  If you set a start date of Jan 1 2021 and an end date of Jan 1 2022, you will receive the 13 months between those dates, inclusive.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/end_date"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/expand"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingStatementQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListIncomeStatementResponseWithConnection"
                },
                "examples": {
                  "ListIncomeStatementResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListIncomeStatementResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "TALLY",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "start_date",
          "end_date",
          "last_synced_at"
        ]
      }
    },
    "/accounting/invoice_credit_applications": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateInvoiceCreditApplicationRequest"
              },
              "examples": {
                "CreateCreateInvoiceCreditApplicationRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateInvoiceCreditApplicationRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoiceCreditApplicationResponse"
                },
                "examples": {
                  "CreateInvoiceCreditApplicationResponse_Example": {
                    "$ref": "#/components/examples/CreateInvoiceCreditApplicationResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/invoice_credit_memos": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListInvoiceCreditMemoResponseWithConnection"
                },
                "examples": {
                  "ListInvoiceCreditMemoResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListInvoiceCreditMemoResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "updated_at",
          "created_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateInvoiceCreditMemoRequest"
              },
              "examples": {
                "CreateCreateInvoiceCreditMemoRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateInvoiceCreditMemoRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoiceCreditMemoResponse"
                },
                "examples": {
                  "CreateInvoiceCreditMemoResponse_Example": {
                    "$ref": "#/components/examples/CreateInvoiceCreditMemoResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/invoice_credit_memos/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvoiceCreditMemoResponseWithConnection"
                },
                "examples": {
                  "InvoiceCreditMemoResponseWithConnection_Example": {
                    "$ref": "#/components/examples/InvoiceCreditMemoResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateInvoiceCreditMemoRequest"
              },
              "examples": {
                "CreateUpdateInvoiceCreditMemoRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateInvoiceCreditMemoRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoiceCreditMemoResponse"
                },
                "examples": {
                  "CreateInvoiceCreditMemoResponse_Example": {
                    "$ref": "#/components/examples/CreateInvoiceCreditMemoResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": []
      },
      "delete": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateDeleteInvoiceCreditMemoResponse"
                },
                "examples": {
                  "CreateDeleteInvoiceCreditMemoResponse_Example": {
                    "$ref": "#/components/examples/CreateDeleteInvoiceCreditMemoResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/invoice_payments": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListInvoicePaymentResponseWithConnection"
                },
                "examples": {
                  "ListInvoicePaymentResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListInvoicePaymentResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "updated_at",
          "created_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateInvoicePaymentRequest"
              },
              "examples": {
                "CreateCreateInvoicePaymentRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateInvoicePaymentRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoicePaymentResponse"
                },
                "examples": {
                  "CreateInvoicePaymentResponse_Example": {
                    "$ref": "#/components/examples/CreateInvoicePaymentResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/invoice_payments/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvoicePaymentResponseWithConnection"
                },
                "examples": {
                  "InvoicePaymentResponseWithConnection_Example": {
                    "$ref": "#/components/examples/InvoicePaymentResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateInvoicePaymentRequest"
              },
              "examples": {
                "CreateUpdateInvoicePaymentRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateInvoicePaymentRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoicePaymentResponse"
                },
                "examples": {
                  "CreateInvoicePaymentResponse_Example": {
                    "$ref": "#/components/examples/CreateInvoicePaymentResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      },
      "delete": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateDeleteInvoicePaymentResponse"
                },
                "examples": {
                  "CreateDeleteInvoicePaymentResponse_Example": {
                    "$ref": "#/components/examples/CreateDeleteInvoicePaymentResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/invoices": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/expand"
            }
          },
          {
            "name": "document_number",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The exact document number to filter on. Not supported on Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/document_number"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/InvoicesParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListInvoiceResponseWithConnection"
                },
                "examples": {
                  "ListInvoiceResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListInvoiceResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "document_number",
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateInvoiceRequest"
              },
              "examples": {
                "CreateCreateInvoiceRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateInvoiceRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoiceResponse"
                },
                "examples": {
                  "CreateInvoiceResponse_Example": {
                    "$ref": "#/components/examples/CreateInvoiceResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/invoices/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvoiceResponseWithConnection"
                },
                "examples": {
                  "InvoiceResponseWithConnection_Example": {
                    "$ref": "#/components/examples/InvoiceResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateInvoiceRequest"
              },
              "examples": {
                "CreateUpdateInvoiceRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateInvoiceRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoiceResponse"
                },
                "examples": {
                  "CreateInvoiceResponse_Example": {
                    "$ref": "#/components/examples/CreateInvoiceResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "FRESHBOOKS",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "delete": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateDeleteInvoiceResponse"
                },
                "examples": {
                  "CreateDeleteInvoiceResponse_Example": {
                    "$ref": "#/components/examples/CreateDeleteInvoiceResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "QUICKBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/invoices/:id/attachments": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the underlying entity type.",
            "schema": {
              "$ref": "#/components/schemas/PostAttachmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAttachmentBody"
              },
              "examples": {
                "CreateAttachmentBody_Example": {
                  "$ref": "#/components/examples/CreateAttachmentBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PostAttachmentResponse"
                },
                "examples": {
                  "PostAttachmentResponse_Example": {
                    "$ref": "#/components/examples/PostAttachmentResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": []
      },
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the Rutter Entity.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentsByEntityPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvoiceAttachmentsResponse"
                },
                "examples": {
                  "InvoiceAttachmentsResponse_Example": {
                    "$ref": "#/components/examples/InvoiceAttachmentsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/invoices/:id/attachments/:attachmentId/file": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentFilePathParams/properties/id"
            }
          },
          {
            "name": "attachmentId",
            "in": "path",
            "required": true,
            "description": "The platform unique ID of the attachment.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentFilePathParams/properties/attachmentId"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentFileResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "NETSUITE",
          "QUICKBOOKS",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/invoices/attachments": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/access_token"
            }
          },
          {
            "name": "attached_to_id",
            "in": "query",
            "required": false,
            "description": "The ID of the entity that the attachment is attached to.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/attached_to_id"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/limit"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/expand"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAttachmentsResponse"
                },
                "examples": {
                  "ListAttachmentsResponse_Example": {
                    "$ref": "#/components/examples/ListAttachmentsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/invoices/attachments/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the attachment.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/items": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "name",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The exact name to filter on. Not supported on Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/name"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListItemsParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAccountingItemResponseWithConnection"
                },
                "examples": {
                  "ListAccountingItemResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListAccountingItemResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "name",
          "updated_at",
          "created_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateItemRequest"
              },
              "examples": {
                "CreateCreateItemRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateItemRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateAccountingItemResponse"
                },
                "examples": {
                  "CreateAccountingItemResponse_Example": {
                    "$ref": "#/components/examples/CreateAccountingItemResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/items/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountingItemResponseWithConnection"
                },
                "examples": {
                  "AccountingItemResponseWithConnection_Example": {
                    "$ref": "#/components/examples/AccountingItemResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateItemRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateAccountingItemResponse"
                },
                "examples": {
                  "CreateAccountingItemResponse_Example": {
                    "$ref": "#/components/examples/CreateAccountingItemResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/journal_entries": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListJournalEntryResponseWithConnection"
                },
                "examples": {
                  "ListJournalEntryResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListJournalEntryResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FRESHBOOKS",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateJournalEntryRequest"
              },
              "examples": {
                "CreateCreateJournalEntryRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateJournalEntryRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateJournalEntryResponse"
                },
                "examples": {
                  "CreateJournalEntryResponse_Example": {
                    "$ref": "#/components/examples/CreateJournalEntryResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FRESHBOOKS",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/journal_entries/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JournalEntryResponseWithConnection"
                },
                "examples": {
                  "JournalEntryResponseWithConnection_Example": {
                    "$ref": "#/components/examples/JournalEntryResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FRESHBOOKS",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/journal_entries/:id/attachments": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the underlying entity type.",
            "schema": {
              "$ref": "#/components/schemas/PostAttachmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAttachmentBody"
              },
              "examples": {
                "CreateAttachmentBody_Example": {
                  "$ref": "#/components/examples/CreateAttachmentBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PostAttachmentResponse"
                },
                "examples": {
                  "PostAttachmentResponse_Example": {
                    "$ref": "#/components/examples/PostAttachmentResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO"
        ],
        "x-sandbox-supported-platforms": []
      },
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the Rutter Entity.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentsByEntityPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JournalEntryAttachmentsResponse"
                },
                "examples": {
                  "JournalEntryAttachmentsResponse_Example": {
                    "$ref": "#/components/examples/JournalEntryAttachmentsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/journal_entries/:id/attachments/:attachmentId/file": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentFilePathParams/properties/id"
            }
          },
          {
            "name": "attachmentId",
            "in": "path",
            "required": true,
            "description": "The platform unique ID of the attachment.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentFilePathParams/properties/attachmentId"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentFileResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/journal_entries/attachments": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/access_token"
            }
          },
          {
            "name": "attached_to_id",
            "in": "query",
            "required": false,
            "description": "The ID of the entity that the attachment is attached to.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/attached_to_id"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/limit"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/expand"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListAttachmentsParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAttachmentsResponse"
                },
                "examples": {
                  "ListAttachmentsResponse_Example": {
                    "$ref": "#/components/examples/ListAttachmentsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/journal_entries/attachments/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the attachment.",
            "schema": {
              "$ref": "#/components/schemas/GetAttachmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/locations": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListLocationResponseWithConnection"
                },
                "examples": {
                  "ListLocationResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListLocationResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      }
    },
    "/accounting/locations/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationResponseWithConnection"
                },
                "examples": {
                  "LocationResponseWithConnection_Example": {
                    "$ref": "#/components/examples/LocationResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "SAGE_INTACCT"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ]
      }
    },
    "/accounting/metrics/:metricName": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "metricName",
            "in": "path",
            "required": true,
            "description": "The path of the accounting metric.",
            "schema": {
              "$ref": "#/components/schemas/AccountingMetricPathParam/properties/metricName"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AggregateAccountingMetricResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/payment_methods": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListPaymentMethodResponseWithConnection"
                },
                "examples": {
                  "ListPaymentMethodResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListPaymentMethodResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      }
    },
    "/accounting/payment_methods/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentMethodResponseWithConnection"
                },
                "examples": {
                  "PaymentMethodResponseWithConnection_Example": {
                    "$ref": "#/components/examples/PaymentMethodResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ]
      }
    },
    "/accounting/payment_terms": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListPaymentTermResponseWithConnection"
                },
                "examples": {
                  "ListPaymentTermResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListPaymentTermResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      }
    },
    "/accounting/payment_terms/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentTermResponseWithConnection"
                },
                "examples": {
                  "PaymentTermResponseWithConnection_Example": {
                    "$ref": "#/components/examples/PaymentTermResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/purchase_orders": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListPurchaseOrder_2023_03_14ResponseWithConnection"
                },
                "examples": {
                  "ListPurchaseOrder_2023_03_14ResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListPurchaseOrder_2023_03_14ResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreatePurchaseOrderRequest"
              },
              "examples": {
                "CreateCreatePurchaseOrderRequest_Example": {
                  "$ref": "#/components/examples/CreateCreatePurchaseOrderRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatePurchaseOrderResponse"
                },
                "examples": {
                  "CreatePurchaseOrderResponse_Example": {
                    "$ref": "#/components/examples/CreatePurchaseOrderResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/purchase_orders/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PurchaseOrder_2023_03_14ResponseWithConnection"
                },
                "examples": {
                  "PurchaseOrder_2023_03_14ResponseWithConnection_Example": {
                    "$ref": "#/components/examples/PurchaseOrder_2023_03_14ResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "XERO"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdatePurchaseOrderRequest"
              },
              "examples": {
                "CreateUpdatePurchaseOrderRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdatePurchaseOrderRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatePurchaseOrderResponse"
                },
                "examples": {
                  "CreatePurchaseOrderResponse_Example": {
                    "$ref": "#/components/examples/CreatePurchaseOrderResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/reports": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ReportQuery/properties/access_token"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/ReportQuery/properties/filter"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ReportQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FinancialReport"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "TALLY",
          "WAVE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/sales_orders": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListSalesOrderResponseWithConnection"
                },
                "examples": {
                  "ListSalesOrderResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListSalesOrderResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateSalesOrderRequest"
              },
              "examples": {
                "CreateCreateSalesOrderRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateSalesOrderRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateSalesOrderResponse"
                },
                "examples": {
                  "CreateSalesOrderResponse_Example": {
                    "$ref": "#/components/examples/CreateSalesOrderResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/sales_orders/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SalesOrderResponseWithConnection"
                },
                "examples": {
                  "SalesOrderResponseWithConnection_Example": {
                    "$ref": "#/components/examples/SalesOrderResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateSalesOrderRequest"
              },
              "examples": {
                "CreateUpdateSalesOrderRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateSalesOrderRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateSalesOrderResponse"
                },
                "examples": {
                  "CreateSalesOrderResponse_Example": {
                    "$ref": "#/components/examples/CreateSalesOrderResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/accounting/subsidiaries": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListSubsidiaryResponseWithConnection"
                },
                "examples": {
                  "ListSubsidiaryResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListSubsidiaryResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ],
        "x-indexed-fields": [
          "updated_at",
          "created_at",
          "last_synced_at"
        ]
      }
    },
    "/accounting/subsidiaries/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubsidiaryResponseWithConnection"
                },
                "examples": {
                  "SubsidiaryResponseWithConnection_Example": {
                    "$ref": "#/components/examples/SubsidiaryResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE"
        ]
      }
    },
    "/accounting/tax_rates": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/AccountingListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListTaxRateResponseWithConnection"
                },
                "examples": {
                  "ListTaxRateResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListTaxRateResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "updated_at",
          "created_at",
          "last_synced_at"
        ]
      }
    },
    "/accounting/tax_rates/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaxRateResponseWithConnection"
                },
                "examples": {
                  "TaxRateResponseWithConnection_Example": {
                    "$ref": "#/components/examples/TaxRateResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/vendors": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/limit"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/filter"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/updated_at_min"
            }
          },
          {
            "name": "vendor_name",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. The exact vendor name to filter on. Not supported on Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/vendor_name"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/VendorsParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListVendorResponseWithConnection"
                },
                "examples": {
                  "ListVendorResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListVendorResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ],
        "x-indexed-fields": [
          "vendor_name",
          "created_at",
          "updated_at",
          "last_synced_at"
        ]
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCreateVendorRequest"
              },
              "examples": {
                "CreateCreateVendorRequest_Example": {
                  "$ref": "#/components/examples/CreateCreateVendorRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateVendorResponse"
                },
                "examples": {
                  "CreateVendorResponse_Example": {
                    "$ref": "#/components/examples/CreateVendorResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/accounting/vendors/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/access_token"
            }
          },
          {
            "name": "id_type",
            "in": "query",
            "required": false,
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/id_type"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithIdType/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VendorResponseWithConnection"
                },
                "examples": {
                  "VendorResponseWithConnection_Example": {
                    "$ref": "#/components/examples/VendorResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "DYNAMICS365",
          "EXACTONLINE",
          "FREEAGENT",
          "FRESHBOOKS",
          "KASHFLOW",
          "MONEYBIRD",
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "SAGE200CLOUD",
          "SAGE_50",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateVendorBodyRequest"
              },
              "examples": {
                "CreateUpdateVendorBodyRequest_Example": {
                  "$ref": "#/components/examples/CreateUpdateVendorBodyRequest_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateUpdateVendorResponseResponse"
                },
                "examples": {
                  "CreateUpdateVendorResponseResponse_Example": {
                    "$ref": "#/components/examples/CreateUpdateVendorResponseResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/ads/accounts": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/limit"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Currently supports the `updated_at` and `last_synced_at` fields. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAdsAccountResponseWithConnection"
                },
                "examples": {
                  "ListAdsAccountResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListAdsAccountResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "FACEBOOK",
          "GOOGLE",
          "TIKTOK"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/ads/campaigns": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/limit"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Currently supports the `updated_at` and `last_synced_at` fields. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListCampaignResponseWithConnection"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "FACEBOOK",
          "GOOGLE",
          "TIKTOK"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/ads/campaigns/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/IdPathParam/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CampaignResponseWithConnection"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "FACEBOOK",
          "GOOGLE",
          "TIKTOK"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/ads/campaigns/dailies": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/limit"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Currently supports the `updated_at` and `last_synced_at` fields. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListCampaignDailyResponseWithConnection"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "FACEBOOK",
          "GOOGLE",
          "TIKTOK"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/ads/invoices": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/limit"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Currently supports the `updated_at` and `last_synced_at` fields. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/sort"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAdsInvoiceResponseWithConnection"
                },
                "examples": {
                  "ListAdsInvoiceResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListAdsInvoiceResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "FACEBOOK",
          "GOOGLE",
          "TIKTOK"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/balance": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBalanceResponse"
                },
                "examples": {
                  "GetBalanceResponse_Example": {
                    "$ref": "#/components/examples/GetBalanceResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "MOLLIE",
          "PAYPAL",
          "SHOPIFY",
          "STRIPE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/commerce/metrics/:metricName": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "metricName",
            "in": "path",
            "required": true,
            "description": "The path of the commerce metric.",
            "schema": {
              "$ref": "#/components/schemas/CommerceMetricPathParam/properties/metricName"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AggregateCommerceMetricResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "EBAY",
          "LAZADA",
          "MAGENTO",
          "SHOPEE",
          "SHOPIFY",
          "SQUARE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/connections": {
      "get": {
        "summary": "",
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListConnectionsResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "*"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/connections/:id": {
      "delete": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter connection ID to delete.",
            "schema": {
              "$ref": "#/components/schemas/DeleteConnectionPathParams/properties/id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteConnectionResponse"
                },
                "examples": {
                  "DeleteConnectionResponse_Example": {
                    "$ref": "#/components/examples/DeleteConnectionResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "*"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/connections/access_token": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAccessTokenConnectionResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "CHARGEBEE",
          "CHARGIFY",
          "DYNAMICS365",
          "EBAY",
          "ETSY",
          "FRESHBOOKS",
          "LAZADA",
          "MAGENTO",
          "MERCADOLIBRE",
          "NETSUITE",
          "PAYPAL",
          "PRESTASHOP",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "RECURLY",
          "SAGE_BUSINESS_CLOUD",
          "SAGE_INTACCT",
          "SHOPEE",
          "SHOPER",
          "SHOPIFY",
          "SHOPWARE",
          "SQUARE",
          "SQUARESPACE",
          "STRIPE",
          "WALMART",
          "WAVE",
          "WIX",
          "WOO_COMMERCE",
          "XERO",
          "ZOHOBOOKS"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/connections/backfill": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateConnectionBackfillBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateConnectionBackfillResponse"
                },
                "examples": {
                  "CreateConnectionBackfillResponse_Example": {
                    "$ref": "#/components/examples/CreateConnectionBackfillResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "*"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/connections/create": {
      "post": {
        "summary": "",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateConnectionBody"
              },
              "examples": {
                "CreateConnectionBody_Example": {
                  "$ref": "#/components/examples/CreateConnectionBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateConnectionResponse"
                },
                "examples": {
                  "CreateConnectionResponse_Example": {
                    "$ref": "#/components/examples/CreateConnectionResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "*"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/connections/incremental_sync": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateConnectionIncrementalSyncResponse"
                },
                "examples": {
                  "CreateConnectionIncrementalSyncResponse_Example": {
                    "$ref": "#/components/examples/CreateConnectionIncrementalSyncResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "*"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/connections/status": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetConnectionStatusResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "*"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/customer_groups": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomerGroupsQuery/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomerGroupsQuery/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomerGroupsQuery/properties/limit"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomerGroupsQuery/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomerGroupsQuery/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomerGroupsQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListCustomerGroupsResponseWithConnection"
                },
                "examples": {
                  "ListCustomerGroupsResponseWithConnection_Example": {
                    "$ref": "#/components/examples/ListCustomerGroupsResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "SHOPIFY"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/customer_groups/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCustomerGroupResponseWithConnection"
                },
                "examples": {
                  "GetCustomerGroupResponseWithConnection_Example": {
                    "$ref": "#/components/examples/GetCustomerGroupResponseWithConnection_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "SHOPIFY"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/customers": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomersQuery/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomersQuery/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomersQuery/properties/limit"
            }
          },
          {
            "name": "email",
            "in": "query",
            "required": false,
            "description": "An email to filter on.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomersQuery/properties/email"
            }
          },
          {
            "name": "phone",
            "in": "query",
            "required": false,
            "description": "A phone number formatted using only numerics to filter on.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomersQuery/properties/phone"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomersQuery/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomersQuery/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListCustomersQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListCustomersResponse"
                },
                "examples": {
                  "ListCustomersResponse_Example": {
                    "$ref": "#/components/examples/ListCustomersResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "CHARGEBEE",
          "CHARGIFY",
          "CLOVER",
          "MAGENTO",
          "MERCADOLIBRE",
          "PRESTASHOP",
          "SHOPEE",
          "SHOPIFY",
          "SQUARE",
          "SQUARESPACE",
          "STRIPE",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/customers/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParams/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCustomerResponse"
                },
                "examples": {
                  "GetCustomerResponse_Example": {
                    "$ref": "#/components/examples/GetCustomerResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "CHARGIFY",
          "MAGENTO",
          "MERCADOLIBRE",
          "PRESTASHOP",
          "SHOPIFY",
          "SQUARE",
          "SQUARESPACE",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/events": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListEventsParams/properties/access_token"
            }
          },
          {
            "name": "type",
            "in": "query",
            "required": true,
            "description": "The type of event to list.",
            "schema": {
              "$ref": "#/components/schemas/ListEventsParams/properties/type"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "The cursor to use for pagination. Use the value of `next_cursor` provided in a previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListEventsParams/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "The number of entities to return. Defaults to 500.",
            "schema": {
              "$ref": "#/components/schemas/ListEventsParams/properties/limit"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Optionally, include raw external platform data when fetching data.",
            "schema": {
              "$ref": "#/components/schemas/ListEventsParams/properties/expand"
            }
          },
          {
            "name": "last_synced_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListEventsParams/properties/last_synced_at_min"
            }
          },
          {
            "name": "resources",
            "in": "query",
            "required": false,
            "description": "Comma separated list of resources to query for. If omitted, all resources will be returned. A resource can be one of the following: `ACCOUNT`, `BANK_DEPOSIT`, `BANK_TRANSFER`, `CLASS`, `COMPANY_INFO`, `CURRENCIES`, `DEPARTMENT`, `ITEMS`, `JOURNAL_ENTRY`, `LOCATION`, `PAYMENT_TERM`, `SUBSIDIARY`, `TAX_RATES`, `ACCOUNTING_CUSTOMER`, `INVOICE`, `INVOICE_CREDIT_MEMO`, `INVOICE_PAYMENT`, `PAYMENT_METHOD`, `SALES_ORDER`, `BILL`, `BILL_CREDIT_MEMO`, `BILL_PAYMENT`, `PURCHASE_ORDER`, `VENDOR`, `EXPENSE`, `BANK_FEED_ACCOUNT`, `BANK_FEED_TRANSACTION`, `BALANCE_SHEET`, `CASH_FLOW`, `INCOME_STATEMENT`",
            "schema": {
              "$ref": "#/components/schemas/ListEventsParams/properties/resources"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListEventResponse"
                },
                "examples": {
                  "ListEventResponse_Example": {
                    "$ref": "#/components/examples/ListEventResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "*"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/item/public_token/exchange": {
      "post": {
        "summary": "",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExchangeTokenBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExchangeTokenResponse"
                },
                "examples": {
                  "ExchangeTokenResponse_Example": {
                    "$ref": "#/components/examples/ExchangeTokenResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "*"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/jobs/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The ID of the job.",
            "schema": {
              "$ref": "#/components/schemas/GetAsyncJobPathParams/properties/id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AsynchronousJob"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "*"
        ],
        "x-sandbox-supported-platforms": [
          "NETSUITE",
          "QUICKBOOKS"
        ]
      }
    },
    "/orders": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/limit"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Optionally, include transaction information when fetching orders.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/expand"
            }
          },
          {
            "name": "created_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `created_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/created_at_max"
            }
          },
          {
            "name": "created_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `created_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/created_at_min"
            }
          },
          {
            "name": "fulfillment_status",
            "in": "query",
            "required": false,
            "description": "Optionally filter orders by their `fulfillment_status`. Supported for Squarespace, BigCommerce, Magento, Square, Shopify, Wix, Amazon, Etsy, PrestaShop, eBay, Lazada.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/fulfillment_status"
            }
          },
          {
            "name": "order_number",
            "in": "query",
            "required": false,
            "description": "Optionally filter by order number. Supported for Squarespace, BigCommerce, Magento, WooCommerce, Square, Wix, Amazon, PrestaShop, eBay.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/order_number"
            }
          },
          {
            "name": "payment_status",
            "in": "query",
            "required": false,
            "description": "Optionally filters orders by `payment_status`. Supported for Squarespace, BigCommerce, Magento, Square, Shopify, Wix, Amazon, Etsy, PrestaShop, eBay, Lazada.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/payment_status"
            }
          },
          {
            "name": "phone",
            "in": "query",
            "required": false,
            "description": "Optionally filter by phone number. Format using only numerics. Supported for Magento, WooCommerce, Shopify, Wix.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/phone"
            }
          },
          {
            "name": "properties",
            "in": "query",
            "required": false,
            "description": "Optionally return only certain fields specified by a comma-separated list of field names. E.g. `id,status`",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/properties"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListOrdersQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The `/orders` endpoint allows developers to receive user-authorized order data for a merchant's store.\n  Due to the potentially large number of orders associated with a connection, results are paginated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListOrdersResponse"
                },
                "examples": {
                  "ListOrdersResponse_Example": {
                    "$ref": "#/components/examples/ListOrdersResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "ALIBABA",
          "AMAZON",
          "BIG_COMMERCE",
          "EBAY",
          "ETSY",
          "GUMROAD",
          "LAZADA",
          "MAGENTO",
          "MERCADOLIBRE",
          "PRESTASHOP",
          "SHOPEE",
          "SHOPER",
          "SHOPIFY",
          "SHOPLAZZA",
          "SHOPLINE",
          "SQUARE",
          "SQUARESPACE",
          "WALMART",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOrderBody"
              },
              "examples": {
                "CreateOrderBody_Example": {
                  "$ref": "#/components/examples/CreateOrderBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Companies that use Rutter can programmatically create orders on their storeowner's shops. \n    To do this, make a POST request to our orders endpoint.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateOrderResponse"
                },
                "examples": {
                  "CreateOrderResponse_Example": {
                    "$ref": "#/components/examples/CreateOrderResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "BIG_COMMERCE",
          "MAGENTO",
          "SHOPIFY",
          "SQUARESPACE",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/orders/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/GetOrderQuery/properties/access_token"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Optionally, include transaction information when fetching orders.",
            "schema": {
              "$ref": "#/components/schemas/GetOrderQuery/properties/expand"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/GetOrderQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The `/orders/{id}` endpoint allows developers to receive user-authorized order data for a specific order in a merchant's store.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetOrderResponse"
                },
                "examples": {
                  "GetOrderResponse_Example": {
                    "$ref": "#/components/examples/GetOrderResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "ALIBABA",
          "AMAZON",
          "BIG_COMMERCE",
          "EBAY",
          "ETSY",
          "GUMROAD",
          "LAZADA",
          "MAGENTO",
          "MERCADOLIBRE",
          "PRESTASHOP",
          "SHOPEE",
          "SHOPER",
          "SHOPIFY",
          "SHOPLAZZA",
          "SHOPLINE",
          "SQUARE",
          "SQUARESPACE",
          "WALMART",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOrderBody"
              },
              "examples": {
                "UpdateOrderBody_Example": {
                  "$ref": "#/components/examples/UpdateOrderBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The `/orders/{id}` endpoint allows developers to receive user-authorized order data for a specific order in a merchant's store.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetOrderResponse"
                },
                "examples": {
                  "GetOrderResponse_Example": {
                    "$ref": "#/components/examples/GetOrderResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "SHOPIFY",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/orders/:id/fulfillments": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter ID of the order to fulfill.",
            "schema": {
              "$ref": "#/components/schemas/CreateFulfillmentPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOrderFulfillmentBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateOrderFulfillmentResponse"
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "ETSY",
          "MAGENTO",
          "PRESTASHOP",
          "SHOPIFY",
          "SQUARE",
          "SQUARESPACE",
          "WALMART",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/payouts": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListPayoutsQuery/properties/access_token"
            }
          },
          {
            "name": "arrival_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `arrival_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListPayoutsQuery/properties/arrival_at_max"
            }
          },
          {
            "name": "arrival_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `arrival_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListPayoutsQuery/properties/arrival_at_min"
            }
          },
          {
            "name": "created_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `created_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListPayoutsQuery/properties/created_at_max"
            }
          },
          {
            "name": "created_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `created_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListPayoutsQuery/properties/created_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListPayoutsQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListPayoutsResponse"
                },
                "examples": {
                  "ListPayoutsResponse_Example": {
                    "$ref": "#/components/examples/ListPayoutsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "CLOVER",
          "EBAY",
          "MOLLIE",
          "PAYPAL",
          "PRESTASHOP",
          "SHOPIFY",
          "SQUARE",
          "STRIPE",
          "WALMART",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/products": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListProductsQuery/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListProductsQuery/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListProductsQuery/properties/limit"
            }
          },
          {
            "name": "created_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `created_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListProductsQuery/properties/created_at_max"
            }
          },
          {
            "name": "created_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `created_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListProductsQuery/properties/created_at_min"
            }
          },
          {
            "name": "name",
            "in": "query",
            "required": false,
            "description": "Filter products by names similar to the input.",
            "schema": {
              "$ref": "#/components/schemas/ListProductsQuery/properties/name"
            }
          },
          {
            "name": "status",
            "in": "query",
            "required": false,
            "description": "Show products with certain product status.",
            "schema": {
              "$ref": "#/components/schemas/ListProductsQuery/properties/status"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListProductsQuery/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListProductsQuery/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListProductsQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListProductsResponse"
                },
                "examples": {
                  "ListProductsResponse_Example": {
                    "$ref": "#/components/examples/ListProductsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "EBAY",
          "ETSY",
          "LAZADA",
          "MAGENTO",
          "MERCADOLIBRE",
          "PRESTASHOP",
          "SHOPIFY",
          "SQUARE",
          "SQUARESPACE",
          "WALMART",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      },
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateProductBody"
              },
              "examples": {
                "CreateProductBody_Example": {
                  "$ref": "#/components/examples/CreateProductBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateProductResponse"
                },
                "examples": {
                  "CreateProductResponse_Example": {
                    "$ref": "#/components/examples/CreateProductResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "ETSY",
          "MAGENTO",
          "PRESTASHOP",
          "SHOPIFY",
          "SQUARE",
          "SQUARESPACE",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/products/:id": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/GetProductsQuery/properties/access_token"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/GetProductsQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetProductResponse"
                },
                "examples": {
                  "GetProductResponse_Example": {
                    "$ref": "#/components/examples/GetProductResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "EBAY",
          "ETSY",
          "MAGENTO",
          "MERCADOLIBRE",
          "PRESTASHOP",
          "SHOPIFY",
          "SQUARE",
          "SQUARESPACE",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      },
      "delete": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteProductResponse"
                },
                "examples": {
                  "DeleteProductResponse_Example": {
                    "$ref": "#/components/examples/DeleteProductResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "BIG_COMMERCE",
          "ETSY",
          "MAGENTO",
          "PRESTASHOP",
          "SHOPIFY",
          "SQUARE",
          "SQUARESPACE",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      },
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the object.",
            "schema": {
              "$ref": "#/components/schemas/RutterIdPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProductBody"
              },
              "examples": {
                "UpdateProductBody_Example": {
                  "$ref": "#/components/examples/UpdateProductBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchProductResponse"
                },
                "examples": {
                  "PatchProductResponse_Example": {
                    "$ref": "#/components/examples/PatchProductResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "BIG_COMMERCE",
          "ETSY",
          "MAGENTO",
          "PRESTASHOP",
          "SHOPIFY",
          "SQUARE",
          "SQUARESPACE",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/products/:id/variants": {
      "post": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateVariantBody"
              },
              "examples": {
                "CreateVariantBody_Example": {
                  "$ref": "#/components/examples/CreateVariantBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VariantResponse"
                },
                "examples": {
                  "VariantResponse_Example": {
                    "$ref": "#/components/examples/VariantResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "BIG_COMMERCE",
          "ETSY",
          "MAGENTO",
          "PRESTASHOP",
          "SHOPIFY",
          "SQUARE",
          "SQUARESPACE",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/products/:id/variants/:id": {
      "delete": {
        "summary": "",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the variant.",
            "schema": {
              "$ref": "#/components/schemas/DeleteVariantPathParams/properties/id"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteVariantResponse"
                },
                "examples": {
                  "DeleteVariantResponse_Example": {
                    "$ref": "#/components/examples/DeleteVariantResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "BIG_COMMERCE",
          "ETSY",
          "SHOPIFY",
          "SQUARESPACE",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/products/:id/variants/:variantId": {
      "patch": {
        "summary": "",
        "parameters": [
          {
            "name": "variantId",
            "in": "path",
            "required": true,
            "description": "The Rutter generated unique ID of the variant.",
            "schema": {
              "$ref": "#/components/schemas/UpdateVariantPathParams/properties/variantId"
            }
          },
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/AccessToken/properties/access_token"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateVariantBody"
              },
              "examples": {
                "UpdateVariantBody_Example": {
                  "$ref": "#/components/examples/UpdateVariantBody_Example"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VariantResponse"
                },
                "examples": {
                  "VariantResponse_Example": {
                    "$ref": "#/components/examples/VariantResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "BIG_COMMERCE",
          "ETSY",
          "MAGENTO",
          "PRESTASHOP",
          "SHOPIFY",
          "SQUARE",
          "SQUARESPACE",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/products/categories": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListProductCategoriesQuery/properties/access_token"
            }
          },
          {
            "name": "id",
            "in": "query",
            "required": false,
            "description": "Only fetch a specific product category id.",
            "schema": {
              "$ref": "#/components/schemas/ListProductCategoriesQuery/properties/id"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListProductCategoriesQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListProductCategoriesResponse"
                },
                "examples": {
                  "ListProductCategoriesResponse_Example": {
                    "$ref": "#/components/examples/ListProductCategoriesResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "ETSY",
          "MAGENTO",
          "SHOPIFY"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/store": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithExpand/properties/access_token"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "required": false,
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object).",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithExpand/properties/expand"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/CommonGetParamsWithExpand/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetStoreResponse"
                },
                "examples": {
                  "GetStoreResponse_Example": {
                    "$ref": "#/components/examples/GetStoreResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "BIG_COMMERCE",
          "EBAY",
          "ETSY",
          "LAZADA",
          "MAGENTO",
          "MERCADOLIBRE",
          "PRESTASHOP",
          "SHOPIFY",
          "SHOPLAZZA",
          "SHOPLINE",
          "SQUARE",
          "SQUARESPACE",
          "STRIPE",
          "WALMART",
          "WIX",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/subscriptions": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListSubscriptionsQuery/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListSubscriptionsQuery/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListSubscriptionsQuery/properties/limit"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListSubscriptionsQuery/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListSubscriptionsQuery/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListSubscriptionsQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListSubscriptionsResponse"
                },
                "examples": {
                  "ListSubscriptionsResponse_Example": {
                    "$ref": "#/components/examples/ListSubscriptionsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "CHARGEBEE",
          "CHARGIFY",
          "RECURLY",
          "STRIPE"
        ],
        "x-sandbox-supported-platforms": []
      }
    },
    "/transactions": {
      "get": {
        "summary": "",
        "parameters": [
          {
            "name": "access_token",
            "in": "query",
            "required": true,
            "description": "The access token of the connection.",
            "schema": {
              "$ref": "#/components/schemas/ListTransactionsQuery/properties/access_token"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.",
            "schema": {
              "$ref": "#/components/schemas/ListTransactionsQuery/properties/cursor"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Used to limit the number of returned objects. Defaults to 50.",
            "schema": {
              "$ref": "#/components/schemas/ListTransactionsQuery/properties/limit"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/ListTransactionsQuery/properties/sort"
            }
          },
          {
            "name": "created_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `created_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListTransactionsQuery/properties/created_at_max"
            }
          },
          {
            "name": "created_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `created_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListTransactionsQuery/properties/created_at_min"
            }
          },
          {
            "name": "updated_at_max",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListTransactionsQuery/properties/updated_at_max"
            }
          },
          {
            "name": "updated_at_min",
            "in": "query",
            "required": false,
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.",
            "schema": {
              "$ref": "#/components/schemas/ListTransactionsQuery/properties/updated_at_min"
            }
          },
          {
            "name": "force_fetch",
            "in": "query",
            "required": false,
            "description": "Used to force a response even if the underlying connection has not finished its initial sync.",
            "schema": {
              "$ref": "#/components/schemas/ListTransactionsQuery/properties/force_fetch"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListTransactionsResponse"
                },
                "examples": {
                  "ListTransactionsResponse_Example": {
                    "$ref": "#/components/examples/ListTransactionsResponse_Example"
                  }
                }
              }
            }
          }
        },
        "x-supported-platforms": [
          "AMAZON",
          "CHARGEBEE",
          "CHARGIFY",
          "CLOVER",
          "EBAY",
          "ETSY",
          "LAZADA",
          "MAGENTO",
          "MERCADOLIBRE",
          "PAYPAL",
          "PRESTASHOP",
          "RECHARGE",
          "SHOPIFY",
          "SQUARE",
          "STRIPE",
          "WALMART",
          "WOO_COMMERCE"
        ],
        "x-sandbox-supported-platforms": []
      }
    }
  },
  "components": {
    "schemas": {
      "AccessToken": {
        "type": "object",
        "properties": {
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "CreateEntityWithCustomFieldsPage": {
        "type": "object",
        "properties": {
          "other_entity_fields": {
            "type": "string",
            "description": "Other fields for this entity."
          },
          "custom_fields": {
            "type": "object",
            "properties": {
              "custom_field_key": {
                "type": "string",
                "description": "The value for this entity top-level custom field that should match the type specified on the structured schema of this entity."
              }
            },
            "additionalProperties": false,
            "description": "Custom fields on the entity. Note: for field type 'select', please use the values from options presented through 'GET /accounting/:entityType/custom_fields' endpoint. For field type 'boolean', please pass in a boolean value."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "other_line_item_fields": {
                  "type": "string",
                  "description": "Other fields for this entity line items."
                },
                "custom_fields": {
                  "type": "object",
                  "properties": {
                    "line_item_custom_field_key": {
                      "type": "string",
                      "description": "The value for this line item custom field that should match the type specified on the structured schema of this entity."
                    }
                  },
                  "additionalProperties": false,
                  "description": "Custom fields on the entity. Note: for field type 'select', please use the values from options presented through 'GET /accounting/:entityType/custom_fields' endpoint. For field type 'boolean', please pass in a boolean value."
                }
              },
              "required": [
                "other_line_item_fields"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "other_entity_fields",
          "line_items"
        ],
        "examples": [
          {
            "CreateEntityWithCustomFieldsPage_Example": {
              "$ref": "#/components/examples/CreateEntityWithCustomFieldsPage_Example"
            }
          }
        ]
      },
      "CreateEntityWithCustomFieldsPageResponse": {
        "type": "object",
        "properties": {
          "other_entity_fields": {
            "type": "string",
            "description": "Other fields for this entity."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "other_line_item_fields": {
                  "type": "string",
                  "description": "Other fields for this entity line items."
                }
              },
              "required": [
                "other_line_item_fields"
              ],
              "additionalProperties": false
            }
          },
          "platform_data": {
            "type": "object",
            "properties": {
              "custom_field_key": {
                "type": "string",
                "description": "The value for this entity top-level custom field that should match the type specified on the structured schema of this entity."
              },
              "other_platform_fields": {
                "type": "string",
                "description": "Platform fields for this entity."
              },
              "sublist_key": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "line_item_custom_field_key": {
                      "type": "string",
                      "description": "The value for this entity line item custom field that should match the type specified on the structured schema of this entity."
                    },
                    "other_sublist_fields": {
                      "type": "string",
                      "description": "Sublist fields for this entity."
                    }
                  },
                  "required": [
                    "line_item_custom_field_key",
                    "other_sublist_fields"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "custom_field_key",
              "other_platform_fields",
              "sublist_key"
            ],
            "additionalProperties": false,
            "description": "Platform data for this entity. You can get this on any endpoint by using the `platform_data=true` query parameter."
          }
        },
        "required": [
          "other_entity_fields",
          "line_items",
          "platform_data"
        ],
        "examples": [
          {
            "CreateEntityWithCustomFieldsPageResponse_Example": {
              "$ref": "#/components/examples/CreateEntityWithCustomFieldsPageResponse_Example"
            }
          }
        ]
      },
      "CustomFieldsPagePathParams": {
        "type": "object",
        "properties": {
          "entityType": {
            "type": "string",
            "enum": [
              "bills",
              "expenses",
              "invoices",
              "invoice_payments",
              "journal_entries"
            ],
            "description": "The supported entity types for which we can fetch the custom field schema."
          }
        },
        "required": [
          "entityType"
        ]
      },
      "CustomFieldsGetParams": {
        "type": "object",
        "properties": {
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          },
          "platform_fields": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Include fields that are platform defined (or unlocked through a platform defined process) vs. only those that are user defined."
          },
          "force_fetch": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Used to force a response even if the underlying connection has not finished its initial sync."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "CustomFieldsSchema": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "The description of this field."
          },
          "key": {
            "type": "string",
            "description": "The platform key of this field."
          },
          "name": {
            "type": "string",
            "description": "The name of this field."
          },
          "required": {
            "type": "boolean",
            "description": "Whether this field is required for this entity type."
          },
          "type": {
            "type": "string",
            "enum": [
              "boolean",
              "select",
              "string",
              "number",
              "multiselect"
            ],
            "description": "The type of this field."
          },
          "options": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "text": {
                  "type": "string",
                  "description": "The displayed text for the select option."
                },
                "value": {
                  "type": "string",
                  "description": "The platform specific ID of the select option."
                }
              },
              "required": [
                "text",
                "value"
              ],
              "additionalProperties": false
            }
          },
          "default": {
            "anyOf": [
              {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "boolean"
                  }
                ]
              },
              {
                "type": "number"
              }
            ],
            "description": "The default value for the field if any.",
            "type": [
              "null"
            ]
          }
        },
        "required": [
          "description",
          "key",
          "name",
          "required",
          "type",
          "options",
          "default"
        ],
        "examples": [
          {
            "CustomFieldsSchema_Example": {
              "$ref": "#/components/examples/CustomFieldsSchema_Example"
            }
          }
        ]
      },
      "CustomFieldsPageGenericEntity": {
        "type": "object",
        "properties": {
          "entity": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomFieldsSchema"
            }
          },
          "entity.line_items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomFieldsSchema"
            }
          }
        },
        "required": [
          "entity",
          "entity.line_items"
        ]
      },
      "CustomFieldsPageGenericEntityResponse": {
        "type": "object",
        "properties": {
          "custom_fields": {
            "$ref": "#/components/schemas/CustomFieldsPageGenericEntity"
          }
        },
        "required": [
          "custom_fields"
        ],
        "examples": [
          {
            "CustomFieldsPageGenericEntityResponse_Example": {
              "$ref": "#/components/examples/CustomFieldsPageGenericEntityResponse_Example"
            }
          }
        ]
      },
      "AccountsParams": {
        "type": "object",
        "properties": {
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          },
          "cursor": {
            "type": "string",
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response."
          },
          "limit": {
            "type": "integer",
            "description": "Used to limit the number of returned objects. Defaults to 50."
          },
          "filter": {
            "type": "string",
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365."
          },
          "sort": {
            "type": "string",
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`."
          },
          "expand": {
            "type": "string",
            "enum": [
              "platform_data"
            ],
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object)."
          },
          "account_type": {
            "type": "string",
            "enum": [
              "accounts_payable",
              "accounts_receivable",
              "bank",
              "fixed_asset",
              "other_asset",
              "other_current_asset",
              "liability",
              "equity",
              "expense",
              "other_expense",
              "income",
              "other_income",
              "credit_card",
              "cost_of_goods_sold",
              "other_current_liability",
              "long_term_liability",
              "non_posting",
              "unknown"
            ],
            "description": "**Deprecated** - use `filter` instead. The exact account type to filter on."
          },
          "last_synced_at_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "updated_at_max": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "updated_at_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "force_fetch": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Used to force a response even if the underlying connection has not finished its initial sync."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "Account": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter generated unique ID of the account."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the account."
          },
          "account_type": {
            "type": "string",
            "enum": [
              "accounts_payable",
              "accounts_receivable",
              "bank",
              "fixed_asset",
              "other_asset",
              "other_current_asset",
              "liability",
              "equity",
              "expense",
              "other_expense",
              "income",
              "other_income",
              "credit_card",
              "cost_of_goods_sold",
              "other_current_liability",
              "long_term_liability",
              "non_posting",
              "unknown"
            ],
            "description": "The account type of the account."
          },
          "category": {
            "type": "string",
            "enum": [
              "asset",
              "expense",
              "equity",
              "liability",
              "income",
              "nonposting",
              "unknown"
            ],
            "description": "The category of the account."
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "inactive",
              "pending"
            ],
            "description": "The status of the account."
          },
          "balance": {
            "type": [
              "number",
              "null"
            ],
            "description": "The running balance of all credits and debits applied to the account."
          },
          "currency_code": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the account."
          },
          "name": {
            "type": [
              "string",
              "null"
            ],
            "description": "The business facing name of the account."
          },
          "nominal_code": {
            "type": [
              "string",
              "null"
            ],
            "description": "The nominal code of the account used to classify accounts by department or account type."
          },
          "subsidiaries": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "format": "uuid"
                }
              },
              "required": [
                "id"
              ],
              "additionalProperties": false
            },
            "description": "An array of [Subsidiaries](/rest/version/subsidiaries) linked to the account. Supported for NetSuite. A subsidiary_id query parameter can be optionally included in GET requests to filter the account results."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the account was created."
          },
          "updated_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the account was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the account was last synced by Rutter."
          },
          "platform_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "A URL pointing to the object in the underlying platform. When no URL exists for the specific object, the value may be a larger URL containing the object."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "account_type",
          "category",
          "status",
          "balance",
          "currency_code",
          "name",
          "nominal_code",
          "subsidiaries",
          "created_at",
          "updated_at",
          "last_synced_at",
          "platform_url"
        ],
        "examples": [
          {
            "Account_Example": {
              "$ref": "#/components/examples/Account_Example"
            }
          }
        ]
      },
      "Platform": {
        "type": "string",
        "enum": [
          "AMAZON",
          "EBAY",
          "ETSY",
          "FNAC",
          "WALMART",
          "SHOPEE",
          "LAZADA",
          "MERCADOLIBRE",
          "ALIBABA",
          "SHOPLINE",
          "PRESTASHOP",
          "SHOPIFY",
          "MAGENTO",
          "WOO_COMMERCE",
          "SQUARESPACE",
          "WIX",
          "SHOPER",
          "SHOPLAZZA",
          "BIG_COMMERCE",
          "SHOPWARE",
          "COMMERCELAYER",
          "WEBFLOW",
          "GUMROAD",
          "ECWID",
          "PAYPAL",
          "SQUARE",
          "STRIPE",
          "CLOVER",
          "MOLLIE",
          "PAYNL",
          "AUTHORIZENET",
          "RECHARGE",
          "CHARGIFY",
          "CHARGEBEE",
          "RECURLY",
          "KASHFLOW",
          "SAGE_INTACCT",
          "DYNAMICS365",
          "ZOHOBOOKS",
          "EXACTONLINE",
          "FREEAGENT",
          "QUICKBOOKS",
          "QUICKBOOKS_DESKTOP",
          "FRESHBOOKS",
          "XERO",
          "SAGE_BUSINESS_CLOUD",
          "SAGE",
          "SAGE_50",
          "NETSUITE",
          "WAVE",
          "MONEYBIRD",
          "SAGE200CLOUD",
          "PLAID",
          "ODOO",
          "TALLY",
          "GOOGLE",
          "FACEBOOK",
          "TIKTOK"
        ],
        "description": "The underlying platform."
      },
      "Connection": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "description": "The UUID of the connection. Generated by Rutter."
          },
          "orgId": {
            "type": "string",
            "format": "uuid",
            "description": "Your organization id."
          },
          "platform": {
            "$ref": "#/components/schemas/Platform"
          }
        },
        "required": [
          "id",
          "orgId",
          "platform"
        ],
        "examples": [
          {
            "Connection_Example": {
              "$ref": "#/components/examples/Connection_Example"
            }
          }
        ]
      },
      "ListAccountResponseWithConnection": {
        "type": "object",
        "properties": {
          "accounts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Account"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "accounts",
          "connection"
        ],
        "examples": [
          {
            "ListAccountResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListAccountResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateAccount": {
        "type": "object",
        "properties": {
          "subsidiary_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the account. Supported for NetSuite. If a subsidiary ID is specified, the provided subsidiary as well as all children subsidiaries will be included as valid for the account. If no subsidiary info is specified, all subsidiaries will be included as valid for the account. (Note: accounts of type bank and credit_card can only have a single valid subsidiary.)"
          },
          "account_type": {
            "type": "string",
            "enum": [
              "accounts_payable",
              "accounts_receivable",
              "bank",
              "fixed_asset",
              "other_asset",
              "other_current_asset",
              "liability",
              "equity",
              "expense",
              "other_expense",
              "income",
              "other_income",
              "credit_card",
              "cost_of_goods_sold",
              "other_current_liability",
              "long_term_liability",
              "non_posting",
              "unknown"
            ],
            "description": "The account type of the account."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the account."
          },
          "name": {
            "type": "string",
            "description": "The business facing name of the account."
          },
          "nominal_code": {
            "type": "string",
            "description": "The nominal code of the account used to classify accounts by department or account type."
          },
          "additional_fields": {
            "type": "object",
            "properties": {
              "bank_account_number": {
                "type": "string",
                "description": "Xero only: required to create bank accounts."
              }
            },
            "additionalProperties": false,
            "description": "Additional fields required only for a narrow set of use cases."
          }
        },
        "required": [
          "account_type",
          "currency_code",
          "name",
          "nominal_code"
        ],
        "examples": [
          {
            "CreateAccount_Example": {
              "$ref": "#/components/examples/CreateAccount_Example"
            }
          }
        ]
      },
      "CreateCreateAccountRequest": {
        "type": "object",
        "properties": {
          "account": {
            "$ref": "#/components/schemas/CreateAccount"
          }
        },
        "required": [
          "account"
        ],
        "examples": [
          {
            "CreateCreateAccountRequest_Example": {
              "$ref": "#/components/examples/CreateCreateAccountRequest_Example"
            }
          }
        ]
      },
      "AccountResponse": {
        "type": "object",
        "properties": {
          "account": {
            "$ref": "#/components/schemas/Account"
          }
        },
        "required": [
          "account"
        ],
        "examples": [
          {
            "AccountResponse_Example": {
              "$ref": "#/components/examples/AccountResponse_Example"
            }
          }
        ]
      },
      "AsyncResponsePayload": {
        "type": "object",
        "properties": {
          "async_response": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "response_url": {
                "type": "string"
              },
              "status": {
                "type": "string",
                "enum": [
                  "prequeued",
                  "pending",
                  "success",
                  "failure"
                ]
              }
            },
            "required": [
              "id",
              "response_url",
              "status"
            ],
            "additionalProperties": false
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "number"
                },
                "description": {
                  "type": "string"
                },
                "slug": {
                  "type": "string"
                },
                "source": {
                  "type": "string",
                  "enum": [
                    "rutter",
                    "platform",
                    "invalid_input"
                  ]
                },
                "details": null
              },
              "required": [
                "code",
                "description",
                "slug",
                "source"
              ],
              "additionalProperties": false
            }
          }
        }
      },
      "CreateAccountResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/AccountResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateAccountResponse_Example": {
              "$ref": "#/components/examples/CreateAccountResponse_Example"
            }
          }
        ]
      },
      "IdPathParam": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID of the object."
          }
        },
        "required": [
          "id"
        ]
      },
      "CommonGetParamsWithIdType": {
        "type": "object",
        "properties": {
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          },
          "id_type": {
            "type": "string",
            "enum": [
              "rutter",
              "platform"
            ],
            "description": "Used to indicate the type of `id` that is supplied. Defaults to `rutter`. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365."
          },
          "force_fetch": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Used to force a response even if the underlying connection has not finished its initial sync."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "AccountResponseWithConnection": {
        "type": "object",
        "properties": {
          "account": {
            "$ref": "#/components/schemas/Account"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "account",
          "connection"
        ],
        "examples": [
          {
            "AccountResponseWithConnection_Example": {
              "$ref": "#/components/examples/AccountResponseWithConnection_Example"
            }
          }
        ]
      },
      "RutterIdPathParams": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter generated unique ID of the object."
          }
        },
        "required": [
          "id"
        ]
      },
      "UpdateAccount": {
        "type": "object",
        "properties": {
          "subsidiary_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the account. Supported for NetSuite. If a subsidiary ID is specified, the provided subsidiary as well as all children subsidiaries will be included as valid for the account. If no subsidiary info is specified, all subsidiaries will be included as valid for the account. (Note: accounts of type bank and credit_card can only have a single valid subsidiary.)"
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the account."
          },
          "name": {
            "type": "string",
            "description": "The business facing name of the account."
          },
          "nominal_code": {
            "type": "string",
            "description": "The nominal code of the account used to classify accounts by department or account type."
          }
        },
        "examples": [
          {
            "UpdateAccount_Example": {
              "$ref": "#/components/examples/UpdateAccount_Example"
            }
          }
        ]
      },
      "CreateUpdateAccountRequest": {
        "type": "object",
        "properties": {
          "account": {
            "$ref": "#/components/schemas/UpdateAccount"
          }
        },
        "required": [
          "account"
        ],
        "examples": [
          {
            "CreateUpdateAccountRequest_Example": {
              "$ref": "#/components/examples/CreateUpdateAccountRequest_Example"
            }
          }
        ]
      },
      "AccountingStatementQuery": {
        "type": "object",
        "properties": {
          "start_date": {
            "type": "string",
            "description": "**Deprecated** - use `filter` instead. The first date that you will receive a financial statement for.  This means if you set a start date a year ago, you will receive 13 financial statements, one for each month."
          },
          "end_date": {
            "type": "string",
            "description": "**Deprecated** - use `filter` instead. The last date that you will receive a financial statement for.  If you set a start date of Jan 1 2021 and an end date of Jan 1 2022, you will receive the 13 months between those dates, inclusive."
          },
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          },
          "expand": {
            "type": "string",
            "enum": [
              "platform_data"
            ],
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object)."
          },
          "force_fetch": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Used to force a response even if the underlying connection has not finished its initial sync."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "GeneralLedgerLineItem": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "value": {
            "type": [
              "string",
              "null"
            ]
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GeneralLedgerLineItem"
            }
          },
          "prevLineItem": {
            "$ref": "#/components/schemas/GeneralLedgerLineItem"
          }
        },
        "required": [
          "account_id",
          "name",
          "value",
          "items"
        ]
      },
      "BalanceSheet": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the balance sheet."
          },
          "start_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the start date of the balance sheet."
          },
          "end_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the end date of the balance sheet."
          },
          "currency_code": {
            "type": "string",
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the balance sheet."
          },
          "total_assets": {
            "type": [
              "string",
              "null"
            ],
            "description": "The total value of Assets."
          },
          "total_equity": {
            "type": [
              "string",
              "null"
            ],
            "description": "The total value of Equity."
          },
          "total_liabilities": {
            "type": [
              "string",
              "null"
            ],
            "description": "The total value of Liabilities."
          },
          "assets": {
            "$ref": "#/components/schemas/GeneralLedgerLineItem"
          },
          "equity": {
            "$ref": "#/components/schemas/GeneralLedgerLineItem"
          },
          "liabilities": {
            "$ref": "#/components/schemas/GeneralLedgerLineItem"
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the balance sheet was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the balance sheet was last updated."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "start_date",
          "end_date",
          "currency_code",
          "total_assets",
          "total_equity",
          "total_liabilities",
          "assets",
          "equity",
          "liabilities",
          "created_at",
          "updated_at"
        ],
        "examples": [
          {
            "BalanceSheet_Example": {
              "$ref": "#/components/examples/BalanceSheet_Example"
            }
          }
        ]
      },
      "BalanceSheetResultWithConnection": {
        "type": "object",
        "properties": {
          "balance_sheets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BalanceSheet"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "balance_sheets",
          "next_cursor",
          "connection"
        ],
        "examples": [
          {
            "BalanceSheetResultWithConnection_Example": {
              "$ref": "#/components/examples/BalanceSheetResultWithConnection_Example"
            }
          }
        ]
      },
      "AccountingListParams": {
        "type": "object",
        "properties": {
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          },
          "cursor": {
            "type": "string",
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response."
          },
          "limit": {
            "type": "integer",
            "description": "Used to limit the number of returned objects. Defaults to 50."
          },
          "filter": {
            "type": "string",
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365."
          },
          "sort": {
            "type": "string",
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`."
          },
          "expand": {
            "type": "string",
            "enum": [
              "platform_data"
            ],
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object)."
          },
          "last_synced_at_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "updated_at_max": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "updated_at_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "force_fetch": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Used to force a response even if the underlying connection has not finished its initial sync."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "BankDeposit": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter generated unique ID of the bank deposit."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the bank deposit."
          },
          "account_id": {
            "type": [
              "string",
              "null"
            ],
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank deposit. Represents the asset account being debited."
          },
          "subsidiary_id": {
            "type": [
              "string",
              "null"
            ],
            "format": "uuid",
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the bank deposit. Supported for NetSuite."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the transaction date of the bank deposit."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bank deposit."
          },
          "total_amount": {
            "type": "number",
            "description": "The total amount of the sales order bank deposit."
          },
          "memo": {
            "type": [
              "string",
              "null"
            ],
            "description": "The memo of the bank deposit."
          },
          "linked_payments": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "uuid",
                  "description": "The Rutter generated unique ID of the bank deposit linked payment."
                },
                "payment_amount": {
                  "type": "number",
                  "description": "The amount of the linked payment."
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "invoice_payment",
                    "journal_entry",
                    "unknown"
                  ],
                  "description": "The type of linked payment."
                }
              },
              "required": [
                "id",
                "payment_amount",
                "type"
              ],
              "additionalProperties": false
            },
            "description": "Any previously created transactions associated with this deposit, used for reconciliation."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "platform_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The platform specific ID of the bank deposit line item. Supported for QuickBooks."
                },
                "account_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "uuid",
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank deposit line item. Represents the account being credited."
                },
                "class_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "uuid",
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bank deposit line item."
                },
                "customer_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "uuid",
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the bank deposit line item. Note: For QuickBooks, this field will be present if the account_id is of type `accounts_receivable`."
                },
                "department_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "uuid",
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bank deposit line item."
                },
                "location_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "uuid",
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bank deposit line item."
                },
                "vendor_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "uuid",
                  "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the bank deposit line item. Note: For QuickBooks, this field will be present if the account_id is of type `accounts_payable`."
                },
                "total_amount": {
                  "type": "number",
                  "description": "The total amount of the bank deposit line item."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The description of the bank deposit line item."
                }
              },
              "required": [
                "platform_id",
                "account_id",
                "class_id",
                "customer_id",
                "department_id",
                "location_id",
                "vendor_id",
                "total_amount",
                "description"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items associated with the bank deposit."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the bank deposit was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the bank deposit was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the bank deposit was last synced by Rutter."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "account_id",
          "subsidiary_id",
          "transaction_date",
          "currency_code",
          "total_amount",
          "memo",
          "linked_payments",
          "line_items",
          "created_at",
          "updated_at",
          "last_synced_at"
        ],
        "examples": [
          {
            "BankDeposit_Example": {
              "$ref": "#/components/examples/BankDeposit_Example"
            }
          }
        ]
      },
      "ListBankDepositResponseWithConnection": {
        "type": "object",
        "properties": {
          "bank_deposits": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BankDeposit"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bank_deposits",
          "connection"
        ],
        "examples": [
          {
            "ListBankDepositResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListBankDepositResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateBankDeposit": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank deposit. Represents the asset account being debited."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the transaction date of the bank deposit."
          },
          "memo": {
            "type": "string",
            "description": "The memo of the bank deposit."
          },
          "linked_payments": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter generated unique ID of the bank deposit linked payment."
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "invoice_payment",
                    "journal_entry",
                    "unknown"
                  ],
                  "description": "The type of linked payment."
                }
              },
              "required": [
                "id",
                "type"
              ],
              "additionalProperties": false
            },
            "description": "Any previously created transactions associated with this deposit, used for reconciliation."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank deposit line item. Represents the asset account being credited."
                },
                "class_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bank deposit line item."
                },
                "customer_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the bank deposit line item. Note: For QuickBooks, this field must be present if the account_id is of type `accounts_receivable`."
                },
                "department_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bank deposit line item."
                },
                "location_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bank deposit line item."
                },
                "vendor_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the bank deposit line item. Note: For QuickBooks, This field must be present if the account_id is of type `accounts_payable`."
                },
                "total_amount": {
                  "type": "number",
                  "description": "The total amount of the bank deposit line item."
                },
                "description": {
                  "type": "string",
                  "description": "The description of the bank deposit line item."
                }
              },
              "required": [
                "account_id",
                "total_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items associated with the bank deposit."
          },
          "additional_fields": {
            "type": "object",
            "properties": {
              "reconciled": {
                "type": "boolean",
                "description": "Xero only: Boolean to show if transaction is reconciled. Conversion related apps can set the IsReconciled flag in scenarios when a matching bank statement line is not available."
              }
            },
            "additionalProperties": false,
            "description": "Additional fields required only for a narrow set of use cases."
          }
        },
        "required": [
          "account_id"
        ],
        "examples": [
          {
            "CreateBankDeposit_Example": {
              "$ref": "#/components/examples/CreateBankDeposit_Example"
            }
          }
        ]
      },
      "CreateCreateBankDepositRequest": {
        "type": "object",
        "properties": {
          "bank_deposit": {
            "$ref": "#/components/schemas/CreateBankDeposit"
          }
        },
        "required": [
          "bank_deposit"
        ],
        "examples": [
          {
            "CreateCreateBankDepositRequest_Example": {
              "$ref": "#/components/examples/CreateCreateBankDepositRequest_Example"
            }
          }
        ]
      },
      "BankDepositResponse": {
        "type": "object",
        "properties": {
          "bank_deposit": {
            "$ref": "#/components/schemas/BankDeposit"
          }
        },
        "required": [
          "bank_deposit"
        ],
        "examples": [
          {
            "BankDepositResponse_Example": {
              "$ref": "#/components/examples/BankDepositResponse_Example"
            }
          }
        ]
      },
      "CreateBankDepositResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/BankDepositResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateBankDepositResponse_Example": {
              "$ref": "#/components/examples/CreateBankDepositResponse_Example"
            }
          }
        ]
      },
      "BankDepositResponseWithConnection": {
        "type": "object",
        "properties": {
          "bank_deposit": {
            "$ref": "#/components/schemas/BankDeposit"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bank_deposit",
          "connection"
        ],
        "examples": [
          {
            "BankDepositResponseWithConnection_Example": {
              "$ref": "#/components/examples/BankDepositResponseWithConnection_Example"
            }
          }
        ]
      },
      "UpdateBankDeposit": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank deposit. Represents the asset account being debited."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the transaction date of the bank deposit."
          },
          "memo": {
            "type": "string",
            "description": "The memo of the bank deposit"
          },
          "linked_payments": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter generated unique ID of the bank deposit linked payment."
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "invoice_payment",
                    "journal_entry",
                    "unknown"
                  ],
                  "description": "The type of linked payment"
                }
              },
              "required": [
                "id",
                "type"
              ],
              "additionalProperties": false
            },
            "description": "Any previously created transactions associated with this deposit, used for reconciliation."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "platform_id": {
                  "type": "string",
                  "description": "QuickBooks only: If platform ID is not passed in, a new line item will be created. Please note that it is not currently possible to remove existing line items."
                },
                "account_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank deposit line item. Represents the asset account being credited."
                },
                "class_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bank deposit line item."
                },
                "customer_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the bank deposit line item. Note: For QuickBooks, this field must be present if the account_id is of type `accounts_receivable`"
                },
                "department_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bank deposit line item."
                },
                "location_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bank deposit line item."
                },
                "vendor_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the bank deposit line item. Note: For QuickBooks, this field must be present if the account_id is of type `accounts_payable`"
                },
                "description": {
                  "type": "string",
                  "description": "The description of the bank deposit line item."
                },
                "total_amount": {
                  "type": "number",
                  "description": "The total amount of the bank deposit line item."
                }
              },
              "additionalProperties": false
            },
            "description": "An array of line items associated with the bank deposit."
          }
        },
        "examples": [
          {
            "UpdateBankDeposit_Example": {
              "$ref": "#/components/examples/UpdateBankDeposit_Example"
            }
          }
        ]
      },
      "CreateUpdateBankDepositRequest": {
        "type": "object",
        "properties": {
          "bank_deposit": {
            "$ref": "#/components/schemas/UpdateBankDeposit"
          }
        },
        "required": [
          "bank_deposit"
        ],
        "examples": [
          {
            "CreateUpdateBankDepositRequest_Example": {
              "$ref": "#/components/examples/CreateUpdateBankDepositRequest_Example"
            }
          }
        ]
      },
      "PostAttachmentPathParams": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter generated unique ID of the underlying entity type."
          }
        },
        "required": [
          "id"
        ]
      },
      "CreateAttachmentBody": {
        "type": "object",
        "properties": {
          "file": {
            "type": "string",
            "description": "The file content (PDF, JPG, CSV, TXT, etc)."
          },
          "file_name": {
            "type": "string",
            "description": "The file name of the attachment."
          }
        },
        "required": [
          "file",
          "file_name"
        ],
        "examples": [
          {
            "CreateAttachmentBody_Example": {
              "$ref": "#/components/examples/CreateAttachmentBody_Example"
            }
          }
        ]
      },
      "Attachment": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter ID of the attachment. This can be the same as the Platform ID. This ID is not guaranteed to be unique across all attachment objects for a connection."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the attachment."
          },
          "attached_to_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the entity linked to the attachment."
          },
          "file_name": {
            "type": "string",
            "description": "The file name of the attachment."
          },
          "file_url": {
            "type": "string",
            "description": "The Rutter generated URL containing a downloadable version of the attachment."
          },
          "attached_to_type": {
            "type": [
              "string",
              "null"
            ],
            "description": "The type of entity linked to the attachment."
          },
          "created_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the attachment was created.\n\nNote: The following platforms dont't support this field, and may return an empty string:\n- Xero"
          }
        },
        "required": [
          "id",
          "platform_id",
          "attached_to_id",
          "file_name",
          "file_url",
          "attached_to_type",
          "created_at"
        ],
        "examples": [
          {
            "Attachment_Example": {
              "$ref": "#/components/examples/Attachment_Example"
            }
          }
        ]
      },
      "AttachmentResponse": {
        "type": "object",
        "properties": {
          "attachment": {
            "$ref": "#/components/schemas/Attachment"
          }
        },
        "required": [
          "attachment"
        ]
      },
      "PostAttachmentResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/AttachmentResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "PostAttachmentResponse_Example": {
              "$ref": "#/components/examples/PostAttachmentResponse_Example"
            }
          }
        ]
      },
      "GetAttachmentsByEntityPathParams": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the Rutter Entity."
          }
        },
        "required": [
          "id"
        ]
      },
      "CommonGetParams": {
        "type": "object",
        "properties": {
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          },
          "force_fetch": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Used to force a response even if the underlying connection has not finished its initial sync."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "BankDepositAttachmentsResponse": {
        "type": "object",
        "properties": {
          "attachments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Attachment"
            }
          }
        },
        "required": [
          "attachments"
        ],
        "examples": [
          {
            "BankDepositAttachmentsResponse_Example": {
              "$ref": "#/components/examples/BankDepositAttachmentsResponse_Example"
            }
          }
        ]
      },
      "GetAttachmentFilePathParams": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the object."
          },
          "attachmentId": {
            "type": "string",
            "description": "The platform unique ID of the attachment."
          }
        },
        "required": [
          "id",
          "attachmentId"
        ]
      },
      "AttachmentFileResponse": {
        "type": "object",
        "properties": {}
      },
      "ListAttachmentsParams": {
        "type": "object",
        "properties": {
          "attached_to_id": {
            "type": "string",
            "format": "uuid",
            "description": "The ID of the entity that the attachment is attached to."
          },
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          },
          "cursor": {
            "type": "string",
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response."
          },
          "limit": {
            "type": "integer",
            "description": "Used to limit the number of returned objects. Defaults to 50."
          },
          "filter": {
            "type": "string",
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365."
          },
          "expand": {
            "type": "string",
            "enum": [
              "platform_data"
            ],
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object)."
          },
          "updated_at_max": {
            "type": "integer",
            "description": "Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "updated_at_min": {
            "type": "integer",
            "description": "Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "force_fetch": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Used to force a response even if the underlying connection has not finished its initial sync."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "ListAttachmentsResponse": {
        "type": "object",
        "properties": {
          "attachments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Attachment"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "attachments",
          "next_cursor"
        ],
        "examples": [
          {
            "ListAttachmentsResponse_Example": {
              "$ref": "#/components/examples/ListAttachmentsResponse_Example"
            }
          }
        ]
      },
      "GetAttachmentPathParams": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter generated unique ID of the attachment."
          }
        },
        "required": [
          "id"
        ]
      },
      "BankFeedAccount": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the bank feed."
          },
          "account_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter generated unique ID of the platform account."
          },
          "internal_bank_account_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Financial Institution's ID for the bank account."
          },
          "transaction_start_date": {
            "type": [
              "string",
              "null"
            ],
            "description": "The start date of the bank feed connection's synced historical transactions."
          },
          "bank_account_type": {
            "type": "string",
            "enum": [
              "bank",
              "credit_card"
            ],
            "description": "The Financial Institution's bank account type."
          },
          "feed_status": {
            "type": "string",
            "enum": [
              "active",
              "inactive"
            ],
            "description": "The status of the bank feed connection."
          },
          "bank_account_number": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Financial Institution's account number or credit card number."
          },
          "currency_code": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bank feed."
          },
          "name": {
            "type": [
              "string",
              "null"
            ],
            "description": "The name of the bank account."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the bank feed account was last synced by Rutter."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "account_id",
          "internal_bank_account_id",
          "transaction_start_date",
          "bank_account_type",
          "feed_status",
          "bank_account_number",
          "currency_code",
          "name",
          "last_synced_at"
        ],
        "examples": [
          {
            "BankFeedAccount_Example": {
              "$ref": "#/components/examples/BankFeedAccount_Example"
            }
          }
        ]
      },
      "ListBankFeedAccountResponseWithConnection": {
        "type": "object",
        "properties": {
          "bank_feed_accounts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BankFeedAccount"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bank_feed_accounts",
          "connection"
        ],
        "examples": [
          {
            "ListBankFeedAccountResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListBankFeedAccountResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateBankFeedAccount": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter generated unique ID of the platform GL account. The type of this GL account should be the same as the type provided in bank_account_type. Note: this field is required for NetSuite."
          },
          "internal_bank_account_id": {
            "type": "string",
            "description": "The Financial Institution's ID for the bank account."
          },
          "transaction_start_date": {
            "type": "string",
            "description": "The start date of the bank feed connection's synced historical transactions."
          },
          "bank_account_type": {
            "type": "string",
            "enum": [
              "bank",
              "credit_card"
            ],
            "description": "The Financial Institution's bank account type."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bank feed."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The name of the bank account."
          },
          "bank_account_number": {
            "type": "string",
            "description": "The Financial Institution's account number or credit card number."
          }
        },
        "required": [
          "bank_account_type",
          "currency_code",
          "name"
        ],
        "examples": [
          {
            "CreateBankFeedAccount_Example": {
              "$ref": "#/components/examples/CreateBankFeedAccount_Example"
            }
          }
        ]
      },
      "CreateCreateBankFeedAccountRequest": {
        "type": "object",
        "properties": {
          "bank_feed_account": {
            "$ref": "#/components/schemas/CreateBankFeedAccount"
          }
        },
        "required": [
          "bank_feed_account"
        ],
        "examples": [
          {
            "CreateCreateBankFeedAccountRequest_Example": {
              "$ref": "#/components/examples/CreateCreateBankFeedAccountRequest_Example"
            }
          }
        ]
      },
      "BankFeedAccountResponse": {
        "type": "object",
        "properties": {
          "bank_feed_account": {
            "$ref": "#/components/schemas/BankFeedAccount"
          }
        },
        "required": [
          "bank_feed_account"
        ],
        "examples": [
          {
            "BankFeedAccountResponse_Example": {
              "$ref": "#/components/examples/BankFeedAccountResponse_Example"
            }
          }
        ]
      },
      "CreateBankFeedAccountResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/BankFeedAccountResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateBankFeedAccountResponse_Example": {
              "$ref": "#/components/examples/CreateBankFeedAccountResponse_Example"
            }
          }
        ]
      },
      "BankFeedAccountResponseWithConnection": {
        "type": "object",
        "properties": {
          "bank_feed_account": {
            "$ref": "#/components/schemas/BankFeedAccount"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bank_feed_account",
          "connection"
        ],
        "examples": [
          {
            "BankFeedAccountResponseWithConnection_Example": {
              "$ref": "#/components/examples/BankFeedAccountResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateBankFeedOTP": {
        "type": "object",
        "properties": {},
        "examples": [
          {
            "CreateBankFeedOTP_Example": {
              "$ref": "#/components/examples/CreateBankFeedOTP_Example"
            }
          }
        ]
      },
      "BankFeedOTP": {
        "type": "object",
        "properties": {
          "expires_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for when the OTP expires. By default, the OTP should be valid for 1 hour."
          },
          "otp": {
            "type": "string",
            "description": "The one-time password for the bank connection."
          }
        },
        "required": [
          "expires_at",
          "otp"
        ],
        "examples": [
          {
            "BankFeedOTP_Example": {
              "$ref": "#/components/examples/BankFeedOTP_Example"
            }
          }
        ]
      },
      "BankFeedOTPResponse": {
        "type": "object",
        "properties": {
          "bank_feed_otp": {
            "$ref": "#/components/schemas/BankFeedOTP"
          }
        },
        "required": [
          "bank_feed_otp"
        ],
        "examples": [
          {
            "BankFeedOTPResponse_Example": {
              "$ref": "#/components/examples/BankFeedOTPResponse_Example"
            }
          }
        ]
      },
      "BankFeedTransaction": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the bank feed transaction."
          },
          "bank_feed_account_id": {
            "type": [
              "string",
              "null"
            ],
            "format": "uuid",
            "description": "The Rutter generated unique ID of the linked bank feed."
          },
          "transaction_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Financial Institution's ID for the transaction."
          },
          "posted_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "When the transaction was posted by the Financial Institution."
          },
          "amount": {
            "type": [
              "number",
              "null"
            ],
            "description": "The amount of the transaction."
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "The description of the transaction."
          },
          "payee": {
            "type": [
              "string",
              "null"
            ],
            "description": "The payee of the transaction."
          },
          "platform_ingested": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Indicates whether the transaction has been ingested by the platform."
          },
          "transaction_type": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "credit",
              "debit",
              "fee",
              "deposit",
              "transfer",
              "payment",
              "interest"
            ],
            "description": "The type of the transaction."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the bank feed transaction was last synced by Rutter."
          }
        },
        "required": [
          "id",
          "bank_feed_account_id",
          "transaction_id",
          "posted_at",
          "amount",
          "description",
          "payee",
          "platform_ingested",
          "transaction_type",
          "last_synced_at"
        ],
        "examples": [
          {
            "BankFeedTransaction_Example": {
              "$ref": "#/components/examples/BankFeedTransaction_Example"
            }
          }
        ]
      },
      "ListBankFeedTransactionResponseWithConnection": {
        "type": "object",
        "properties": {
          "bank_feed_transactions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BankFeedTransaction"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bank_feed_transactions",
          "connection"
        ],
        "examples": [
          {
            "ListBankFeedTransactionResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListBankFeedTransactionResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateBankFeedTransactions": {
        "type": "object",
        "properties": {
          "bank_feed_account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter generated unique ID of the linked bank feed."
          },
          "transactions": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "transaction_id": {
                  "type": "string",
                  "description": "The Financial Institution's ID for the transaction."
                },
                "posted_at": {
                  "type": "string",
                  "description": "When the transaction was posted by the Financial Institution."
                },
                "amount": {
                  "type": "number",
                  "description": "The amount of the transaction."
                },
                "description": {
                  "type": "string",
                  "description": "The description of the transaction."
                },
                "transaction_type": {
                  "type": "string",
                  "enum": [
                    "credit",
                    "debit",
                    "fee",
                    "deposit",
                    "transfer",
                    "payment",
                    "interest"
                  ],
                  "description": "The type of the transaction."
                },
                "payee": {
                  "type": "string",
                  "description": "The payee of the transaction."
                }
              },
              "required": [
                "transaction_id",
                "posted_at",
                "amount",
                "description",
                "transaction_type"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "bank_feed_account_id",
          "transactions"
        ],
        "examples": [
          {
            "CreateBankFeedTransactions_Example": {
              "$ref": "#/components/examples/CreateBankFeedTransactions_Example"
            }
          }
        ]
      },
      "CreateCreateBankFeedTransactionsRequest": {
        "type": "object",
        "properties": {
          "bank_feed_transactions": {
            "$ref": "#/components/schemas/CreateBankFeedTransactions"
          }
        },
        "required": [
          "bank_feed_transactions"
        ],
        "examples": [
          {
            "CreateCreateBankFeedTransactionsRequest_Example": {
              "$ref": "#/components/examples/CreateCreateBankFeedTransactionsRequest_Example"
            }
          }
        ]
      },
      "CreateBankFeedTransactionsResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the bank feed transaction."
          },
          "bank_feed_account_id": {
            "type": [
              "string",
              "null"
            ],
            "format": "uuid",
            "description": "The Rutter generated unique ID of the linked bank feed."
          },
          "transaction_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Financial Institution's ID for the transaction."
          },
          "posted_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "When the transaction was posted by the Financial Institution."
          },
          "amount": {
            "type": [
              "number",
              "null"
            ],
            "description": "The amount of the transaction."
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "The description of the transaction."
          },
          "duplicate": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Indicates whether the transaction was already supplied to Rutter in a previous POST request. If this is true, the transaction returned will be the previously synced data - it will not be overwritten by the most recent POST."
          },
          "payee": {
            "type": [
              "string",
              "null"
            ],
            "description": "The payee of the transaction."
          },
          "platform_ingested": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Indicates whether the transaction has been ingested by the platform."
          },
          "transaction_type": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "credit",
              "debit",
              "fee",
              "deposit",
              "transfer",
              "payment",
              "interest"
            ],
            "description": "The type of the transaction."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the bank feed transaction was last synced by Rutter."
          }
        },
        "required": [
          "id",
          "bank_feed_account_id",
          "transaction_id",
          "posted_at",
          "amount",
          "description",
          "duplicate",
          "payee",
          "platform_ingested",
          "transaction_type",
          "last_synced_at"
        ],
        "examples": [
          {
            "CreateBankFeedTransactionsResponse_Example": {
              "$ref": "#/components/examples/CreateBankFeedTransactionsResponse_Example"
            }
          }
        ]
      },
      "ListCreateBankFeedTransactionsResponseResponse": {
        "type": "object",
        "properties": {
          "bank_feed_transactions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreateBankFeedTransactionsResponse"
            }
          }
        },
        "required": [
          "bank_feed_transactions"
        ],
        "examples": [
          {
            "ListCreateBankFeedTransactionsResponseResponse_Example": {
              "$ref": "#/components/examples/ListCreateBankFeedTransactionsResponseResponse_Example"
            }
          }
        ]
      },
      "BankFeedTransactionResponseWithConnection": {
        "type": "object",
        "properties": {
          "bank_feed_transaction": {
            "$ref": "#/components/schemas/BankFeedTransaction"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bank_feed_transaction",
          "connection"
        ],
        "examples": [
          {
            "BankFeedTransactionResponseWithConnection_Example": {
              "$ref": "#/components/examples/BankFeedTransactionResponseWithConnection_Example"
            }
          }
        ]
      },
      "BankTransfer": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the bank transfer."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the bank transfer."
          },
          "class_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bank transfer line item."
          },
          "credit_account_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank transfer. Represents the asset account being credited."
          },
          "debit_account_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank transfer. Represents the asset account being debit."
          },
          "department_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bank transfer line item."
          },
          "location_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bank transfer line item."
          },
          "subsidiary_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the bank transfer. Supported for NetSuite."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the transaction date of the bank transfer."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bank transfer."
          },
          "total_amount": {
            "type": "number",
            "description": "The total amount of the bank transfer."
          },
          "memo": {
            "type": [
              "string",
              "null"
            ],
            "description": "The memo of the bank transfer."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the bank transfer was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the bank transfer was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the bank transfer was last synced by Rutter."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "class_id",
          "credit_account_id",
          "debit_account_id",
          "department_id",
          "location_id",
          "subsidiary_id",
          "transaction_date",
          "currency_code",
          "total_amount",
          "memo",
          "created_at",
          "updated_at",
          "last_synced_at"
        ],
        "examples": [
          {
            "BankTransfer_Example": {
              "$ref": "#/components/examples/BankTransfer_Example"
            }
          }
        ]
      },
      "ListBankTransferResponseWithConnection": {
        "type": "object",
        "properties": {
          "bank_transfers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BankTransfer"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bank_transfers",
          "connection"
        ],
        "examples": [
          {
            "ListBankTransferResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListBankTransferResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateBankTransfer": {
        "type": "object",
        "properties": {
          "class_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bank transfer line item."
          },
          "credit_account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank transfer. Represents the asset account being credited."
          },
          "debit_account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank transfer. Represents the asset account being debited."
          },
          "department_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bank transfer line item."
          },
          "location_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bank transfer line item."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the transaction date of the bank transfer."
          },
          "total_amount": {
            "type": "number",
            "description": "The total amount of the bank transfer."
          },
          "memo": {
            "type": "string",
            "description": "The memo of the bank transfer."
          },
          "additional_fields": {
            "type": "object",
            "properties": {
              "reconciled_for_destination_account": {
                "type": "boolean",
                "description": "If true, this will mark a transaction as reconciled for the destination account. Supported for Xero."
              },
              "reconciled_for_source_account": {
                "type": "boolean",
                "description": "If true, this will mark a transaction as reconciled for the source account. Supported for Xero."
              }
            },
            "additionalProperties": false,
            "description": "Additional fields required only for a narrow set of use cases."
          }
        },
        "required": [
          "credit_account_id",
          "debit_account_id",
          "total_amount"
        ],
        "examples": [
          {
            "CreateBankTransfer_Example": {
              "$ref": "#/components/examples/CreateBankTransfer_Example"
            }
          }
        ]
      },
      "CreateCreateBankTransferRequest": {
        "type": "object",
        "properties": {
          "bank_transfer": {
            "$ref": "#/components/schemas/CreateBankTransfer"
          }
        },
        "required": [
          "bank_transfer"
        ],
        "examples": [
          {
            "CreateCreateBankTransferRequest_Example": {
              "$ref": "#/components/examples/CreateCreateBankTransferRequest_Example"
            }
          }
        ]
      },
      "BankTransferResponse": {
        "type": "object",
        "properties": {
          "bank_transfer": {
            "$ref": "#/components/schemas/BankTransfer"
          }
        },
        "required": [
          "bank_transfer"
        ],
        "examples": [
          {
            "BankTransferResponse_Example": {
              "$ref": "#/components/examples/BankTransferResponse_Example"
            }
          }
        ]
      },
      "CreateBankTransferResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/BankTransferResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateBankTransferResponse_Example": {
              "$ref": "#/components/examples/CreateBankTransferResponse_Example"
            }
          }
        ]
      },
      "BankTransferResponseWithConnection": {
        "type": "object",
        "properties": {
          "bank_transfer": {
            "$ref": "#/components/schemas/BankTransfer"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bank_transfer",
          "connection"
        ],
        "examples": [
          {
            "BankTransferResponseWithConnection_Example": {
              "$ref": "#/components/examples/BankTransferResponseWithConnection_Example"
            }
          }
        ]
      },
      "UpdateBankTransfer": {
        "type": "object",
        "properties": {
          "credit_account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank transfer. Represents the asset account being credited."
          },
          "debit_account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bank transfer. Represents the asset account being debited."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the transaction date of the bank transfer."
          },
          "total_amount": {
            "type": "number",
            "description": "The total amount of the bank transfer."
          },
          "memo": {
            "type": "string",
            "description": "The memo of the bank transfer."
          }
        },
        "required": [
          "credit_account_id",
          "debit_account_id",
          "total_amount"
        ],
        "examples": [
          {
            "UpdateBankTransfer_Example": {
              "$ref": "#/components/examples/UpdateBankTransfer_Example"
            }
          }
        ]
      },
      "CreateUpdateBankTransferRequest": {
        "type": "object",
        "properties": {
          "bank_transfer": {
            "$ref": "#/components/schemas/UpdateBankTransfer"
          }
        },
        "required": [
          "bank_transfer"
        ],
        "examples": [
          {
            "CreateUpdateBankTransferRequest_Example": {
              "$ref": "#/components/examples/CreateUpdateBankTransferRequest_Example"
            }
          }
        ]
      },
      "CreateBillCreditApplication": {
        "type": "object",
        "properties": {
          "bill_credit_memo_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Bill Credit Memo](/rest/version/bill-credit-memos) linked to the bill credit application."
          },
          "vendor_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the bill credit application."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the bill credit application."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bill credit application."
          },
          "memo": {
            "type": "string",
            "description": "The description of the bill credit application."
          },
          "linked_bills": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "format": "uuid"
                },
                "allocated_amount": {
                  "type": "number",
                  "exclusiveMinimum": true,
                  "minimum": 0
                }
              },
              "required": [
                "id",
                "allocated_amount"
              ],
              "additionalProperties": false
            }
          },
          "additional_fields": {
            "type": "object",
            "properties": {
              "account_id": {
                "type": "string",
                "format": "uuid",
                "description": "Rutter ID associated with a bank or credit_card account [account](/rest/version/account). Supported for FreeAgent, QuickBooks, and QuickBooks Desktop."
              }
            },
            "additionalProperties": false,
            "description": "Additional fields required only for a narrow set of use cases."
          }
        },
        "required": [
          "bill_credit_memo_id",
          "vendor_id",
          "transaction_date",
          "currency_code",
          "linked_bills"
        ],
        "examples": [
          {
            "CreateBillCreditApplication_Example": {
              "$ref": "#/components/examples/CreateBillCreditApplication_Example"
            }
          }
        ]
      },
      "CreateCreateBillCreditApplicationRequest": {
        "type": "object",
        "properties": {
          "bill_credit_application": {
            "$ref": "#/components/schemas/CreateBillCreditApplication"
          }
        },
        "required": [
          "bill_credit_application"
        ],
        "examples": [
          {
            "CreateCreateBillCreditApplicationRequest_Example": {
              "$ref": "#/components/examples/CreateCreateBillCreditApplicationRequest_Example"
            }
          }
        ]
      },
      "BillCreditApplication": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether the request was successful."
          }
        },
        "required": [
          "success"
        ],
        "examples": [
          {
            "BillCreditApplication_Example": {
              "$ref": "#/components/examples/BillCreditApplication_Example"
            }
          }
        ]
      },
      "BillCreditApplicationResponse": {
        "type": "object",
        "properties": {
          "bill_credit_application": {
            "$ref": "#/components/schemas/BillCreditApplication"
          }
        },
        "required": [
          "bill_credit_application"
        ],
        "examples": [
          {
            "BillCreditApplicationResponse_Example": {
              "$ref": "#/components/examples/BillCreditApplicationResponse_Example"
            }
          }
        ]
      },
      "CreateBillCreditApplicationResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/BillCreditApplicationResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateBillCreditApplicationResponse_Example": {
              "$ref": "#/components/examples/CreateBillCreditApplicationResponse_Example"
            }
          }
        ]
      },
      "BillCreditMemo": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the bill credit memo."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the bill credit memo."
          },
          "account_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bill credit memo. Represents the account being credited. This is typically the primary Accounts Payable account."
          },
          "vendor_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the bill credit memo."
          },
          "issue_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for when the bill credit memo was issued."
          },
          "document_number": {
            "type": "string",
            "description": "The buyer facing document number of the bill credit memo."
          },
          "remaining_amount": {
            "type": "number",
            "description": "The remaining unapplied amount of the bill credit memo."
          },
          "status": {
            "type": "string",
            "enum": [
              "open",
              "partially_paid",
              "paid",
              "void",
              "draft",
              "unknown",
              "submitted"
            ],
            "description": "The status of the bill credit memo."
          },
          "total_amount": {
            "type": "number",
            "description": "The total amount of the bill credit memo."
          },
          "currency_code": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bill credit memo."
          },
          "memo": {
            "type": [
              "string",
              "null"
            ],
            "description": "The memo of the bill credit memo"
          },
          "linked_bills": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Bill](/rest/version/bills) linked to the bill credit memo."
                },
                "allocated_date": {
                  "type": "string",
                  "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for when the bill credit memo was allocated."
                },
                "allocated_amount": {
                  "type": "number",
                  "description": "The credit amount allocated to the bill."
                }
              },
              "required": [
                "id",
                "allocated_date",
                "allocated_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of Rutter IDs of [BillCreditMemo Payments](/reference/BillCreditMemo-payments) applied against the BillCreditMemo."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bill line item."
                },
                "class_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bill line item. Supported for NetSuite, QuickBooks, and Xero."
                },
                "customer_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the bill line item. Supported for QuickBooks."
                },
                "department_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bill line item. Supported for NetSuite, QuickBooks, and Sage Intacct."
                },
                "location_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bill line item. Supported for NetSuite and Sage Intacct."
                },
                "tax_rate_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Tax Rate](/rest/version/tax-rates) linked to the bill line item."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The description of the bill line item."
                },
                "discount_amount": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The discount amount applied to the bill line item."
                },
                "discount_percentage": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The percentage discount applied to the bill line item."
                },
                "sub_total": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The subtotal of the bill line item, without tax."
                },
                "tax_amount": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The tax amount applied to the bill line item."
                },
                "total_amount": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The total amount of the bill line item. The total amount for line items can either be inclusive of tax, or exclusive of tax. If it's exclusive, it will be the same amount as `sub_total`; if inclusive, it will differ. If the `sub_total` field is null, it cannot be determined."
                },
                "item": {
                  "type": [
                    "object",
                    "null"
                  ],
                  "properties": {
                    "id": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "The Rutter ID of the [Item](/rest/version/items) linked to the bill line item."
                    },
                    "quantity": {
                      "type": [
                        "number",
                        "null"
                      ],
                      "description": "The quantity of items in the bill line item."
                    },
                    "unit_amount": {
                      "type": [
                        "number",
                        "null"
                      ],
                      "description": "The unit amount of the items in the bill line item."
                    }
                  },
                  "required": [
                    "id",
                    "quantity",
                    "unit_amount"
                  ],
                  "additionalProperties": false,
                  "description": "The product or service associated with the bill line item. Supported for Dynamics 365 Business Central, FreeAgent, NetSuite, QuickBooks, QuickBooks Desktop, and Xero."
                }
              },
              "required": [
                "account_id",
                "class_id",
                "customer_id",
                "department_id",
                "location_id",
                "tax_rate_id",
                "description",
                "discount_amount",
                "discount_percentage",
                "sub_total",
                "tax_amount",
                "total_amount",
                "item"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items associated with the BillCreditMemo."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the bill credit memo was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the bill credit memo was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the bill credit memo was last synced by Rutter."
          },
          "platform_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "A URL pointing to the object in the underlying platform. When no URL exists for the specific object, the value may be a larger URL containing the object."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "account_id",
          "vendor_id",
          "issue_date",
          "document_number",
          "remaining_amount",
          "status",
          "total_amount",
          "currency_code",
          "memo",
          "linked_bills",
          "line_items",
          "created_at",
          "updated_at",
          "last_synced_at",
          "platform_url"
        ],
        "examples": [
          {
            "BillCreditMemo_Example": {
              "$ref": "#/components/examples/BillCreditMemo_Example"
            }
          }
        ]
      },
      "ListBillCreditMemoResponseWithConnection": {
        "type": "object",
        "properties": {
          "bill_credit_memos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BillCreditMemo"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bill_credit_memos",
          "connection"
        ],
        "examples": [
          {
            "ListBillCreditMemoResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListBillCreditMemoResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateBillCreditMemo": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bill credit memo. Represents the account being credited. This is typically the primary Accounts Payable account."
          },
          "vendor_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the bill credit memo."
          },
          "issue_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for when the bill credit memo was issued."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bill credit memo."
          },
          "document_number": {
            "type": "string",
            "description": "The document number of the bill credit memo. Supported for QuickBooks and QuickBooks Desktop."
          },
          "memo": {
            "type": "string",
            "description": "The memo of the bill credit memo. Supported for QuickBooks and QuickBooks Desktop."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bill line item. Typically the account type is `expense` or `cost_of_goods_sold`. For NetSuite, please define only one of `line_item.account_id` field or `line_item.item` field, to bill either an expense line_item or an item line_item respectively. For FreeAgent, please define an `account_id` for every line_item. For FreshBooks, please define an `account_id` for every line_item."
                },
                "total_amount": {
                  "type": "number",
                  "description": "The total amount of the bill line item."
                },
                "description": {
                  "type": "string",
                  "description": "The description of the bill line item."
                },
                "item": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "The Rutter ID of the [Item](/rest/version/items) linked to the bill line item. For NetSuite, please defined a `location_id` if the input item is an Inventory Item."
                    },
                    "quantity": {
                      "type": "number",
                      "description": "The quantity of items in the bill line item."
                    },
                    "unit_amount": {
                      "type": "number",
                      "description": "The unit amount of the items in the bill line item."
                    }
                  },
                  "required": [
                    "id",
                    "quantity",
                    "unit_amount"
                  ],
                  "additionalProperties": false,
                  "description": "The product or service associated with the bill line item. For NetSuite, please define only one of `line_item.account_id` field or `line_item.item` field, to bill either an expense line_item or an item line_item respectively. Supported for NetSuite, QuickBooks, QuickBooks Desktop, and Xero."
                }
              },
              "required": [
                "total_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items containing details about the bill credit memo."
          }
        },
        "required": [
          "account_id",
          "vendor_id",
          "issue_date",
          "currency_code",
          "line_items"
        ],
        "examples": [
          {
            "CreateBillCreditMemo_Example": {
              "$ref": "#/components/examples/CreateBillCreditMemo_Example"
            }
          }
        ]
      },
      "CreateCreateBillCreditMemoRequest": {
        "type": "object",
        "properties": {
          "bill_credit_memo": {
            "$ref": "#/components/schemas/CreateBillCreditMemo"
          }
        },
        "required": [
          "bill_credit_memo"
        ],
        "examples": [
          {
            "CreateCreateBillCreditMemoRequest_Example": {
              "$ref": "#/components/examples/CreateCreateBillCreditMemoRequest_Example"
            }
          }
        ]
      },
      "BillCreditMemoResponse": {
        "type": "object",
        "properties": {
          "bill_credit_memo": {
            "$ref": "#/components/schemas/BillCreditMemo"
          }
        },
        "required": [
          "bill_credit_memo"
        ],
        "examples": [
          {
            "BillCreditMemoResponse_Example": {
              "$ref": "#/components/examples/BillCreditMemoResponse_Example"
            }
          }
        ]
      },
      "CreateBillCreditMemoResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/BillCreditMemoResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateBillCreditMemoResponse_Example": {
              "$ref": "#/components/examples/CreateBillCreditMemoResponse_Example"
            }
          }
        ]
      },
      "BillCreditMemoResponseWithConnection": {
        "type": "object",
        "properties": {
          "bill_credit_memo": {
            "$ref": "#/components/schemas/BillCreditMemo"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bill_credit_memo",
          "connection"
        ],
        "examples": [
          {
            "BillCreditMemoResponseWithConnection_Example": {
              "$ref": "#/components/examples/BillCreditMemoResponseWithConnection_Example"
            }
          }
        ]
      },
      "BillPayment": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the bill payment."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the bill payment."
          },
          "account_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bill payment. Represents the account being credited. Typically this is an account of type `bank`."
          },
          "vendor_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the bill payment."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for when the transaction was logged."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bill payment."
          },
          "memo": {
            "type": [
              "string",
              "null"
            ],
            "description": "The memo of the bill payment."
          },
          "reference": {
            "type": [
              "string",
              "null"
            ],
            "description": "The reference identifier of the bill payment. Supported for QuickBooks Desktop."
          },
          "status": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "active",
              "void"
            ],
            "description": "The status of the bill payment."
          },
          "total_amount": {
            "type": [
              "number",
              "null"
            ],
            "description": "The total amount of the bill payment."
          },
          "currency_rate": {
            "type": [
              "string",
              "null"
            ],
            "description": "The exchange rate between the currency of the bill payment and the business default currency."
          },
          "linked_bills": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Bill](/rest/version/bills) linked to the line item."
                },
                "allocated_date": {
                  "type": "string",
                  "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for when the line item payment was made."
                },
                "allocated_amount": {
                  "type": "number",
                  "description": "The total amount of of the allocated payment for this line item."
                }
              },
              "required": [
                "id",
                "allocated_date",
                "allocated_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of bills linked to the bill payment."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the bill payment was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the bill payment was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the bill payment was last synced by Rutter."
          },
          "platform_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "A URL pointing to the object in the underlying platform. When no URL exists for the specific object, the value may be a larger URL containing the object."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "account_id",
          "vendor_id",
          "transaction_date",
          "currency_code",
          "memo",
          "reference",
          "status",
          "total_amount",
          "currency_rate",
          "linked_bills",
          "created_at",
          "updated_at",
          "last_synced_at",
          "platform_url"
        ],
        "examples": [
          {
            "BillPayment_Example": {
              "$ref": "#/components/examples/BillPayment_Example"
            }
          }
        ]
      },
      "ListBillPaymentResponseWithConnection": {
        "type": "object",
        "properties": {
          "bill_payments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BillPayment"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bill_payments",
          "connection"
        ],
        "examples": [
          {
            "ListBillPaymentResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListBillPaymentResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateBillPayment": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID associated with an [account](/rest/version/account). The account must typically correspond to a `bank` type when creating a new bill payment to ensure the flow of funds is logged properly."
          },
          "vendor_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [bill payment](/rest/version/bill-payments) linked to the vendor."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the payment."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bill payment."
          },
          "currency_rate": {
            "type": "number",
            "description": "The exchange rate between the currency of the bill payment and the business default currency. Supported for NetSuite, QuickBooks, Sage Intacct, Xero, and Zoho Books."
          },
          "document_number": {
            "type": "string",
            "description": "The buyer facing document number of the bill payment. Supported for QuickBooks."
          },
          "memo": {
            "type": "string",
            "description": "Description of the the bill payment."
          },
          "linked_bills": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The Rutter ID of the bill you wish to apply the bill payment to."
                },
                "allocated_amount": {
                  "type": "number",
                  "minimum": 0,
                  "description": "Total amount of of the allocated payment for this line item."
                }
              },
              "required": [
                "id",
                "allocated_amount"
              ],
              "additionalProperties": false
            }
          },
          "additional_fields": {
            "type": "object",
            "properties": {
              "location_id": {
                "type": "string",
                "format": "uuid",
                "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bill payment. Supported for NetSuite."
              },
              "reconciled": {
                "type": "boolean",
                "description": "If true, the bill payment will be marked as reconciled. Supported for Xero."
              }
            },
            "additionalProperties": false,
            "description": "Additional fields required only for a narrow set of use cases."
          }
        },
        "required": [
          "account_id",
          "vendor_id",
          "transaction_date",
          "currency_code",
          "linked_bills"
        ],
        "examples": [
          {
            "CreateBillPayment_Example": {
              "$ref": "#/components/examples/CreateBillPayment_Example"
            }
          }
        ]
      },
      "CreateCreateBillPaymentRequest": {
        "type": "object",
        "properties": {
          "bill_payment": {
            "$ref": "#/components/schemas/CreateBillPayment"
          }
        },
        "required": [
          "bill_payment"
        ],
        "examples": [
          {
            "CreateCreateBillPaymentRequest_Example": {
              "$ref": "#/components/examples/CreateCreateBillPaymentRequest_Example"
            }
          }
        ]
      },
      "BillPaymentResponse": {
        "type": "object",
        "properties": {
          "bill_payment": {
            "$ref": "#/components/schemas/BillPayment"
          }
        },
        "required": [
          "bill_payment"
        ],
        "examples": [
          {
            "BillPaymentResponse_Example": {
              "$ref": "#/components/examples/BillPaymentResponse_Example"
            }
          }
        ]
      },
      "CreateBillPaymentResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/BillPaymentResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateBillPaymentResponse_Example": {
              "$ref": "#/components/examples/CreateBillPaymentResponse_Example"
            }
          }
        ]
      },
      "BillPaymentResponseWithConnection": {
        "type": "object",
        "properties": {
          "bill_payment": {
            "$ref": "#/components/schemas/BillPayment"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bill_payment",
          "connection"
        ],
        "examples": [
          {
            "BillPaymentResponseWithConnection_Example": {
              "$ref": "#/components/examples/BillPaymentResponseWithConnection_Example"
            }
          }
        ]
      },
      "UpdateBillPayment": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "void"
            ],
            "description": "Set this field to void a bill payment transaction."
          }
        },
        "required": [
          "status"
        ],
        "examples": [
          {
            "UpdateBillPayment_Example": {
              "$ref": "#/components/examples/UpdateBillPayment_Example"
            }
          }
        ]
      },
      "CreateUpdateBillPaymentRequest": {
        "type": "object",
        "properties": {
          "bill_payment": {
            "$ref": "#/components/schemas/UpdateBillPayment"
          }
        },
        "required": [
          "bill_payment"
        ],
        "examples": [
          {
            "CreateUpdateBillPaymentRequest_Example": {
              "$ref": "#/components/examples/CreateUpdateBillPaymentRequest_Example"
            }
          }
        ]
      },
      "ListBillsParams": {
        "type": "object",
        "properties": {
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          },
          "cursor": {
            "type": "string",
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response."
          },
          "limit": {
            "type": "integer",
            "description": "Used to limit the number of returned objects. Defaults to 50."
          },
          "filter": {
            "type": "string",
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365."
          },
          "sort": {
            "type": "string",
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`."
          },
          "expand": {
            "type": "string",
            "enum": [
              "platform_data"
            ],
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object)."
          },
          "document_number": {
            "type": "string",
            "description": "**Deprecated** - use `filter` instead. The exact document number to filter on. Not supported on Sage Intacct, or Dynamics 365."
          },
          "last_synced_at_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "updated_at_max": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "updated_at_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "force_fetch": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Used to force a response even if the underlying connection has not finished its initial sync."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "Bill": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the bill."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the bill."
          },
          "account_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bill. Represents the AP account being credited and typically the account type is `accounts_payable`."
          },
          "payment_terms_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "An array of Rutter IDs of [Payment Terms](/rest/version/payment-terms) linked to the bill."
          },
          "subsidiary_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the bill. Supported for NetSuite."
          },
          "vendor_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the bill."
          },
          "due_date": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the due date of the bill."
          },
          "issue_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the issue date of the bill."
          },
          "amount_due": {
            "type": "number",
            "description": "The current amount due on the bill. Represents the remainder after bill payments or bill credit memos are applied against the total amount."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bill."
          },
          "status": {
            "type": "string",
            "enum": [
              "open",
              "partially_paid",
              "paid",
              "void",
              "draft",
              "unknown",
              "submitted"
            ],
            "description": "The status of the bill."
          },
          "total_amount": {
            "type": "number",
            "description": "The total amount of the bill."
          },
          "document_number": {
            "type": [
              "string",
              "null"
            ],
            "description": "The buyer facing document number of the bill."
          },
          "memo": {
            "type": [
              "string",
              "null"
            ],
            "description": "The memo of the bill."
          },
          "sub_total": {
            "type": [
              "number",
              "null"
            ],
            "description": "The subtotal of the bill, without the tax amount."
          },
          "tax_amount": {
            "type": [
              "number",
              "null"
            ],
            "description": "The tax amount applied to the bill."
          },
          "total_discount": {
            "type": [
              "number",
              "null"
            ],
            "description": "The discount amount applied to the bill."
          },
          "linked_purchase_orders": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                }
              },
              "required": [
                "id"
              ],
              "additionalProperties": false
            },
            "description": "An array of Rutter IDs of [Purchase Orders](/rest/version/purchase-orders) linked to the bill."
          },
          "currency_rate": {
            "type": [
              "string",
              "null"
            ],
            "description": "The exchange rate between the currency of the bill and the business default currency. Supported for NetSuite, QuickBooks, and Xero."
          },
          "linked_credit_memos": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "allocated_date": {
                  "type": "string"
                },
                "allocated_amount": {
                  "type": "number"
                }
              },
              "required": [
                "id",
                "allocated_date",
                "allocated_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of Rutter IDs of [Bill Credit Memos](/reference/bill-credit-memos) applied against the bill."
          },
          "linked_payments": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "allocated_date": {
                  "type": "string"
                },
                "allocated_amount": {
                  "type": "number"
                }
              },
              "required": [
                "id",
                "allocated_date",
                "allocated_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of Rutter IDs of [Bill Payments](/reference/bill-payments) applied against the bill."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bill line item."
                },
                "class_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bill line item. Supported for NetSuite, QuickBooks, and Xero."
                },
                "customer_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the bill line item. Supported for QuickBooks."
                },
                "department_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bill line item. Supported for NetSuite, QuickBooks, and Sage Intacct."
                },
                "location_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bill line item. Supported for NetSuite and Sage Intacct."
                },
                "tax_rate_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Tax Rate](/rest/version/tax-rates) linked to the bill line item."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The description of the bill line item."
                },
                "discount_amount": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The discount amount applied to the bill line item."
                },
                "discount_percentage": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The percentage discount applied to the bill line item."
                },
                "sub_total": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The subtotal of the bill line item, without tax."
                },
                "tax_amount": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The tax amount applied to the bill line item."
                },
                "total_amount": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The total amount of the bill line item. The total amount for line items can either be inclusive of tax, or exclusive of tax. If it's exclusive, it will be the same amount as `sub_total`; if inclusive, it will differ. If the `sub_total` field is null, it cannot be determined."
                },
                "item": {
                  "type": [
                    "object",
                    "null"
                  ],
                  "properties": {
                    "id": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "The Rutter ID of the [Item](/rest/version/items) linked to the bill line item."
                    },
                    "quantity": {
                      "type": [
                        "number",
                        "null"
                      ],
                      "description": "The quantity of items in the bill line item."
                    },
                    "unit_amount": {
                      "type": [
                        "number",
                        "null"
                      ],
                      "description": "The unit amount of the items in the bill line item."
                    }
                  },
                  "required": [
                    "id",
                    "quantity",
                    "unit_amount"
                  ],
                  "additionalProperties": false,
                  "description": "The product or service associated with the bill line item. Supported for Dynamics 365 Business Central, FreeAgent, NetSuite, QuickBooks, QuickBooks Desktop, and Xero."
                }
              },
              "required": [
                "account_id",
                "class_id",
                "customer_id",
                "department_id",
                "location_id",
                "tax_rate_id",
                "description",
                "discount_amount",
                "discount_percentage",
                "sub_total",
                "tax_amount",
                "total_amount",
                "item"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items associated with the bill."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the bill was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the bill was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the bill was last synced by Rutter."
          },
          "platform_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "A URL pointing to the object in the underlying platform. When no URL exists for the specific object, the value may be a larger URL containing the object."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "account_id",
          "payment_terms_id",
          "subsidiary_id",
          "vendor_id",
          "due_date",
          "issue_date",
          "amount_due",
          "currency_code",
          "status",
          "total_amount",
          "document_number",
          "memo",
          "sub_total",
          "tax_amount",
          "total_discount",
          "linked_purchase_orders",
          "linked_credit_memos",
          "linked_payments",
          "line_items",
          "created_at",
          "updated_at",
          "last_synced_at",
          "platform_url"
        ],
        "examples": [
          {
            "Bill_Example": {
              "$ref": "#/components/examples/Bill_Example"
            }
          }
        ]
      },
      "ListBillResponseWithConnection": {
        "type": "object",
        "properties": {
          "bills": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Bill"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bills",
          "connection"
        ],
        "examples": [
          {
            "ListBillResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListBillResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateBill": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bill. Represents the AP account being credited and typically the account type is `accounts_payable`. Supported for NetSuite."
          },
          "payment_terms_id": {
            "type": "string",
            "description": "An array of Rutter IDs of [Payment Terms](/rest/version/payment-terms) linked to the bill. Supported for NetSuite and QuickBooks."
          },
          "subsidiary_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the bill. Supported for NetSuite."
          },
          "vendor_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the bill."
          },
          "due_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the due date of the bill."
          },
          "issue_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the issue date of the bill."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the bill."
          },
          "document_number": {
            "type": "string",
            "description": "The buyer facing document number of the bill."
          },
          "memo": {
            "type": "string",
            "description": "The memo of the bill."
          },
          "currency_rate": {
            "type": "string",
            "description": "The exchange rate between the currency of the bill and the business default currency. Supported for NetSuite, QuickBooks, and Xero."
          },
          "linked_purchase_orders": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                }
              },
              "required": [
                "id"
              ],
              "additionalProperties": false
            },
            "description": "An array of Rutter IDs of [Purchase Orders](/rest/version/purchase-orders) linked to the bill."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bill line item. Typically the account type is `expense` or `cost_of_goods_sold`. For NetSuite, please define only one of `line_item.account_id` field or `line_item.item` field, to bill either an expense line_item or an item line_item respectively. For FreeAgent, please define an `account_id` for every line_item. For FreshBooks, please define an `account_id` for every line_item."
                },
                "class_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bill line item. Supported for NetSuite, QuickBooks, and Xero."
                },
                "customer_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the bill line item. Supported for QuickBooks and QuickBooks Desktop."
                },
                "department_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bill line item. Supported for NetSuite and QuickBooks."
                },
                "discount_item_id": {
                  "type": "string",
                  "description": "The Rutter ID of the [Discount Item](/rest/version/items) linked to the bill line item. Supported for NetSuite."
                },
                "location_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bill line item. Supported for NetSuite."
                },
                "tax_rate_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Tax Rate](/rest/version/tax-rates) linked to the bill line item. Supported for NetSuite, QuickBooks, and Xero."
                },
                "total_amount": {
                  "type": "number",
                  "description": "The total amount of the bill line item."
                },
                "description": {
                  "type": "string",
                  "description": "The description of the bill line item."
                },
                "discount_amount": {
                  "type": "number",
                  "minimum": 0,
                  "description": "The discount amount to apply on the bill line item."
                },
                "item": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "The Rutter ID of the [Item](/rest/version/items) linked to the bill line item. For NetSuite, please defined a `location_id` if the input item is an Inventory Item."
                    },
                    "quantity": {
                      "type": "number",
                      "description": "The quantity of items in the bill line item."
                    },
                    "unit_amount": {
                      "type": "number",
                      "description": "The unit amount of the items in the bill line item."
                    }
                  },
                  "required": [
                    "id",
                    "quantity",
                    "unit_amount"
                  ],
                  "additionalProperties": false,
                  "description": "The product or service associated with the bill line item. For NetSuite, please define only one of `line_item.account_id` field or `line_item.item` field, to bill either an expense line_item or an item line_item respectively. Supported for NetSuite, QuickBooks, QuickBooks Desktop, and Xero."
                }
              },
              "required": [
                "total_amount"
              ],
              "additionalProperties": false
            }
          },
          "additional_fields": {
            "type": "object",
            "properties": {
              "class_id": {
                "type": "string",
                "format": "uuid",
                "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bill. Supported for NetSuite."
              },
              "department_id": {
                "type": "string",
                "format": "uuid",
                "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bill. Supported for NetSuite."
              },
              "location_id": {
                "type": "string",
                "format": "uuid",
                "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bill. Supported for NetSuite."
              },
              "tax_inclusive": {
                "type": "boolean",
                "description": "Specifies if the total amount of the bill includes the applicable taxes, or if it is exclusive of taxes. Supported for NetSuite."
              },
              "tax_rate_percent": {
                "type": "number",
                "description": "The tax rate percentage to apply to the line item, e.g. 10%. Supported for FreshBooks."
              }
            },
            "additionalProperties": false,
            "description": "Additional fields required only for a narrow set of use cases."
          }
        },
        "required": [
          "vendor_id",
          "issue_date",
          "currency_code",
          "line_items"
        ],
        "examples": [
          {
            "CreateBill_Example": {
              "$ref": "#/components/examples/CreateBill_Example"
            }
          }
        ]
      },
      "CreateCreateBillRequest": {
        "type": "object",
        "properties": {
          "bill": {
            "$ref": "#/components/schemas/CreateBill"
          }
        },
        "required": [
          "bill"
        ],
        "examples": [
          {
            "CreateCreateBillRequest_Example": {
              "$ref": "#/components/examples/CreateCreateBillRequest_Example"
            }
          }
        ]
      },
      "BillResponse": {
        "type": "object",
        "properties": {
          "bill": {
            "$ref": "#/components/schemas/Bill"
          }
        },
        "required": [
          "bill"
        ],
        "examples": [
          {
            "BillResponse_Example": {
              "$ref": "#/components/examples/BillResponse_Example"
            }
          }
        ]
      },
      "CreateBillResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/BillResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateBillResponse_Example": {
              "$ref": "#/components/examples/CreateBillResponse_Example"
            }
          }
        ]
      },
      "BillResponseWithConnection": {
        "type": "object",
        "properties": {
          "bill": {
            "$ref": "#/components/schemas/Bill"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "bill",
          "connection"
        ],
        "examples": [
          {
            "BillResponseWithConnection_Example": {
              "$ref": "#/components/examples/BillResponseWithConnection_Example"
            }
          }
        ]
      },
      "UpdateBillBody": {
        "type": "object",
        "properties": {
          "vendor_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the bill."
          },
          "due_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the due date of the bill."
          },
          "issue_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the issue date of the bill."
          },
          "document_number": {
            "type": "string",
            "description": "The buyer facing document number of the bill."
          },
          "memo": {
            "type": "string",
            "description": "The memo of the bill."
          },
          "status": {
            "type": "string",
            "enum": [
              "submitted",
              "open"
            ],
            "description": "The status of the bill. Supported for NetSuite."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the bill line item. Typically the account type is `expense` or `cost_of_goods_sold`. For NetSuite, please define only one of `line_item.account_id` field or `line_item.item` field, to bill either an expense line_item or an item line_item respectively. For FreeAgent, please define an `account_id` for every line_item. For FreshBooks, please define an `account_id` for every line_item."
                },
                "class_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bill line item. Supported for NetSuite, QuickBooks, and Xero."
                },
                "customer_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the bill line item. Supported for QuickBooks and QuickBooks Desktop."
                },
                "department_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bill line item. Supported for NetSuite and QuickBooks."
                },
                "discount_item_id": {
                  "type": "string",
                  "description": "The Rutter ID of the [Discount Item](/rest/version/items) linked to the bill line item. Supported for NetSuite."
                },
                "location_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bill line item. Supported for NetSuite."
                },
                "tax_rate_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Tax Rate](/rest/version/tax-rates) linked to the bill line item. Supported for NetSuite, QuickBooks, and Xero."
                },
                "total_amount": {
                  "type": "number",
                  "description": "The total amount of the bill line item."
                },
                "description": {
                  "type": "string",
                  "description": "The description of the bill line item."
                },
                "discount_amount": {
                  "type": "number",
                  "minimum": 0,
                  "description": "The discount amount to apply on the bill line item."
                },
                "item": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "The Rutter ID of the [Item](/rest/version/items) linked to the bill line item. For NetSuite, please defined a `location_id` if the input item is an Inventory Item."
                    },
                    "quantity": {
                      "type": "number",
                      "description": "The quantity of items in the bill line item."
                    },
                    "unit_amount": {
                      "type": "number",
                      "description": "The unit amount of the items in the bill line item."
                    }
                  },
                  "required": [
                    "id",
                    "quantity",
                    "unit_amount"
                  ],
                  "additionalProperties": false,
                  "description": "The product or service associated with the bill line item. For NetSuite, please define only one of `line_item.account_id` field or `line_item.item` field, to bill either an expense line_item or an item line_item respectively. Supported for NetSuite, QuickBooks, QuickBooks Desktop, and Xero."
                }
              },
              "required": [
                "total_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items associated with the bill. If provided, the old `line_items` will be removed and completely replaced by the new `line_items` input. Supported for NetSuite, QuickBooks, Sage Business Cloud, and Xero."
          },
          "additional_fields": {
            "type": "object",
            "properties": {
              "class_id": {
                "type": "string",
                "format": "uuid",
                "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the bill. Supported for NetSuite."
              },
              "department_id": {
                "type": "string",
                "format": "uuid",
                "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the bill. Supported for NetSuite."
              },
              "location_id": {
                "type": "string",
                "format": "uuid",
                "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the bill. Supported for NetSuite."
              }
            },
            "additionalProperties": false,
            "description": "Additional fields required only for a narrow set of use cases."
          }
        },
        "examples": [
          {
            "UpdateBillBody_Example": {
              "$ref": "#/components/examples/UpdateBillBody_Example"
            }
          }
        ]
      },
      "CreateUpdateBillBodyRequest": {
        "type": "object",
        "properties": {
          "bill": {
            "$ref": "#/components/schemas/UpdateBillBody"
          }
        },
        "required": [
          "bill"
        ],
        "examples": [
          {
            "CreateUpdateBillBodyRequest_Example": {
              "$ref": "#/components/examples/CreateUpdateBillBodyRequest_Example"
            }
          }
        ]
      },
      "DeleteBill": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "enum": [
              "deleted",
              "not_found"
            ],
            "description": "Returns the status of the requested object: `deleted` indicates object was deleted by this operation, whereas `not_found` indicates object was not found (allowing us to make DELETE operations idempotent)."
          },
          "success": {
            "type": "boolean",
            "description": "Indicates whether deletion was successful"
          }
        },
        "required": [
          "code",
          "success"
        ],
        "examples": [
          {
            "DeleteBill_Example": {
              "$ref": "#/components/examples/DeleteBill_Example"
            }
          }
        ]
      },
      "DeleteBillResponse": {
        "type": "object",
        "properties": {
          "deleted_bill": {
            "$ref": "#/components/schemas/DeleteBill"
          }
        },
        "required": [
          "deleted_bill"
        ],
        "examples": [
          {
            "DeleteBillResponse_Example": {
              "$ref": "#/components/examples/DeleteBillResponse_Example"
            }
          }
        ]
      },
      "CreateDeleteBillResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/DeleteBillResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateDeleteBillResponse_Example": {
              "$ref": "#/components/examples/CreateDeleteBillResponse_Example"
            }
          }
        ]
      },
      "BillAttachmentsResponse": {
        "type": "object",
        "properties": {
          "attachments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Attachment"
            }
          }
        },
        "required": [
          "attachments"
        ],
        "examples": [
          {
            "BillAttachmentsResponse_Example": {
              "$ref": "#/components/examples/BillAttachmentsResponse_Example"
            }
          }
        ]
      },
      "CashFlowStatement": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the cash flow statement."
          },
          "start_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the start date of the cash flow statement."
          },
          "end_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the end date of the cash flow statement."
          },
          "currency_code": {
            "type": "string",
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the cash flow statement."
          },
          "ending_balance": {
            "type": [
              "string",
              "null"
            ],
            "description": "The amount of cash and cash equivalents at the end of the given period."
          },
          "starting_balance": {
            "type": [
              "string",
              "null"
            ],
            "description": "The amount of cash and cash equivalents at the start of the given period."
          },
          "total_financing": {
            "type": [
              "string",
              "null"
            ],
            "description": "The total amount of Financing Activities."
          },
          "total_investing": {
            "type": [
              "string",
              "null"
            ],
            "description": "The total amount of Investing Activities."
          },
          "total_operating": {
            "type": [
              "string",
              "null"
            ],
            "description": "The total amount of Operating Activities."
          },
          "gross_cash_in_flow": {
            "type": [
              "string",
              "null"
            ]
          },
          "gross_cash_out_flow": {
            "type": [
              "string",
              "null"
            ]
          },
          "financing_activities": {
            "$ref": "#/components/schemas/GeneralLedgerLineItem"
          },
          "investing_activities": {
            "$ref": "#/components/schemas/GeneralLedgerLineItem"
          },
          "operating_activities": {
            "$ref": "#/components/schemas/GeneralLedgerLineItem"
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the cash flow statement was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the cash flow statement was last updated."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "start_date",
          "end_date",
          "currency_code",
          "ending_balance",
          "starting_balance",
          "total_financing",
          "total_investing",
          "total_operating",
          "financing_activities",
          "investing_activities",
          "operating_activities",
          "created_at",
          "updated_at"
        ],
        "examples": [
          {
            "CashFlowStatement_Example": {
              "$ref": "#/components/examples/CashFlowStatement_Example"
            }
          }
        ]
      },
      "ListCashFlowStatementResponseWithConnection": {
        "type": "object",
        "properties": {
          "cash_flows": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CashFlowStatement"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "cash_flows",
          "connection"
        ],
        "examples": [
          {
            "ListCashFlowStatementResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListCashFlowStatementResponseWithConnection_Example"
            }
          }
        ]
      },
      "Class": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the class."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the class."
          },
          "parent_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Parent Class](/rest/version/classes) linked to the class."
          },
          "has_children": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Describes whether the class has child classes."
          },
          "name": {
            "type": [
              "string",
              "null"
            ],
            "description": "The name of the class."
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "archived"
            ],
            "description": "The status of the class."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the class was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the class was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the class was last synced by Rutter."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "parent_id",
          "has_children",
          "name",
          "created_at",
          "updated_at",
          "last_synced_at"
        ],
        "examples": [
          {
            "Class_Example": {
              "$ref": "#/components/examples/Class_Example"
            }
          }
        ]
      },
      "ListClassResponseWithConnection": {
        "type": "object",
        "properties": {
          "classes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Class"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "classes",
          "connection"
        ],
        "examples": [
          {
            "ListClassResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListClassResponseWithConnection_Example"
            }
          }
        ]
      },
      "ClassResponseWithConnection": {
        "type": "object",
        "properties": {
          "class": {
            "$ref": "#/components/schemas/Class"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "class",
          "connection"
        ],
        "examples": [
          {
            "ClassResponseWithConnection_Example": {
              "$ref": "#/components/examples/ClassResponseWithConnection_Example"
            }
          }
        ]
      },
      "CompanyInfo_2024_04_30": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the object."
          },
          "platform_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The platform specific ID of the object."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the company."
          },
          "name": {
            "type": "string",
            "description": "The DBA name of the company."
          },
          "addresses": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "A list of addresses linked to the company."
          },
          "legal_name": {
            "type": [
              "string",
              "null"
            ],
            "description": "The legal name of the company."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the object was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the object was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the company info was last synced by Rutter."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "currency_code",
          "name",
          "addresses",
          "legal_name",
          "created_at",
          "updated_at",
          "last_synced_at"
        ],
        "examples": [
          {
            "CompanyInfo_2024_04_30_Example": {
              "$ref": "#/components/examples/CompanyInfo_2024_04_30_Example"
            }
          }
        ]
      },
      "CompanyInfo_2024_04_30ResponseWithConnection": {
        "type": "object",
        "properties": {
          "company_info": {
            "$ref": "#/components/schemas/CompanyInfo_2024_04_30"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "company_info",
          "connection"
        ],
        "examples": [
          {
            "CompanyInfo_2024_04_30ResponseWithConnection_Example": {
              "$ref": "#/components/examples/CompanyInfo_2024_04_30ResponseWithConnection_Example"
            }
          }
        ]
      },
      "Currency": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the object."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the currency."
          },
          "currency_name": {
            "type": [
              "string",
              "null"
            ],
            "description": "The currency name."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the object was created."
          },
          "updated_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the object was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the currency was last synced by Rutter."
          }
        },
        "required": [
          "id",
          "currency_code",
          "currency_name",
          "created_at",
          "updated_at",
          "last_synced_at"
        ],
        "examples": [
          {
            "Currency_Example": {
              "$ref": "#/components/examples/Currency_Example"
            }
          }
        ]
      },
      "ListCurrencyResponseWithConnection": {
        "type": "object",
        "properties": {
          "currencies": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Currency"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "currencies",
          "connection"
        ],
        "examples": [
          {
            "ListCurrencyResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListCurrencyResponseWithConnection_Example"
            }
          }
        ]
      },
      "CurrencyResponseWithConnection": {
        "type": "object",
        "properties": {
          "currency": {
            "$ref": "#/components/schemas/Currency"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "currency",
          "connection"
        ],
        "examples": [
          {
            "CurrencyResponseWithConnection_Example": {
              "$ref": "#/components/examples/CurrencyResponseWithConnection_Example"
            }
          }
        ]
      },
      "CustomersParams": {
        "type": "object",
        "properties": {
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          },
          "cursor": {
            "type": "string",
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response."
          },
          "limit": {
            "type": "integer",
            "description": "Used to limit the number of returned objects. Defaults to 50."
          },
          "filter": {
            "type": "string",
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365."
          },
          "sort": {
            "type": "string",
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`."
          },
          "expand": {
            "type": "string",
            "enum": [
              "platform_data"
            ],
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object)."
          },
          "customer_name": {
            "type": "string",
            "description": "**Deprecated** - use `filter` instead. The exact customer name to filter on. Not supported on Sage Intacct, or Dynamics 365."
          },
          "last_synced_at_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "updated_at_max": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "updated_at_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "force_fetch": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Used to force a response even if the underlying connection has not finished its initial sync."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "AccountingCustomer": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the customer."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the customer."
          },
          "parent_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Parent Customer](/rest/version/customers) linked to the customer. Supported for QuickBooks."
          },
          "subsidiary_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the customer. Supported for NetSuite."
          },
          "status": {
            "type": "string",
            "enum": [
              "ACTIVE",
              "INACTIVE",
              "UNKNOWN"
            ],
            "description": "The status of the customer."
          },
          "contact_name": {
            "type": [
              "string",
              "null"
            ],
            "description": "The name of the primary contact of the customer."
          },
          "currency_code": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the customer."
          },
          "customer_name": {
            "type": [
              "string",
              "null"
            ],
            "description": "The business name of the customer."
          },
          "email": {
            "type": [
              "string",
              "null"
            ],
            "description": "The email of the customer."
          },
          "phone": {
            "type": [
              "string",
              "null"
            ],
            "description": "The phone number of the customer."
          },
          "registration_number": {
            "type": [
              "string",
              "null"
            ],
            "description": "The registration number of the customer."
          },
          "tax_number": {
            "type": [
              "string",
              "null"
            ],
            "description": "The tax number of the customer."
          },
          "addresses": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "billing",
                    "shipping",
                    "po_box",
                    "unknown"
                  ],
                  "description": "The type of the address."
                },
                "address1": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The first address line of the address."
                },
                "address2": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The second address line of the address."
                },
                "city": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The city of the address."
                },
                "country": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The country of the address."
                },
                "postal_code": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The postal code of the address."
                },
                "region": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The region or state of the address."
                }
              },
              "required": [
                "type",
                "address1",
                "address2",
                "city",
                "country",
                "postal_code",
                "region"
              ],
              "additionalProperties": false
            },
            "description": "An array of addresses linked to the customer."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the customer was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the customer was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the customer was last synced by Rutter."
          },
          "platform_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "A URL pointing to the object in the underlying platform. When no URL exists for the specific object, the value may be a larger URL containing the object."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "subsidiary_id",
          "status",
          "contact_name",
          "currency_code",
          "customer_name",
          "email",
          "phone",
          "registration_number",
          "tax_number",
          "addresses",
          "created_at",
          "updated_at",
          "last_synced_at",
          "platform_url"
        ],
        "examples": [
          {
            "AccountingCustomer_Example": {
              "$ref": "#/components/examples/AccountingCustomer_Example"
            }
          }
        ]
      },
      "ListAccountingCustomerResponseWithConnection": {
        "type": "object",
        "properties": {
          "customers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AccountingCustomer"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "customers",
          "connection"
        ],
        "examples": [
          {
            "ListAccountingCustomerResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListAccountingCustomerResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateAccountingCustomer": {
        "type": "object",
        "properties": {
          "subsidiary_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the customer. Supported for NetSuite."
          },
          "contact_name": {
            "type": "string",
            "description": "The name of the contact person of the customer. This will frequently be the name of the person who owns the contract."
          },
          "customer_name": {
            "type": "string",
            "description": "The name of the customer. This will frequently be the company name."
          },
          "email": {
            "type": "string",
            "description": "The email address of the customer contact."
          },
          "phone": {
            "type": "string",
            "description": "The phone number of the customer contact."
          },
          "addresses": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "billing",
                    "shipping",
                    "po_box",
                    "unknown"
                  ],
                  "description": "The type of the address."
                },
                "address1": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The first address line of the address."
                },
                "address2": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The second address line of the address."
                },
                "city": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The city of the address."
                },
                "country": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The country of the address."
                },
                "postal_code": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The postal code of the address."
                },
                "region": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The region or state of the address."
                }
              },
              "required": [
                "type",
                "address1",
                "address2",
                "city",
                "country",
                "postal_code",
                "region"
              ],
              "additionalProperties": false
            },
            "description": "An array of addresses linked to the customer. Supported for QuickBooks and QuickBooks Desktop."
          },
          "additional_fields": {
            "type": "object",
            "properties": {
              "parent_id": {
                "type": "string",
                "description": "The Rutter ID of the [Parent Customer](/rest/version/customers) linked to the customer. Supported for QuickBooks."
              },
              "currency_code": {
                "type": "string",
                "enum": [
                  "AED",
                  "AFN",
                  "ALL",
                  "AMD",
                  "ANG",
                  "AOA",
                  "ARS",
                  "AUD",
                  "AWG",
                  "AZN",
                  "BAM",
                  "BBD",
                  "BDT",
                  "BGN",
                  "BHD",
                  "BIF",
                  "BMD",
                  "BND",
                  "BOB",
                  "BOV",
                  "BRL",
                  "BSD",
                  "BTN",
                  "BWP",
                  "BYR",
                  "BZD",
                  "CAD",
                  "CDF",
                  "CHE",
                  "CHF",
                  "CHW",
                  "CLF",
                  "CLP",
                  "CNY",
                  "COP",
                  "COU",
                  "CRC",
                  "CUC",
                  "CUP",
                  "CVE",
                  "CZK",
                  "DJF",
                  "DKK",
                  "DOP",
                  "DZD",
                  "EGP",
                  "ERN",
                  "ETB",
                  "EUR",
                  "FJD",
                  "FKP",
                  "GBP",
                  "GEL",
                  "GHS",
                  "GIP",
                  "GMD",
                  "GNF",
                  "GTQ",
                  "GYD",
                  "HKD",
                  "HNL",
                  "HRK",
                  "HTG",
                  "HUF",
                  "IDR",
                  "ILS",
                  "INR",
                  "IQD",
                  "IRR",
                  "ISK",
                  "JMD",
                  "JOD",
                  "JPY",
                  "KES",
                  "KGS",
                  "KHR",
                  "KMF",
                  "KPW",
                  "KRW",
                  "KWD",
                  "KYD",
                  "KZT",
                  "LAK",
                  "LBP",
                  "LKR",
                  "LRD",
                  "LSL",
                  "LTL",
                  "LVL",
                  "LYD",
                  "MAD",
                  "MDL",
                  "MGA",
                  "MKD",
                  "MMK",
                  "MNT",
                  "MOP",
                  "MRO",
                  "MUR",
                  "MVR",
                  "MWK",
                  "MXN",
                  "MXV",
                  "MYR",
                  "MZN",
                  "NAD",
                  "NGN",
                  "NIO",
                  "NOK",
                  "NPR",
                  "NZD",
                  "OMR",
                  "PAB",
                  "PEN",
                  "PGK",
                  "PHP",
                  "PKR",
                  "PLN",
                  "PYG",
                  "QAR",
                  "RON",
                  "RSD",
                  "RUB",
                  "RWF",
                  "SAR",
                  "SBD",
                  "SCR",
                  "SDG",
                  "SEK",
                  "SGD",
                  "SHP",
                  "SLL",
                  "SOS",
                  "SRD",
                  "SSP",
                  "STD",
                  "SVC",
                  "SYP",
                  "SZL",
                  "THB",
                  "TJS",
                  "TMT",
                  "TND",
                  "TOP",
                  "TRY",
                  "TTD",
                  "TWD",
                  "TZS",
                  "UAH",
                  "UGX",
                  "USD",
                  "USN",
                  "USS",
                  "UYI",
                  "UYU",
                  "UYW",
                  "UZS",
                  "VEF",
                  "VND",
                  "VUV",
                  "WST",
                  "XAF",
                  "XAG",
                  "XAU",
                  "XBA",
                  "XBB",
                  "XBC",
                  "XBD",
                  "XCD",
                  "XDR",
                  "XFU",
                  "XOF",
                  "XPD",
                  "XPF",
                  "XPT",
                  "XTS",
                  "XXX",
                  "YER",
                  "ZAR",
                  "ZMW"
                ],
                "description": "FreshBooks only: required to create customer."
              },
              "language": {
                "type": "string",
                "description": "FreshBooks only: required to create customer."
              }
            },
            "additionalProperties": false,
            "description": "Additional fields required only for a narrow set of use cases."
          }
        },
        "required": [
          "contact_name",
          "customer_name",
          "email",
          "phone"
        ],
        "examples": [
          {
            "CreateAccountingCustomer_Example": {
              "$ref": "#/components/examples/CreateAccountingCustomer_Example"
            }
          }
        ]
      },
      "CreateCreateAccountingCustomerRequest": {
        "type": "object",
        "properties": {
          "customer": {
            "$ref": "#/components/schemas/CreateAccountingCustomer"
          }
        },
        "required": [
          "customer"
        ],
        "examples": [
          {
            "CreateCreateAccountingCustomerRequest_Example": {
              "$ref": "#/components/examples/CreateCreateAccountingCustomerRequest_Example"
            }
          }
        ]
      },
      "AccountingCustomerResponse": {
        "type": "object",
        "properties": {
          "customer": {
            "$ref": "#/components/schemas/AccountingCustomer"
          }
        },
        "required": [
          "customer"
        ],
        "examples": [
          {
            "AccountingCustomerResponse_Example": {
              "$ref": "#/components/examples/AccountingCustomerResponse_Example"
            }
          }
        ]
      },
      "CreateAccountingCustomerResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/AccountingCustomerResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateAccountingCustomerResponse_Example": {
              "$ref": "#/components/examples/CreateAccountingCustomerResponse_Example"
            }
          }
        ]
      },
      "AccountingCustomerResponseWithConnection": {
        "type": "object",
        "properties": {
          "customer": {
            "$ref": "#/components/schemas/AccountingCustomer"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "customer",
          "connection"
        ],
        "examples": [
          {
            "AccountingCustomerResponseWithConnection_Example": {
              "$ref": "#/components/examples/AccountingCustomerResponseWithConnection_Example"
            }
          }
        ]
      },
      "UpdateAccountingCustomer": {
        "type": "object",
        "properties": {
          "contact_name": {
            "type": "string",
            "description": "The name of the contact person for the customer. This will frequently be the name of the person who owns the contract."
          },
          "customer_name": {
            "type": "string",
            "description": "The name of the customer. This will frequently be the company name."
          },
          "email": {
            "type": "string",
            "description": "The email address of the customer contact."
          },
          "phone": {
            "type": "string",
            "description": "The phone number of the customer contact."
          },
          "addresses": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "billing",
                    "shipping",
                    "po_box",
                    "unknown"
                  ],
                  "description": "The type of the address."
                },
                "address1": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The first address line of the address."
                },
                "address2": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The second address line of the address."
                },
                "city": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The city of the address."
                },
                "country": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The country of the address."
                },
                "postal_code": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The postal code of the address."
                },
                "region": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The region or state of the address."
                }
              },
              "required": [
                "type",
                "address1",
                "address2",
                "city",
                "country",
                "postal_code",
                "region"
              ],
              "additionalProperties": false
            },
            "description": "An array of addresses linked to the customer. Supported for QuickBooks."
          },
          "additional_fields": {
            "type": "object",
            "properties": {
              "parent_id": {
                "type": "string",
                "description": "The Rutter ID of the [Parent Customer](/rest/version/customers) linked to the customer. Supported for QuickBooks."
              }
            },
            "additionalProperties": false,
            "description": "Additional fields required only for a narrow set of use cases."
          }
        }
      },
      "CreateUpdateAccountingCustomerRequest": {
        "type": "object",
        "properties": {
          "customer": {
            "$ref": "#/components/schemas/UpdateAccountingCustomer"
          }
        },
        "required": [
          "customer"
        ]
      },
      "Department": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the department."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the department."
          },
          "parent_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Parent Department](/rest/version/departments) linked to the department."
          },
          "has_children": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Describes whether the department has child departments."
          },
          "name": {
            "type": [
              "string",
              "null"
            ],
            "description": "The name of the department."
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "archived"
            ],
            "description": "The status of the department."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the department was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the department was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the department was last synced by Rutter."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "parent_id",
          "has_children",
          "name",
          "created_at",
          "updated_at",
          "last_synced_at"
        ],
        "examples": [
          {
            "Department_Example": {
              "$ref": "#/components/examples/Department_Example"
            }
          }
        ]
      },
      "ListDepartmentResponseWithConnection": {
        "type": "object",
        "properties": {
          "departments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Department"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "departments",
          "connection"
        ],
        "examples": [
          {
            "ListDepartmentResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListDepartmentResponseWithConnection_Example"
            }
          }
        ]
      },
      "DepartmentResponseWithConnection": {
        "type": "object",
        "properties": {
          "department": {
            "$ref": "#/components/schemas/Department"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "department",
          "connection"
        ],
        "examples": [
          {
            "DepartmentResponseWithConnection_Example": {
              "$ref": "#/components/examples/DepartmentResponseWithConnection_Example"
            }
          }
        ]
      },
      "ListExpensesPaginationParams": {
        "type": "object",
        "properties": {
          "access_token": {
            "type": "string",
            "format": "uuid",
            "description": "The access token of the connection."
          },
          "cursor": {
            "type": "string",
            "description": "Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response."
          },
          "limit": {
            "type": "integer",
            "description": "Used to limit the number of returned objects. Defaults to 50."
          },
          "filter": {
            "type": "string",
            "description": "Used to specify criteria to filter out the objects returned. Supports all `filterable` fields. Check [Filtering Objects](/rest/version/basics#filtering-objects) for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365."
          },
          "sort": {
            "type": "string",
            "description": "Used to sort the returned objects, e.g. `last_synced_at ASC`. Supports all `filterable` fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only `updated_at` and `last_synced_at` fields are supported. If a value is provided but `ASC` or `DESC` is not, defaults to `ASC`. If omitted, defaults to `updated_at DESC`."
          },
          "expand": {
            "type": "string",
            "enum": [
              "platform_data"
            ],
            "description": "Include platform specific data (includes additional fields not provided by the Rutter object)."
          },
          "expense_type": {
            "type": "string",
            "enum": [
              "expense",
              "refund"
            ],
            "description": "**Deprecated** - use `filter` instead. The exact expect type to filter on. Defaults to `expense` if not provided."
          },
          "last_synced_at_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `last_synced_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "transaction_date_max": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `transaction_date` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365."
          },
          "transaction_date_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `transaction_date` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365."
          },
          "updated_at_max": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "updated_at_min": {
            "type": "integer",
            "description": "**Deprecated** - use `filter` instead. Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds."
          },
          "force_fetch": {
            "type": "string",
            "enum": [
              "true",
              "false"
            ],
            "description": "Used to force a response even if the underlying connection has not finished its initial sync."
          }
        },
        "required": [
          "access_token"
        ]
      },
      "Expense": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the expense."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the expense."
          },
          "account_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the expense. Represents the account being credited."
          },
          "customer_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the expense. This is used when expenses should be marked as billable to customers. Supported for Zoho Books."
          },
          "subsidiary_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the expense. Supported for NetSuite."
          },
          "vendor_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the expense."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the expense was created."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the expense."
          },
          "expense_type": {
            "type": "string",
            "enum": [
              "expense",
              "refund"
            ],
            "description": "The type of expense."
          },
          "currency_rate": {
            "type": "number",
            "description": "The exchange rate between the currency of the expense and the business default currency."
          },
          "memo": {
            "type": [
              "string",
              "null"
            ],
            "description": "The memo of the expense."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the expense line item. Represents the account being debited and is usually an expense account."
                },
                "class_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the expense line item."
                },
                "customer_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the expense line item. This is used when expenses should be marked as billable to customers. Supported for QuickBooks and QuickBooks Desktop."
                },
                "department_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the expense line item."
                },
                "location_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the expense line item."
                },
                "tax_rate_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Tax Rate](/rest/version/tax-rates) linked to the expense line item."
                },
                "total_amount": {
                  "type": "number",
                  "description": "The total amount of the expense line item."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The description of the expense line item."
                },
                "additional_fields": {
                  "type": "object",
                  "properties": {
                    "billable": {
                      "type": [
                        "boolean",
                        "null"
                      ],
                      "description": "Boolean that indicates if the line item is billable or not. Supported for QuickBooks Desktop."
                    }
                  },
                  "additionalProperties": false,
                  "description": "Additional fields required only for a narrow set of use cases."
                }
              },
              "required": [
                "account_id",
                "class_id",
                "customer_id",
                "department_id",
                "location_id",
                "tax_rate_id",
                "total_amount",
                "description"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items associated with the expense."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the expense was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the expense was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the expense was last synced by Rutter."
          },
          "platform_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "A URL pointing to the object in the underlying platform. When no URL exists for the specific object, the value may be a larger URL containing the object."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "account_id",
          "subsidiary_id",
          "vendor_id",
          "transaction_date",
          "currency_code",
          "expense_type",
          "memo",
          "line_items",
          "created_at",
          "updated_at",
          "last_synced_at",
          "platform_url"
        ],
        "examples": [
          {
            "Expense_Example": {
              "$ref": "#/components/examples/Expense_Example"
            }
          }
        ]
      },
      "ListExpenseResponseWithConnection": {
        "type": "object",
        "properties": {
          "expenses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Expense"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "expenses",
          "connection"
        ],
        "examples": [
          {
            "ListExpenseResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListExpenseResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateExpense": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the expense. Represents the account being credited."
          },
          "customer_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the expense. This is used when expenses should be marked as billable to customers. Supported for Zoho Books."
          },
          "subsidiary_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the expense. Supported for NetSuite."
          },
          "vendor_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the expense."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the expense was created."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the expense."
          },
          "expense_type": {
            "type": "string",
            "enum": [
              "expense",
              "refund"
            ],
            "description": "The type of expense."
          },
          "currency_rate": {
            "type": "number",
            "description": "The exchange rate between the currency of the expense and the business default currency."
          },
          "memo": {
            "type": "string",
            "description": "The memo of the expense."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the expense line item. Represents the account being debited and is usually an expense account."
                },
                "class_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the expense line item."
                },
                "customer_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the expense line item. Providing a value here will mark the expense as billable. Supported for QuickBooks and QuickBooks Desktop."
                },
                "department_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the expense line item."
                },
                "location_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the expense line item."
                },
                "tax_rate_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Tax Rate](/rest/version/tax-rates) linked to the expense line item."
                },
                "total_amount": {
                  "type": "number",
                  "exclusiveMinimum": true,
                  "minimum": 0,
                  "description": "The total amount of the expense line item."
                },
                "description": {
                  "type": "string",
                  "description": "The description of the expense line item."
                },
                "additional_fields": {
                  "type": "object",
                  "properties": {
                    "billable": {
                      "type": "boolean",
                      "description": "Boolean that indicates if the line item is billable or not. Supported for QuickBooks Desktop."
                    }
                  },
                  "additionalProperties": false,
                  "description": "Additional fields required only for a narrow set of use cases."
                }
              },
              "required": [
                "account_id",
                "total_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items associated with the expense or expense refund."
          },
          "additional_fields": {
            "type": "object",
            "properties": {
              "location_id": {
                "type": "string",
                "format": "uuid",
                "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the expense top-level. Supported for NetSuite."
              },
              "is_reconciled": {
                "type": "boolean",
                "description": "If true, this will mark a transaction as reconciled. Supported for Xero."
              },
              "place_of_supply": {
                "type": "string",
                "enum": [
                  "abu_dhabi",
                  "ajman",
                  "dubai",
                  "fujairah",
                  "ras_al_khaimah",
                  "sharjah",
                  "umm_al_quwain",
                  "united_arab_emirates",
                  "saudi_arabia",
                  "bahrain",
                  "kuwait",
                  "oman",
                  "qatar"
                ],
                "description": "Zohobooks only: The place of supply is where the expense is considered to have occurred for VAT purposes. For items, it is the location of the items when the expense occurs. For services, it is where the vendor is established."
              },
              "reference_number": {
                "type": "string",
                "description": "The reference number of the expense. Supported for Zoho Books."
              },
              "tax_inclusive": {
                "type": "boolean",
                "description": "Specifies if the total amount of the expense includes the applicable taxes, or if it is exclusive of taxes. QUICKBOOKS,XERO,ZOHOBOOKS"
              },
              "tax_treatment": {
                "type": "string",
                "enum": [
                  "vat_registered",
                  "vat_not_registered",
                  "gcc_vat_not_registered",
                  "gcc_vat_registered",
                  "non_gcc",
                  "dz_vat_registered",
                  "dz_vat_not_registered"
                ],
                "description": "Zohobooks only: VAT treatment for the expense."
              }
            },
            "additionalProperties": false,
            "description": "Additional fields required only for a narrow set of use cases."
          }
        },
        "required": [
          "account_id",
          "currency_code",
          "expense_type",
          "line_items"
        ],
        "examples": [
          {
            "CreateExpense_Example": {
              "$ref": "#/components/examples/CreateExpense_Example"
            }
          }
        ]
      },
      "CreateCreateExpenseRequest": {
        "type": "object",
        "properties": {
          "expense": {
            "$ref": "#/components/schemas/CreateExpense"
          }
        },
        "required": [
          "expense"
        ],
        "examples": [
          {
            "CreateCreateExpenseRequest_Example": {
              "$ref": "#/components/examples/CreateCreateExpenseRequest_Example"
            }
          }
        ]
      },
      "ExpenseResponse": {
        "type": "object",
        "properties": {
          "expense": {
            "$ref": "#/components/schemas/Expense"
          }
        },
        "required": [
          "expense"
        ],
        "examples": [
          {
            "ExpenseResponse_Example": {
              "$ref": "#/components/examples/ExpenseResponse_Example"
            }
          }
        ]
      },
      "CreateExpenseResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/ExpenseResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateExpenseResponse_Example": {
              "$ref": "#/components/examples/CreateExpenseResponse_Example"
            }
          }
        ]
      },
      "ExpenseResponseWithConnection": {
        "type": "object",
        "properties": {
          "expense": {
            "$ref": "#/components/schemas/Expense"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "expense",
          "connection"
        ],
        "examples": [
          {
            "ExpenseResponseWithConnection_Example": {
              "$ref": "#/components/examples/ExpenseResponseWithConnection_Example"
            }
          }
        ]
      },
      "UpdateExpenseBody": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the expense. Represents the account being credited."
          },
          "vendor_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the expense."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the expense line item. Represents the account being debited and is usually an expense account."
                },
                "class_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the expense line item."
                },
                "customer_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the expense line item. Providing a value here will mark the expense as billable. Supported for QuickBooks and QuickBooks Desktop."
                },
                "department_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the expense line item."
                },
                "location_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the expense line item."
                },
                "tax_rate_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [Tax Rate](/rest/version/tax-rates) linked to the expense line item."
                },
                "total_amount": {
                  "type": "number",
                  "exclusiveMinimum": true,
                  "minimum": 0,
                  "description": "The total amount of the expense line item."
                },
                "description": {
                  "type": "string",
                  "description": "The description of the expense line item."
                },
                "additional_fields": {
                  "type": "object",
                  "properties": {
                    "billable": {
                      "type": "boolean",
                      "description": "Boolean that indicates if the line item is billable or not. Supported for QuickBooks Desktop."
                    }
                  },
                  "additionalProperties": false,
                  "description": "Additional fields required only for a narrow set of use cases."
                }
              },
              "required": [
                "account_id",
                "total_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items associated with the expense. If provided, the old line_items will be removed and completely replaced by the new line_items input."
          }
        },
        "examples": [
          {
            "UpdateExpenseBody_Example": {
              "$ref": "#/components/examples/UpdateExpenseBody_Example"
            }
          }
        ]
      },
      "CreateUpdateExpenseBodyRequest": {
        "type": "object",
        "properties": {
          "expense": {
            "$ref": "#/components/schemas/UpdateExpenseBody"
          }
        },
        "required": [
          "expense"
        ],
        "examples": [
          {
            "CreateUpdateExpenseBodyRequest_Example": {
              "$ref": "#/components/examples/CreateUpdateExpenseBodyRequest_Example"
            }
          }
        ]
      },
      "UpdateExpenseResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the expense."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the expense."
          },
          "account_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the expense. Represents the account being credited."
          },
          "customer_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the expense. This is used when expenses should be marked as billable to customers. Supported for Zoho Books."
          },
          "subsidiary_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Subsidiary](/rest/version/subsidiaries) linked to the expense. Supported for NetSuite."
          },
          "vendor_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Vendor](/rest/version/vendors) linked to the expense."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the expense was created."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the expense."
          },
          "expense_type": {
            "type": "string",
            "enum": [
              "expense",
              "refund"
            ],
            "description": "The type of expense."
          },
          "currency_rate": {
            "type": "number",
            "description": "The exchange rate between the currency of the expense and the business default currency."
          },
          "memo": {
            "type": [
              "string",
              "null"
            ],
            "description": "The memo of the expense."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the expense line item. Represents the account being debited and is usually an expense account."
                },
                "class_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the expense line item."
                },
                "customer_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the expense line item. This is used when expenses should be marked as billable to customers. Supported for QuickBooks and QuickBooks Desktop."
                },
                "department_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Department](/rest/version/departments) linked to the expense line item."
                },
                "location_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Location](/rest/version/locations) linked to the expense line item."
                },
                "tax_rate_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Tax Rate](/rest/version/tax-rates) linked to the expense line item."
                },
                "total_amount": {
                  "type": "number",
                  "description": "The total amount of the expense line item."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The description of the expense line item."
                },
                "additional_fields": {
                  "type": "object",
                  "properties": {
                    "billable": {
                      "type": [
                        "boolean",
                        "null"
                      ],
                      "description": "Boolean that indicates if the line item is billable or not. Supported for QuickBooks Desktop."
                    }
                  },
                  "additionalProperties": false,
                  "description": "Additional fields required only for a narrow set of use cases."
                }
              },
              "required": [
                "account_id",
                "class_id",
                "customer_id",
                "department_id",
                "location_id",
                "tax_rate_id",
                "total_amount",
                "description"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items associated with the expense."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the expense was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the expense was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the expense was last synced by Rutter."
          },
          "platform_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "A URL pointing to the object in the underlying platform. When no URL exists for the specific object, the value may be a larger URL containing the object."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "account_id",
          "subsidiary_id",
          "vendor_id",
          "transaction_date",
          "currency_code",
          "expense_type",
          "memo",
          "line_items",
          "created_at",
          "updated_at",
          "last_synced_at",
          "platform_url"
        ],
        "examples": [
          {
            "UpdateExpenseResponse_Example": {
              "$ref": "#/components/examples/UpdateExpenseResponse_Example"
            }
          }
        ]
      },
      "UpdateExpenseResponseResponse": {
        "type": "object",
        "properties": {
          "expense": {
            "$ref": "#/components/schemas/UpdateExpenseResponse"
          }
        },
        "required": [
          "expense"
        ],
        "examples": [
          {
            "UpdateExpenseResponseResponse_Example": {
              "$ref": "#/components/examples/UpdateExpenseResponseResponse_Example"
            }
          }
        ]
      },
      "CreateUpdateExpenseResponseResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/UpdateExpenseResponseResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateUpdateExpenseResponseResponse_Example": {
              "$ref": "#/components/examples/CreateUpdateExpenseResponseResponse_Example"
            }
          }
        ]
      },
      "DeleteExpense": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "enum": [
              "deleted",
              "not_found"
            ],
            "description": "Returns the status of the requested object: `deleted` indicates object was deleted by this operation, whereas `not_found` indicates object was not found (allowing us to make DELETE operations idempotent)."
          },
          "success": {
            "type": "boolean",
            "description": "Indicates whether deletion was successful"
          }
        },
        "required": [
          "code",
          "success"
        ],
        "examples": [
          {
            "DeleteExpense_Example": {
              "$ref": "#/components/examples/DeleteExpense_Example"
            }
          }
        ]
      },
      "DeleteExpenseResponse": {
        "type": "object",
        "properties": {
          "deleted_expense": {
            "$ref": "#/components/schemas/DeleteExpense"
          }
        },
        "required": [
          "deleted_expense"
        ],
        "examples": [
          {
            "DeleteExpenseResponse_Example": {
              "$ref": "#/components/examples/DeleteExpenseResponse_Example"
            }
          }
        ]
      },
      "ExpenseAttachmentsResponse": {
        "type": "object",
        "properties": {
          "attachments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Attachment"
            }
          }
        },
        "required": [
          "attachments"
        ],
        "examples": [
          {
            "ExpenseAttachmentsResponse_Example": {
              "$ref": "#/components/examples/ExpenseAttachmentsResponse_Example"
            }
          }
        ]
      },
      "IncomeStatement": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the income statement."
          },
          "start_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the start date of the income statement accounting period."
          },
          "end_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the end date of the income statement accounting period."
          },
          "accounting_standard": {
            "type": "string",
            "enum": [
              "cash",
              "accrual",
              "unknown"
            ],
            "description": "The accounting standard used to generate the income statement."
          },
          "currency_code": {
            "type": "string",
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the income statement."
          },
          "gross_profit": {
            "type": [
              "string",
              "null"
            ],
            "description": "Total profit after deducting the cost of sales."
          },
          "net_income": {
            "type": [
              "string",
              "null"
            ],
            "description": "Total Net Income in the given period."
          },
          "total_cost_of_sales": {
            "type": [
              "string",
              "null"
            ],
            "description": "The total cost of sales in the given period."
          },
          "total_expenses": {
            "type": [
              "string",
              "null"
            ],
            "description": "The total expense in the given period."
          },
          "total_income": {
            "type": [
              "string",
              "null"
            ],
            "description": "The total income in the given period."
          },
          "net_operating_income": {
            "type": [
              "string",
              "null"
            ],
            "description": "Total Net Operating Income in the given period."
          },
          "net_profit": {
            "type": [
              "string",
              "null"
            ]
          },
          "net_sales": {
            "type": [
              "string",
              "null"
            ]
          },
          "expenses": {
            "$ref": "#/components/schemas/GeneralLedgerLineItem"
          },
          "income": {
            "$ref": "#/components/schemas/GeneralLedgerLineItem"
          },
          "cost_of_sales": {
            "$ref": "#/components/schemas/GeneralLedgerLineItem",
            "type": [
              "null"
            ]
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the income statement was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the income statement was last updated."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "start_date",
          "end_date",
          "accounting_standard",
          "currency_code",
          "gross_profit",
          "net_income",
          "total_cost_of_sales",
          "total_expenses",
          "total_income",
          "expenses",
          "income",
          "cost_of_sales",
          "created_at",
          "updated_at"
        ],
        "examples": [
          {
            "IncomeStatement_Example": {
              "$ref": "#/components/examples/IncomeStatement_Example"
            }
          }
        ]
      },
      "ListIncomeStatementResponseWithConnection": {
        "type": "object",
        "properties": {
          "income_statements": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IncomeStatement"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "income_statements",
          "connection"
        ],
        "examples": [
          {
            "ListIncomeStatementResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListIncomeStatementResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateInvoiceCreditApplication": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the invoice credit memo. This should be a bank account."
          },
          "customer_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Customer](/rest/version/customers) linked to the Invoice credit application."
          },
          "invoice_credit_memo_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Invoice Credit Memo](/rest/version/invoice-credit-memos) linked to the invoice credit application."
          },
          "transaction_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the Invoice credit application."
          },
          "currency_code": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYR",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LTL",
              "LVL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRO",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STD",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "USS",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VEF",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XFU",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XTS",
              "XXX",
              "YER",
              "ZAR",
              "ZMW"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the Invoice credit application."
          },
          "memo": {
            "type": "string",
            "description": "The description of the Invoice credit application."
          },
          "linked_invoices": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The Rutter ID of the [Invoice](/rest/version/invoice) linked to the invoice credit application."
                },
                "allocated_amount": {
                  "type": "number",
                  "exclusiveMinimum": true,
                  "minimum": 0,
                  "description": "Amount allocated to the linked invoice."
                }
              },
              "required": [
                "id",
                "allocated_amount"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "customer_id",
          "invoice_credit_memo_id",
          "transaction_date",
          "currency_code",
          "linked_invoices"
        ],
        "examples": [
          {
            "CreateInvoiceCreditApplication_Example": {
              "$ref": "#/components/examples/CreateInvoiceCreditApplication_Example"
            }
          }
        ]
      },
      "CreateCreateInvoiceCreditApplicationRequest": {
        "type": "object",
        "properties": {
          "invoice_credit_application": {
            "$ref": "#/components/schemas/CreateInvoiceCreditApplication"
          }
        },
        "required": [
          "invoice_credit_application"
        ],
        "examples": [
          {
            "CreateCreateInvoiceCreditApplicationRequest_Example": {
              "$ref": "#/components/examples/CreateCreateInvoiceCreditApplicationRequest_Example"
            }
          }
        ]
      },
      "InvoiceCreditApplication": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether the request was successful."
          }
        },
        "required": [
          "success"
        ],
        "examples": [
          {
            "InvoiceCreditApplication_Example": {
              "$ref": "#/components/examples/InvoiceCreditApplication_Example"
            }
          }
        ]
      },
      "InvoiceCreditApplicationResponse": {
        "type": "object",
        "properties": {
          "invoice_credit_application": {
            "$ref": "#/components/schemas/InvoiceCreditApplication"
          }
        },
        "required": [
          "invoice_credit_application"
        ],
        "examples": [
          {
            "InvoiceCreditApplicationResponse_Example": {
              "$ref": "#/components/examples/InvoiceCreditApplicationResponse_Example"
            }
          }
        ]
      },
      "CreateInvoiceCreditApplicationResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/InvoiceCreditApplicationResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateInvoiceCreditApplicationResponse_Example": {
              "$ref": "#/components/examples/CreateInvoiceCreditApplicationResponse_Example"
            }
          }
        ]
      },
      "InvoiceCreditMemo": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Rutter generated unique ID of the invoice credit memo."
          },
          "platform_id": {
            "type": "string",
            "description": "The platform specific ID of the invoice credit memo."
          },
          "account_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the invoice. Represents the account being debited. This is typically the primary Accounts Receivable account."
          },
          "customer_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "The Rutter ID of the [Customer](/rest/version/accounting-customers) linked to the invoice credit memo."
          },
          "allocated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for when the invoice credit memo was allocated."
          },
          "issue_date": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for when the invoice credit memo was issued."
          },
          "currency_code": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the invoice credit memo."
          },
          "document_number": {
            "type": [
              "string",
              "null"
            ],
            "description": "The buyer facing document number of the invoice credit memo."
          },
          "memo": {
            "type": [
              "string",
              "null"
            ],
            "description": "The memo of the invoice credit memo."
          },
          "status": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "OPEN",
              "APPLIED",
              "PARTIALLY_APPLIED",
              "DRAFT",
              "UNKNOWN"
            ],
            "description": "The status of the invoice credit memo."
          },
          "remaining_amount": {
            "type": [
              "string",
              "null"
            ],
            "description": "The remaining unapplied amount of the invoice credit memo."
          },
          "total_amount": {
            "type": [
              "string",
              "null"
            ],
            "description": "The total amount of the invoice credit memo."
          },
          "linked_invoices": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "allocated_date": {
                  "type": "string"
                },
                "allocated_amount": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              },
              "required": [
                "id",
                "allocated_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of Rutter IDs of [Invoices](/rest/version/invoices) linked to the invoice credit memo."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter generated unique ID of the invoice line item."
                },
                "platform_id": {
                  "type": "string",
                  "description": "The platform specific ID of the invoice line item."
                },
                "account_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The account being credited for the invoice line item"
                },
                "class_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Class](/rest/version/classes) linked to the invoice line item."
                },
                "item_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Item](/rest/version/items) linked to the invoice line item."
                },
                "tax_rate_id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The Rutter ID of the [Tax Rate](/rest/version/tax-rates) linked to the invoice line item."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The description of the invoice line item."
                },
                "quantity": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "The quantity of the invoice line item."
                },
                "amount": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The total amount of the sales order line item."
                },
                "discount_amount": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The discount amount applied to the invoice line item."
                },
                "discount_percentage": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The percentage discount applied to the invoice line item."
                },
                "sub_total": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The subtotal of the invoice line item, without tax."
                },
                "tax_amount": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The total tax amount applied to the invoice line item."
                },
                "unit_amount": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The price per unit of the invoice line item."
                },
                "additional_fields": {
                  "type": "object",
                  "properties": {
                    "rev_rec_end_date": {
                      "type": "string",
                      "description": "The end date for the revenue recognition element of this line item. Supported for NetSuite."
                    },
                    "rev_rec_start_date": {
                      "type": "string",
                      "description": "The start date for the revenue recognition element of this line item. Supported for NetSuite."
                    },
                    "service_date": {
                      "type": "string",
                      "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for the date on which the service was rendered. Supported for QuickBooks and QuickBooks Desktop."
                    }
                  },
                  "additionalProperties": false,
                  "description": "Additional fields required only for a narrow set of use cases."
                }
              },
              "required": [
                "id",
                "platform_id",
                "account_id",
                "class_id",
                "item_id",
                "tax_rate_id",
                "description",
                "quantity",
                "amount",
                "discount_amount",
                "discount_percentage",
                "sub_total",
                "tax_amount",
                "unit_amount"
              ],
              "additionalProperties": false
            },
            "description": "An array of line items containing details about the invoice credit memo."
          },
          "created_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the invoice credit memo was created."
          },
          "updated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the invoice credit memo was last updated."
          },
          "last_synced_at": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the invoice credit memo was last synced by Rutter."
          },
          "platform_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "A URL pointing to the object in the underlying platform. When no URL exists for the specific object, the value may be a larger URL containing the object."
          },
          "platform_data": {
            "type": "object",
            "additionalProperties": {},
            "description": "The raw platform data corresponding to the Rutter object."
          }
        },
        "required": [
          "id",
          "platform_id",
          "account_id",
          "customer_id",
          "allocated_at",
          "issue_date",
          "currency_code",
          "document_number",
          "memo",
          "status",
          "remaining_amount",
          "total_amount",
          "linked_invoices",
          "line_items",
          "created_at",
          "updated_at",
          "last_synced_at",
          "platform_url"
        ],
        "examples": [
          {
            "InvoiceCreditMemo_Example": {
              "$ref": "#/components/examples/InvoiceCreditMemo_Example"
            }
          }
        ]
      },
      "ListInvoiceCreditMemoResponseWithConnection": {
        "type": "object",
        "properties": {
          "invoice_credit_memos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InvoiceCreditMemo"
            }
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "invoice_credit_memos",
          "connection"
        ],
        "examples": [
          {
            "ListInvoiceCreditMemoResponseWithConnection_Example": {
              "$ref": "#/components/examples/ListInvoiceCreditMemoResponseWithConnection_Example"
            }
          }
        ]
      },
      "CreateInvoiceCreditMemo": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the invoice credit memo. Represents the account being credited. This is typically the primary Accounts Receivable account."
          },
          "customer_id": {
            "type": "string",
            "format": "uuid",
            "description": "The accounting customer ID that is going to get this credit."
          },
          "issue_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for when the credit memo was issued."
          },
          "currency_code": {
            "type": "string",
            "description": "The currency code of the credit memo."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [credited account](/rest/version/accounts) linked to the invoice credit memo line item."
                },
                "description": {
                  "type": "string",
                  "description": "The description of the invoice credit memo line item."
                },
                "total_amount": {
                  "type": "string",
                  "description": "The total amount of the invoice credit memo line item."
                },
                "item": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "format": "uuid",
                      "description": "The Rutter ID of the accounting item."
                    },
                    "quantity": {
                      "type": "number",
                      "description": "The quantity of the accounting item."
                    },
                    "unit_amount": {
                      "type": "string",
                      "description": "The price per unit of the accounting item."
                    }
                  },
                  "required": [
                    "id",
                    "quantity",
                    "unit_amount"
                  ],
                  "additionalProperties": false,
                  "description": "The accounting item of the invoice credit memo line item."
                }
              },
              "required": [
                "description",
                "total_amount",
                "item"
              ],
              "additionalProperties": false
            },
            "description": "The line items of the credit memo."
          }
        },
        "required": [
          "account_id",
          "customer_id",
          "issue_date",
          "currency_code",
          "line_items"
        ],
        "examples": [
          {
            "CreateInvoiceCreditMemo_Example": {
              "$ref": "#/components/examples/CreateInvoiceCreditMemo_Example"
            }
          }
        ]
      },
      "CreateCreateInvoiceCreditMemoRequest": {
        "type": "object",
        "properties": {
          "invoice_credit_memo": {
            "$ref": "#/components/schemas/CreateInvoiceCreditMemo"
          }
        },
        "required": [
          "invoice_credit_memo"
        ],
        "examples": [
          {
            "CreateCreateInvoiceCreditMemoRequest_Example": {
              "$ref": "#/components/examples/CreateCreateInvoiceCreditMemoRequest_Example"
            }
          }
        ]
      },
      "InvoiceCreditMemoResponse": {
        "type": "object",
        "properties": {
          "invoice_credit_memo": {
            "$ref": "#/components/schemas/InvoiceCreditMemo"
          }
        },
        "required": [
          "invoice_credit_memo"
        ],
        "examples": [
          {
            "InvoiceCreditMemoResponse_Example": {
              "$ref": "#/components/examples/InvoiceCreditMemoResponse_Example"
            }
          }
        ]
      },
      "CreateInvoiceCreditMemoResponse": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/InvoiceCreditMemoResponse"
          },
          {
            "$ref": "#/components/schemas/AsyncResponsePayload"
          }
        ],
        "examples": [
          {
            "CreateInvoiceCreditMemoResponse_Example": {
              "$ref": "#/components/examples/CreateInvoiceCreditMemoResponse_Example"
            }
          }
        ]
      },
      "InvoiceCreditMemoResponseWithConnection": {
        "type": "object",
        "properties": {
          "invoice_credit_memo": {
            "$ref": "#/components/schemas/InvoiceCreditMemo"
          },
          "connection": {
            "$ref": "#/components/schemas/Connection"
          }
        },
        "required": [
          "invoice_credit_memo",
          "connection"
        ],
        "examples": [
          {
            "InvoiceCreditMemoResponseWithConnection_Example": {
              "$ref": "#/components/examples/InvoiceCreditMemoResponseWithConnection_Example"
            }
          }
        ]
      },
      "UpdateInvoiceCreditMemo": {
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "format": "uuid",
            "description": "The Rutter ID of the [Account](/rest/version/accounts) linked to the invoice credit memo. Represents the account being credited. This is typically the primary Accounts Receivable account."
          },
          "customer_id": {
            "type": "string",
            "format": "uuid",
            "description": "The accounting customer ID that is going to get this credit."
          },
          "issue_date": {
            "type": "string",
            "description": "The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp for when the credit memo was issued."
          },
          "currency_code": {
            "type": "string",
            "description": "The currency code of the credit memo."
          },
          "line_items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account_id": {
                  "type": "string",
                  "format": "uuid",
                  "description": "The Rutter ID of the [credited account](/rest/version/accounts) linked to the invoice credit memo line item."
                },
                "description": {
                  "type": "string",
                  "description": "The description of the invoice credit memo line item."
                },
                "total_amount": {
                  "type": "string",
                  "description": "The total amount of the invoice credit memo line item."
                },
                "item": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "format": "uuid",
                      "description": "The Rutter ID of the accounting item."
                    },
                    "quantity": {
                      "type": "number",
                      "description": "The quantity of the accounting item."
                    },
                    "unit_amount": {
                      "type": "string",
                      "description": "The price per unit of the accounting item."
                    }
                  },
                  "required": [
                    "id",
                    "quantity",
                    "unit_amount"
                  ],
                  "additionalProperties": false,
                  "description": "The accounting item of the invoice credit memo line item."
                }
              },
              "required": [
                "description",
                "total_amount",
                "item"
              ],
              "additionalProperties": false
            },
            "description": "The line items of the credit memo."
          }
        },
        "examples": [
          {
            "UpdateInvoiceCreditMemo_Example": {
              "$ref": "#/components/examples/UpdateInvoiceCreditMemo_Example"
            }
          }
        ]
      },
      "CreateUpdateInvoiceCreditMemoRequest": {
        "type": "object",
        "properties": {
          "invoice_credit_memo": {
            "$ref": "#/components/schemas/UpdateInvoiceCreditMemo"
          }
        },
        "required": [
          "invoice_credit_memo"
        ],
        "examples": [
          {
            "CreateUpdateInvoiceCreditMemoRequest_Example": {
              "$ref": "#/components/examples/CreateUpdateInvoiceCreditMemoRequest_Example"
            }
          }
        ]
      },
      "DeleteInvoiceCreditMemo": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "enum": [
              "deleted",
              "not_found"
            ],
            "description": "Returns the status of the requested object: `deleted` indicates object was deleted by this operation, whereas `not_found` indicates object was not found (allowing us to make DELETE operations idempotent)."
          },
          "success": {
            "type": "boolean",
            "description": "Indicates whether deletion was successful."
          }
        },
        "required": [