Lone Star Legal Advisor

Lone Star Legal Advisor · GPT 작업

Falcon API

Falcon API Copyright (c) 2022, Thomas J. Daley, Esq. - Version v1_0 (updated 2023.11.05)

  • GET /api/v1_0/util/propertyGet Property Details

    Retrieve property description and valuation data from ATTOM Data Solutions Args: address (str): Street address city (str): City state (str): State zip_code (str): Zip code Returns: dict: Property details

  • POST /api/v1_0/txchildsupport/calculateCalculate Child Support
원본 API 스키마
{
  "openapi": "3.0.2",
  "info": {
    "title": "Falcon API",
    "description": "Falcon API Copyright (c) 2022, Thomas J. Daley, Esq. - Version v1_0 (updated 2023.11.05)",
    "version": "v1_0"
  },
  "servers": [
    {
      "url": "https://api.jdbot.us",
      "description": "Production Server"
    }
  ],
  "paths": {
    "/api/v1_0/util/property": {
      "get": {
        "tags": [
          "Utility Functions"
        ],
        "summary": "Get Property Details",
        "description": "Retrieve property description and valuation data from ATTOM Data Solutions\n\nArgs:\n    address (str): Street address\n    city (str): City\n    state (str): State\n    zip_code (str): Zip code\n\nReturns:\n    dict: Property details",
        "operationId": "get_property_details_api_v1_0_util_property_get",
        "parameters": [
          {
            "required": true,
            "schema": {
              "title": "Address",
              "type": "string"
            },
            "name": "address",
            "in": "query"
          },
          {
            "required": true,
            "schema": {
              "title": "City",
              "type": "string"
            },
            "name": "city",
            "in": "query"
          },
          {
            "required": true,
            "schema": {
              "title": "State",
              "type": "string"
            },
            "name": "state",
            "in": "query"
          },
          {
            "required": true,
            "schema": {
              "title": "Zip Code",
              "type": "string"
            },
            "name": "zip_code",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RealPropertyInfoResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not found in Utility Functions"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1_0/txchildsupport/calculate": {
      "post": {
        "tags": [
          "Child Support Calculator"
        ],
        "summary": "Calculate Child Support",
        "operationId": "add_document_api_v1_0_txchildsupport_calculate_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChildSupportRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ChildSupportResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not found in Child Support Calculator"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Body_login_for_access_token_api_v1_0_users_token_post": {
        "title": "Body_login_for_access_token_api_v1_0_users_token_post",
        "required": [
          "username",
          "password"
        ],
        "type": "object",
        "properties": {
          "grant_type": {
            "title": "Grant Type",
            "pattern": "password",
            "type": "string"
          },
          "username": {
            "title": "Username",
            "type": "string"
          },
          "password": {
            "title": "Password",
            "type": "string"
          },
          "scope": {
            "title": "Scope",
            "type": "string",
            "default": ""
          },
          "client_id": {
            "title": "Client Id",
            "type": "string"
          },
          "client_secret": {
            "title": "Client Secret",
            "type": "string"
          }
        }
      },
      "CategorySubcategoryResponse": {
        "title": "CategorySubcategoryResponse",
        "required": [
          "category",
          "subcategory"
        ],
        "type": "object",
        "properties": {
          "category": {
            "title": "Category",
            "type": "string"
          },
          "subcategory": {
            "title": "Subcategory",
            "type": "string"
          },
          "count": {
            "title": "Count",
            "type": "integer",
            "default": 0
          }
        },
        "description": "Response for a category/subcategory pair",
        "example": {
          "category": "category1",
          "subcategory": "subcategory1",
          "count": 1
        }
      },
      "ChildSupportRequest": {
        "title": "ChildSupportRequest",
        "required": [
          "number_of_children",
          "other_children",
          "wage_income",
          "wage_income_frequency",
          "nonwage_income",
          "nonwage_income_frequency",
          "self_employed",
          "union_dues",
          "health_insurance",
          "mininum_wage"
        ],
        "type": "object",
        "properties": {
          "number_of_children": {
            "title": "Number Of Children",
            "type": "integer",
            "example": 2
          },
          "other_children": {
            "title": "Other Children",
            "type": "integer",
            "example": 0
          },
          "wage_income": {
            "title": "Wage Income",
            "type": "number",
            "example": 1000
          },
          "wage_income_frequency": {
            "title": "Wage Income Frequency",
            "type": "string",
            "example": "weekly"
          },
          "nonwage_income": {
            "title": "Nonwage Income",
            "type": "number",
            "example": 0
          },
          "nonwage_income_frequency": {
            "title": "Nonwage Income Frequency",
            "type": "string",
            "example": "weekly"
          },
          "self_employed": {
            "title": "Self Employed",
            "type": "boolean",
            "example": false
          },
          "union_dues": {
            "title": "Union Dues",
            "type": "number",
            "example": 0
          },
          "health_insurance": {
            "title": "Health Insurance",
            "type": "number",
            "example": 0
          },
          "mininum_wage": {
            "title": "Mininum Wage",
            "type": "boolean",
            "example": false
          }
        }
      },
      "ChildSupportResponse": {
        "title": "ChildSupportResponse",
        "required": [
          "net_monthly_resources",
          "child_support",
          "capped_flag",
          "tax_table_version",
          "child_support_factor",
          "monthly_wage_income",
          "monthly_nonwage_income",
          "social_security_tax",
          "medicare_tax",
          "federal_income_tax"
        ],
        "type": "object",
        "properties": {
          "net_monthly_resources": {
            "title": "Net Monthly Resources",
            "type": "number",
            "example": 1000
          },
          "child_support": {
            "title": "Child Support",
            "type": "number",
            "example": 0
          },
          "capped_flag": {
            "title": "Capped Flag",
            "type": "boolean",
            "example": false
          },
          "tax_table_version": {
            "title": "Tax Table Version",
            "type": "string",
            "example": "2023.1"
          },
          "child_support_factor": {
            "title": "Child Support Factor",
            "type": "number",
            "example": 0.25
          },
          "monthly_wage_income": {
            "title": "Monthly Wage Income",
            "type": "number",
            "example": 1000
          },
          "monthly_nonwage_income": {
            "title": "Monthly Nonwage Income",
            "type": "number",
            "example": 0
          },
          "social_security_tax": {
            "title": "Social Security Tax",
            "type": "number",
            "example": 0
          },
          "medicare_tax": {
            "title": "Medicare Tax",
            "type": "number",
            "example": 0
          },
          "federal_income_tax": {
            "title": "Federal Income Tax",
            "type": "number",
            "example": 0
          }
        }
      },
      "Document": {
        "title": "Document",
        "required": [
          "path",
          "filename",
          "type",
          "title",
          "create_date"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "Id",
            "type": "string",
            "default": "37531ce2-3c49-4893-bbc8-8d5cf940b4ba"
          },
          "path": {
            "title": "Path",
            "type": "string"
          },
          "filename": {
            "title": "Filename",
            "type": "string"
          },
          "type": {
            "title": "Type",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "create_date": {
            "title": "Create Date",
            "type": "string"
          },
          "document_date": {
            "title": "Document Date",
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "string",
                "format": "date-time"
              }
            ]
          },
          "beginning_bates": {
            "title": "Beginning Bates",
            "type": "string"
          },
          "ending_bates": {
            "title": "Ending Bates",
            "type": "string"
          },
          "page_count": {
            "title": "Page Count",
            "type": "integer"
          },
          "client_reference": {
            "title": "Client Reference",
            "type": "string"
          },
          "added_username": {
            "title": "Added Username",
            "type": "string"
          },
          "added_date": {
            "title": "Added Date",
            "type": "string",
            "format": "date-time"
          },
          "updated_username": {
            "title": "Updated Username",
            "type": "string"
          },
          "updated_date": {
            "title": "Updated Date",
            "type": "string",
            "format": "date-time"
          },
          "version": {
            "title": "Version",
            "type": "string",
            "default": "499dbb3f-8d85-4bca-9764-15a0e1a64b6c"
          }
        },
        "description": "Document model\n\nNOTE: The POST method in the doucments router does NOT update every field. If you add\na field to this class AND you want the end user to be able to update that value in that\nfield, you must make a corresponding change to the documents router's POST method.",
        "example": {
          "id": "doc-1",
          "path": "C:\\Users\\my\\Documents\\Client 20304 - Our Production\\20304-OurProduction.pdf",
          "filename": "20304-OurProduction.pdf",
          "type": "application/pdf",
          "title": "20304-OurProduction",
          "create_date": "2020-04-01",
          "document_date": "2020-04-01",
          "beginning_bates": "TJD000001",
          "ending_bates": "TJD000009",
          "page_count": "9",
          "client_reference": "DALTHO01A"
        }
      },
      "DocumentClassificationStatus": {
        "title": "DocumentClassificationStatus",
        "required": [
          "document_id",
          "status"
        ],
        "type": "object",
        "properties": {
          "task_id": {
            "title": "Task Id",
            "type": "string"
          },
          "document_id": {
            "title": "Document Id",
            "type": "string"
          },
          "status": {
            "title": "Status",
            "type": "string"
          },
          "message": {
            "title": "Message",
            "type": "string"
          },
          "classification": {
            "title": "Classification",
            "type": "object"
          }
        },
        "description": "Status of a document classification task",
        "example": {
          "task_id": "60a5c7d4b8a8e1f0f1c1b5d1 OR None if called synchronously",
          "document_id": "e7e4fb7c-4d54-44b6-88d6-50509ff677cc",
          "status": "QUEUED",
          "message": "Document classification task has been queued."
        }
      },
      "DocumentCsvTables": {
        "title": "DocumentCsvTables",
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "Id",
            "type": "string"
          },
          "csv_tables": {
            "title": "Csv Tables",
            "type": "object"
          },
          "version": {
            "title": "Version",
            "type": "string",
            "default": "43aa1dde-2a83-4727-8fe7-f21bdb6af8b9"
          }
        },
        "description": "Tables for a document"
      },
      "DocumentObjTables": {
        "title": "DocumentObjTables",
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "Id",
            "type": "string"
          },
          "dict_tables": {
            "title": "Dict Tables",
            "type": "object"
          },
          "version": {
            "title": "Version",
            "type": "string",
            "default": "42ac7cfd-e086-4c85-8edb-aaf5d49adbb0"
          }
        },
        "description": "Tables for a document",
        "example": {
          "id": "doc-1",
          "json_tables": {
            "tables": [
              {
                "table_id": "table-1",
                "column_count": 3,
                "rows": [
                  [
                    {
                      "text": "Row 1 Column 1"
                    },
                    {
                      "text": "Row 1 Column 2"
                    },
                    {
                      "text": "Row 1 Column 3"
                    }
                  ],
                  [
                    {
                      "text": "Row 2 Column 1"
                    },
                    {
                      "text": "Row 2 Column 2"
                    },
                    {
                      "text": "Row 2 Column 3"
                    }
                  ]
                ]
              },
              {
                "table_id": "table-2",
                "column_count": 2,
                "rows": [
                  [
                    {
                      "text": "Row 1 Column 1"
                    },
                    {
                      "text": "Row 1 Column 2"
                    }
                  ],
                  [
                    {
                      "text": "Row 2 Column 1"
                    },
                    {
                      "text": "Row 2 Column 2"
                    }
                  ]
                ]
              }
            ]
          },
          "version": "dkf9kfk9jk4kf8glk"
        }
      },
      "ExtendedDocumentProperties": {
        "title": "ExtendedDocumentProperties",
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "Id",
            "type": "string"
          },
          "images": {
            "title": "Images",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "text": {
            "title": "Text",
            "type": "string"
          },
          "clean_text": {
            "title": "Clean Text",
            "type": "string"
          },
          "props": {
            "title": "Props",
            "type": "object"
          },
          "version": {
            "title": "Version",
            "type": "string",
            "default": "03064783-a6bf-47f7-bc14-329354d3e108"
          },
          "job_id": {
            "title": "Job Id",
            "type": "string"
          },
          "extraction_type": {
            "title": "Extraction Type",
            "type": "string"
          },
          "job_status": {
            "title": "Job Status",
            "type": "string"
          },
          "pages": {
            "title": "Pages",
            "type": "integer"
          },
          "dict_tables": {
            "title": "Dict Tables",
            "type": "object",
            "description": "Always None. Call the documents/tables/csv or documents/tables/json endpoint to get the tables for a document."
          },
          "has_tables": {
            "title": "Has Tables",
            "type": "boolean",
            "default": false
          }
        },
        "description": "Extended Properties for a Document\nThese are the properties that are unique to a class of documents or that are used\nin training the document classification models",
        "example": {
          "id": "doc-1",
          "images": [],
          "text": "This is the [text] of the document!!",
          "clean_text": "this is the text of the document",
          "props": {
            "prop1": "value1",
            "prop2": "value2"
          },
          "version": "dkf9kfk9jk4kf8glk",
          "job_id": "60a5c7d4b8a8e1f0f1c1b5d1",
          "extraction_type": "ANALYSIS",
          "job_status": "COMPLETED",
          "pages": 9,
          "has_tables": true
        }
      },
      "HTTPValidationError": {
        "title": "HTTPValidationError",
        "type": "object",
        "properties": {
          "detail": {
            "title": "Detail",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidationError"
            }
          }
        }
      },
      "InsertException": {
        "title": "InsertException",
        "type": "object",
        "properties": {
          "detail": {
            "title": "Detail",
            "type": "string",
            "default": "User already exists"
          }
        },
        "description": "A class for responding to user registration errors"
      },
      "RealPropertyInfoResponse": {
        "title": "RealPropertyInfoResponse",
        "required": [
          "attom_id",
          "tax_id",
          "address",
          "county",
          "occupied_by",
          "last_sale_date",
          "last_sale_amount",
          "assessed_value",
          "county_market_value",
          "tax_year",
          "tax_amount",
          "owners",
          "approximate_value_midpoint",
          "approximate_value_high",
          "approximate_value_low",
          "equity_amount"
        ],
        "type": "object",
        "properties": {
          "attom_id": {
            "title": "Attom Id",
            "type": "integer",
            "example": 50801352
          },
          "tax_id": {
            "title": "Tax Id",
            "type": "string",
            "example": "R-3281-00F-0160-1"
          },
          "address": {
            "title": "Address",
            "type": "string",
            "example": "123 MAIN STREET, ANYTOWN, TX 75072"
          },
          "county": {
            "title": "County",
            "type": "string",
            "example": "Collin"
          },
          "occupied_by": {
            "title": "Occupied By",
            "type": "string",
            "example": "OWNER OCCUPIED"
          },
          "last_sale_date": {
            "title": "Last Sale Date",
            "type": "string",
            "example": "1999-12-21"
          },
          "last_sale_amount": {
            "title": "Last Sale Amount",
            "type": "integer",
            "example": 158000
          },
          "assessed_value": {
            "title": "Assessed Value",
            "type": "integer",
            "example": 498109
          },
          "county_market_value": {
            "title": "County Market Value",
            "type": "integer",
            "example": 498109
          },
          "tax_year": {
            "title": "Tax Year",
            "type": "string",
            "example": "2022"
          },
          "tax_amount": {
            "title": "Tax Amount",
            "type": "number",
            "example": 7016.58
          },
          "owners": {
            "title": "Owners",
            "type": "string",
            "example": "THOMAS J DALEY, AVA P DALEY"
          },
          "approximate_value_midpoint": {
            "title": "Approximate Value Midpoint",
            "type": "integer",
            "example": 515908
          },
          "approximate_value_high": {
            "title": "Approximate Value High",
            "type": "integer",
            "example": 521067
          },
          "approximate_value_low": {
            "title": "Approximate Value Low",
            "type": "integer",
            "example": 510748
          },
          "equity_amount": {
            "title": "Equity Amount",
            "type": "integer",
            "example": 445790
          }
        }
      },
      "RegistrationResponse": {
        "title": "RegistrationResponse",
        "required": [
          "username",
          "message",
          "status",
          "user_id"
        ],
        "type": "object",
        "properties": {
          "username": {
            "title": "Username",
            "type": "string"
          },
          "message": {
            "title": "Message",
            "type": "string"
          },
          "status": {
            "title": "Status",
            "type": "string"
          },
          "user_id": {
            "title": "User Id",
            "type": "string"
          }
        },
        "example": {
          "username": "me@mydomain.com",
          "message": "User created successfully",
          "status": "success",
          "user_id": "62e72880301b8a8b57a743c6"
        }
      },
      "Response": {
        "title": "Response",
        "required": [
          "message"
        ],
        "type": "object",
        "properties": {
          "message": {
            "title": "Message",
            "type": "string"
          }
        },
        "description": "Response model - For Responses that do NOT contain an ID field.",
        "example": {
          "message": "Falcon API Copyright (c) 2022, Thomas J. Daley, Esq. - Version 1.0.0"
        }
      },
      "ResponseAndId": {
        "title": "ResponseAndId",
        "required": [
          "message"
        ],
        "type": "object",
        "properties": {
          "message": {
            "title": "Message",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          }
        },
        "description": "Response model - For Responses that contain an ID field.",
        "example": {
          "message": "Document added",
          "id": "2876ce60-0f93-4548-8c2f-ac1014dd8697"
        }
      },
      "Token": {
        "title": "Token",
        "required": [
          "access_token",
          "token_type"
        ],
        "type": "object",
        "properties": {
          "access_token": {
            "title": "Access Token",
            "type": "string"
          },
          "token_type": {
            "title": "Token Type",
            "type": "string"
          }
        }
      },
      "Tracker": {
        "title": "Tracker",
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "Id",
            "type": "string",
            "default": "fa14d555-5414-4153-bee8-8539519b6183"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "client_reference": {
            "title": "Client Reference",
            "type": "string"
          },
          "bates_pattern": {
            "title": "Bates Pattern",
            "type": "string"
          },
          "documents": {
            "title": "Documents",
            "type": "array",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "added_username": {
            "title": "Added Username",
            "type": "string"
          },
          "added_date": {
            "title": "Added Date",
            "type": "string",
            "format": "date-time"
          },
          "updated_username": {
            "title": "Updated Username",
            "type": "string"
          },
          "updated_date": {
            "title": "Updated Date",
            "type": "string",
            "format": "date-time"
          },
          "auth_usernames": {
            "title": "Auth Usernames",
            "type": "array",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "version": {
            "title": "Version",
            "type": "string",
            "default": "a9788f10-357e-41cd-8ce0-d9dcd1193382"
          }
        },
        "description": "Tracker model",
        "example": {
          "id": "tracker-1",
          "name": "Client 20304 - Our Production",
          "username": "my@email.com",
          "client_reference": "DALTHO01A",
          "bates_pattern": "TJD \\d{6}"
        }
      },
      "TrackerUpdate": {
        "title": "TrackerUpdate",
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "username": {
            "title": "Username",
            "type": "string"
          },
          "client_reference": {
            "title": "Client Reference",
            "type": "string"
          },
          "bates_pattern": {
            "title": "Bates Pattern",
            "type": "string"
          },
          "added_username": {
            "title": "Added Username",
            "type": "string"
          },
          "added_date": {
            "title": "Added Date",
            "type": "string",
            "format": "date-time"
          },
          "updated_username": {
            "title": "Updated Username",
            "type": "string"
          },
          "updated_date": {
            "title": "Updated Date",
            "type": "string",
            "format": "date-time"
          },
          "auth_usernames": {
            "title": "Auth Usernames",
            "type": "array",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "version": {
            "title": "Version",
            "type": "string",
            "default": "324f0395-dc35-4e73-95bc-c968107600fb"
          }
        },
        "description": "Tracker Update model\n\nNOTE: This model must not have a docuemnts field.",
        "example": {
          "id": "tracker-1",
          "name": "New Tracker Name"
        }
      },
      "UserRegistration": {
        "title": "UserRegistration",
        "required": [
          "username",
          "email",
          "full_name",
          "password"
        ],
        "type": "object",
        "properties": {
          "username": {
            "title": "Username",
            "type": "string"
          },
          "email": {
            "title": "Email",
            "type": "string"
          },
          "full_name": {
            "title": "Full Name",
            "type": "string"
          },
          "password": {
            "title": "Password",
            "type": "string"
          }
        },
        "example": {
          "username": "me@mydomain.com",
          "email": "me@mydomain.com",
          "full_name": "Thomas J. Daley, Esq.",
          "password": "password"
        }
      },
      "ValidationError": {
        "title": "ValidationError",
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "type": "object",
        "properties": {
          "loc": {
            "title": "Location",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            }
          },
          "msg": {
            "title": "Message",
            "type": "string"
          },
          "type": {
            "title": "Error Type",
            "type": "string"
          }
        }
      }
    },
    "securitySchemes": {
      "OAuth2PasswordBearer": {
        "type": "oauth2",
        "flows": {
          "password": {
            "scopes": {},
            "tokenUrl": "api/v1_0/users/token"
          }
        }
      }
    }
  }
}