@simplyhomes/sos-sdk
Version:
TypeScript SDK for Simply Homes SoS API v4
154 lines • 99.3 kB
TypeScript
/**
* API v4
* Swagger documentation for API v4
*
* The version of the OpenAPI document: 4.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import * as runtime from '../runtime';
import type { V4CountiesCreateCountyBodyDto, V4CountiesCreateCountyResponseDto, V4CountiesDeleteCountyResponseDto, V4CountiesGetCountiesInViewResponseDto, V4CountiesGetCountiesResponseDto, V4CountiesGetCountyColumnsResponseDto, V4CountiesGetCountyResponseDto, V4CountiesUpdateCountyBodyDto, V4CountiesUpdateCountyResponseDto } from '../models/index';
export interface V4CountiesControllerCreateCountyV4Request {
v4CountiesCreateCountyBodyDto: V4CountiesCreateCountyBodyDto;
}
export interface V4CountiesControllerDeleteCountyV4Request {
countyId: string;
}
export interface V4CountiesControllerGetCountiesInViewV4Request {
viewId: number;
limit?: number;
offset?: number;
countOnly?: boolean;
}
export interface V4CountiesControllerGetCountiesV4Request {
viewId?: number;
limit?: number;
offset?: number;
countOnly?: boolean;
}
export interface V4CountiesControllerGetCountyColumnsV4Request {
columns: string;
countyId: string;
}
export interface V4CountiesControllerGetCountyV4Request {
countyId: string;
viewId?: number;
}
export interface V4CountiesControllerUpdateCountyV4Request {
countyId: string;
v4CountiesUpdateCountyBodyDto: V4CountiesUpdateCountyBodyDto;
}
/**
* CountiesAPIV4Api - interface
*
* @export
* @interface CountiesAPIV4ApiInterface
*/
export interface CountiesAPIV4ApiInterface {
/**
* # POST /v4/counties ## Overview Creates a new county with the provided information. This endpoint allows you to add new counties to your system with their tax rates, fees, and geographic information. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Body The request body should contain county information to create the new county. ### Required Fields | Field | Type | Description | |-------|------|-------------| | `name` | string | County name (must be descriptive and unique) | ### Optional Fields | Field | Type | Description | |-------|------|-------------| | `attomNeighborhoodComunityData` | string | ATTOM neighborhood community data | | `taxRate` | string | County property tax rate (decimal format) | | `titleInsurancePercentage` | string | Title insurance percentage rate | | `titleInsuranceBuyerPppointment` | string | Title insurance buyer apportionment | | `transferTaxPercentage` | string | Transfer tax percentage rate | | `transferTaxBuyerAppointment` | string | Transfer tax buyer apportionment | ### Validation Rules - **Name**: Required, non-empty string, should be descriptive - **Tax Rates**: Must be valid decimal numbers if provided - **Percentages**: Must be valid decimal values between 0 and 1 if provided - **Organization Scoping**: County is automatically associated with user\'s organization ## Request Example ```json { \"name\": \"Orange County\", \"taxRate\": \"1.05\", \"titleInsurancePercentage\": \"0.45\", \"titleInsuranceBuyerPppointment\": \"buyer\", \"transferTaxPercentage\": \"0.055\", \"transferTaxBuyerAppointment\": \"0.5\" } ``` ## Response Structure Returns the newly created county\'s ID and confirmation. ## Use Cases This endpoint is ideal for: - **County Expansion**: Add new counties as business expands to new areas - **Market Entry**: Include new counties for property analysis and deals - **Data Management**: Maintain comprehensive county database - **Tax Analysis**: Add counties with current tax and fee structures - **Integration**: Sync counties from external geographic or tax systems - **Compliance**: Ensure all relevant counties are included for regulatory purposes ## Business Rules - **Name Requirements**: County names should be clear and descriptive - **Default Values**: Unspecified tax rates and fees default to null and can be updated later - **Organization Association**: Counties are automatically scoped to the user\'s organization - **Data Validation**: All tax rates and percentages are validated for reasonable ranges - **Audit Trail**: County creation is logged for compliance and tracking ## Tax and Fee Setup ### Initial Configuration You can provide basic tax and fee information during creation or update them later: - **Property Tax Rates**: Annual property tax percentages - **Title Insurance**: Title insurance costs and buyer responsibility - **Transfer Tax**: Transfer tax rates and apportionment details ### Progressive Setup - **Minimal Creation**: Create with just a name and add rates progressively - **Complete Setup**: Provide all tax and fee information during initial creation - **Flexible Updates**: Update any rates after creation using PATCH endpoint ## Error Handling Common validation errors include: - **Missing Required Fields**: Name not provided - **Invalid Rates**: Tax rates or percentages outside acceptable ranges - **Invalid Data Types**: Non-string values for text fields or non-numeric values for rates - **Duplicate Names**: County name conflicts within organization
* @summary Create a new county
* @param {V4CountiesCreateCountyBodyDto} v4CountiesCreateCountyBodyDto
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CountiesAPIV4ApiInterface
*/
v4CountiesControllerCreateCountyV4Raw(requestParameters: V4CountiesControllerCreateCountyV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4CountiesCreateCountyResponseDto>>;
/**
* # POST /v4/counties ## Overview Creates a new county with the provided information. This endpoint allows you to add new counties to your system with their tax rates, fees, and geographic information. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Body The request body should contain county information to create the new county. ### Required Fields | Field | Type | Description | |-------|------|-------------| | `name` | string | County name (must be descriptive and unique) | ### Optional Fields | Field | Type | Description | |-------|------|-------------| | `attomNeighborhoodComunityData` | string | ATTOM neighborhood community data | | `taxRate` | string | County property tax rate (decimal format) | | `titleInsurancePercentage` | string | Title insurance percentage rate | | `titleInsuranceBuyerPppointment` | string | Title insurance buyer apportionment | | `transferTaxPercentage` | string | Transfer tax percentage rate | | `transferTaxBuyerAppointment` | string | Transfer tax buyer apportionment | ### Validation Rules - **Name**: Required, non-empty string, should be descriptive - **Tax Rates**: Must be valid decimal numbers if provided - **Percentages**: Must be valid decimal values between 0 and 1 if provided - **Organization Scoping**: County is automatically associated with user\'s organization ## Request Example ```json { \"name\": \"Orange County\", \"taxRate\": \"1.05\", \"titleInsurancePercentage\": \"0.45\", \"titleInsuranceBuyerPppointment\": \"buyer\", \"transferTaxPercentage\": \"0.055\", \"transferTaxBuyerAppointment\": \"0.5\" } ``` ## Response Structure Returns the newly created county\'s ID and confirmation. ## Use Cases This endpoint is ideal for: - **County Expansion**: Add new counties as business expands to new areas - **Market Entry**: Include new counties for property analysis and deals - **Data Management**: Maintain comprehensive county database - **Tax Analysis**: Add counties with current tax and fee structures - **Integration**: Sync counties from external geographic or tax systems - **Compliance**: Ensure all relevant counties are included for regulatory purposes ## Business Rules - **Name Requirements**: County names should be clear and descriptive - **Default Values**: Unspecified tax rates and fees default to null and can be updated later - **Organization Association**: Counties are automatically scoped to the user\'s organization - **Data Validation**: All tax rates and percentages are validated for reasonable ranges - **Audit Trail**: County creation is logged for compliance and tracking ## Tax and Fee Setup ### Initial Configuration You can provide basic tax and fee information during creation or update them later: - **Property Tax Rates**: Annual property tax percentages - **Title Insurance**: Title insurance costs and buyer responsibility - **Transfer Tax**: Transfer tax rates and apportionment details ### Progressive Setup - **Minimal Creation**: Create with just a name and add rates progressively - **Complete Setup**: Provide all tax and fee information during initial creation - **Flexible Updates**: Update any rates after creation using PATCH endpoint ## Error Handling Common validation errors include: - **Missing Required Fields**: Name not provided - **Invalid Rates**: Tax rates or percentages outside acceptable ranges - **Invalid Data Types**: Non-string values for text fields or non-numeric values for rates - **Duplicate Names**: County name conflicts within organization
* Create a new county
*/
v4CountiesControllerCreateCountyV4(requestParameters: V4CountiesControllerCreateCountyV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4CountiesCreateCountyResponseDto>;
/**
* # DELETE /v4/counties/{countyId} ## Overview Deletes an existing county from the system. This is a permanent operation that removes the county and handles all associated data relationships appropriately. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `countyId` | string | Yes | The unique identifier of the county to delete | ## Access Control - **Organization Scope**: County must be relevant to the authenticated user\'s organization - **County Validation**: Invalid or non-existent county IDs will return a 404 error - **Data Privacy**: Only counties within the user\'s organization context can be deleted ## Deletion Behavior The deletion operation: - **Permanent Removal**: County is permanently deleted from the system - **Cascade Handling**: Associated relationships and references are handled appropriately - **Immediate Effect**: Deletion is applied immediately - **Audit Trail**: Deletion is logged for audit and compliance purposes - **Data Integrity**: System ensures referential integrity during deletion ## Response Structure Returns confirmation that the county was successfully deleted. ## Use Cases This endpoint is ideal for: - **Data Cleanup**: Remove outdated or incorrect county records - **Geographic Changes**: Remove counties no longer relevant to operations - **System Maintenance**: Clean up test or duplicate county data - **Compliance**: Delete counties upon regulatory or business changes - **Data Management**: Maintain clean county databases - **Portfolio Changes**: Remove counties when business focus changes ## Important Considerations Before deleting a county, consider: - **Active References**: Check if county is referenced by active properties or deals - **Historical Data**: Consider impact on historical deal records - **Backup Requirements**: Ensure proper backup if recovery might be needed - **Compliance**: Follow data retention and deletion policies - **User Notification**: Consider notifying relevant users of the deletion - **Alternative Actions**: Consider deactivating instead of deleting for data preservation ## Referential Impact County deletion may affect: - **Property Deals**: Properties located in this county - **Historical Records**: Past deals and analysis using this county - **Reports**: Historical reports that included this county - **Tax Calculations**: Deal analyses that used this county\'s tax rates - **Integration**: External systems that reference this county ## Data Relationships The system handles these relationships during deletion: - **Property References**: Properties in this county are updated appropriately - **Deal History**: Historical deal records are preserved with archived county data - **User Preferences**: User preferences referencing this county are updated - **Views and Filters**: Saved views that filter by this county are updated - **Reports**: Report configurations are updated to handle missing county ## Error Handling Common errors include: - **County Not Found**: County ID does not exist or not accessible to organization - **Permission Denied**: User lacks permission to delete counties - **Referential Constraints**: County cannot be deleted due to active references - **System Errors**: Database or system issues preventing deletion - **Business Rules**: Business logic preventing deletion (e.g., active deals) ## Recovery - **No API Recovery**: Deleted counties cannot be restored through the API - **Backup Systems**: Recovery may be possible through system backups - **Audit Logs**: Deletion events are recorded for audit purposes - **Data Archival**: Consider data archival policies for compliance - **Recreation**: Deleted counties can be recreated with POST /v4/counties
* @summary Delete a specific county by countyId
* @param {string} countyId The unique identifier of the county
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CountiesAPIV4ApiInterface
*/
v4CountiesControllerDeleteCountyV4Raw(requestParameters: V4CountiesControllerDeleteCountyV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4CountiesDeleteCountyResponseDto>>;
/**
* # DELETE /v4/counties/{countyId} ## Overview Deletes an existing county from the system. This is a permanent operation that removes the county and handles all associated data relationships appropriately. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `countyId` | string | Yes | The unique identifier of the county to delete | ## Access Control - **Organization Scope**: County must be relevant to the authenticated user\'s organization - **County Validation**: Invalid or non-existent county IDs will return a 404 error - **Data Privacy**: Only counties within the user\'s organization context can be deleted ## Deletion Behavior The deletion operation: - **Permanent Removal**: County is permanently deleted from the system - **Cascade Handling**: Associated relationships and references are handled appropriately - **Immediate Effect**: Deletion is applied immediately - **Audit Trail**: Deletion is logged for audit and compliance purposes - **Data Integrity**: System ensures referential integrity during deletion ## Response Structure Returns confirmation that the county was successfully deleted. ## Use Cases This endpoint is ideal for: - **Data Cleanup**: Remove outdated or incorrect county records - **Geographic Changes**: Remove counties no longer relevant to operations - **System Maintenance**: Clean up test or duplicate county data - **Compliance**: Delete counties upon regulatory or business changes - **Data Management**: Maintain clean county databases - **Portfolio Changes**: Remove counties when business focus changes ## Important Considerations Before deleting a county, consider: - **Active References**: Check if county is referenced by active properties or deals - **Historical Data**: Consider impact on historical deal records - **Backup Requirements**: Ensure proper backup if recovery might be needed - **Compliance**: Follow data retention and deletion policies - **User Notification**: Consider notifying relevant users of the deletion - **Alternative Actions**: Consider deactivating instead of deleting for data preservation ## Referential Impact County deletion may affect: - **Property Deals**: Properties located in this county - **Historical Records**: Past deals and analysis using this county - **Reports**: Historical reports that included this county - **Tax Calculations**: Deal analyses that used this county\'s tax rates - **Integration**: External systems that reference this county ## Data Relationships The system handles these relationships during deletion: - **Property References**: Properties in this county are updated appropriately - **Deal History**: Historical deal records are preserved with archived county data - **User Preferences**: User preferences referencing this county are updated - **Views and Filters**: Saved views that filter by this county are updated - **Reports**: Report configurations are updated to handle missing county ## Error Handling Common errors include: - **County Not Found**: County ID does not exist or not accessible to organization - **Permission Denied**: User lacks permission to delete counties - **Referential Constraints**: County cannot be deleted due to active references - **System Errors**: Database or system issues preventing deletion - **Business Rules**: Business logic preventing deletion (e.g., active deals) ## Recovery - **No API Recovery**: Deleted counties cannot be restored through the API - **Backup Systems**: Recovery may be possible through system backups - **Audit Logs**: Deletion events are recorded for audit purposes - **Data Archival**: Consider data archival policies for compliance - **Recreation**: Deleted counties can be recreated with POST /v4/counties
* Delete a specific county by countyId
*/
v4CountiesControllerDeleteCountyV4(requestParameters: V4CountiesControllerDeleteCountyV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4CountiesDeleteCountyResponseDto>;
/**
* # GET /v4/counties/viewId/{viewId} ## Overview Retrieves counties filtered by a specific view configuration. This endpoint applies view-defined filters, sorts, and column selections to provide a customized dataset of counties. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `viewId` | number | Yes | The unique identifier of the view to apply | ### Query Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `limit` | number | No | Maximum number of counties to return (default: 20, max: 100) | | `offset` | number | No | Number of counties to skip for pagination (default: 0) | | `countOnly` | boolean | No | Return only the count of counties without the actual data | ## View Application The specified view configuration is applied automatically: - **Filters**: All view filters are applied to narrow the county dataset - **Sorts**: View sort criteria determine the order of returned counties - **Columns**: View column selection determines which fields are returned - **Relationships**: Related data inclusion based on view configuration ## Access Control - **Organization Scope**: Counties are filtered by the user\'s organization context - **View Ownership**: View must belong to the requesting user - **Data Privacy**: Only organization-relevant counties are accessible through views ## Response Structure Returns counties that match the specified view configuration. ## Use Cases This endpoint is ideal for: - **Custom Dashboards**: Display counties according to predefined views - **Filtered Reports**: Generate reports with specific county criteria - **Saved Searches**: Retrieve counties using saved filter combinations - **User Preferences**: Apply user-defined county viewing preferences - **Specialized Views**: Access counties for specific tax analysis or geographic criteria ## View Consistency - **Reproducible Results**: Same view ID produces consistent results - **Filter Persistence**: View filters remain constant across requests - **Sort Stability**: View sorting provides predictable ordering - **Column Consistency**: Same columns returned for each request ## Performance Benefits - **Optimized Queries**: View-specific optimizations improve performance - **Cached Configurations**: View settings are cached for faster execution - **Reduced Overhead**: Only requested columns are processed and returned - **Efficient Filtering**: Database-level filtering reduces data transfer
* @summary Get counties with a specific viewId
* @param {number} viewId The unique identifier of the view
* @param {number} [limit] The maximum number of objects to return
* @param {number} [offset] The offset for pagination, used to skip a number of objects
* @param {boolean} [countOnly] Whether to return only the count of objects instead of the objects themselves
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CountiesAPIV4ApiInterface
*/
v4CountiesControllerGetCountiesInViewV4Raw(requestParameters: V4CountiesControllerGetCountiesInViewV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4CountiesGetCountiesInViewResponseDto>>;
/**
* # GET /v4/counties/viewId/{viewId} ## Overview Retrieves counties filtered by a specific view configuration. This endpoint applies view-defined filters, sorts, and column selections to provide a customized dataset of counties. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `viewId` | number | Yes | The unique identifier of the view to apply | ### Query Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `limit` | number | No | Maximum number of counties to return (default: 20, max: 100) | | `offset` | number | No | Number of counties to skip for pagination (default: 0) | | `countOnly` | boolean | No | Return only the count of counties without the actual data | ## View Application The specified view configuration is applied automatically: - **Filters**: All view filters are applied to narrow the county dataset - **Sorts**: View sort criteria determine the order of returned counties - **Columns**: View column selection determines which fields are returned - **Relationships**: Related data inclusion based on view configuration ## Access Control - **Organization Scope**: Counties are filtered by the user\'s organization context - **View Ownership**: View must belong to the requesting user - **Data Privacy**: Only organization-relevant counties are accessible through views ## Response Structure Returns counties that match the specified view configuration. ## Use Cases This endpoint is ideal for: - **Custom Dashboards**: Display counties according to predefined views - **Filtered Reports**: Generate reports with specific county criteria - **Saved Searches**: Retrieve counties using saved filter combinations - **User Preferences**: Apply user-defined county viewing preferences - **Specialized Views**: Access counties for specific tax analysis or geographic criteria ## View Consistency - **Reproducible Results**: Same view ID produces consistent results - **Filter Persistence**: View filters remain constant across requests - **Sort Stability**: View sorting provides predictable ordering - **Column Consistency**: Same columns returned for each request ## Performance Benefits - **Optimized Queries**: View-specific optimizations improve performance - **Cached Configurations**: View settings are cached for faster execution - **Reduced Overhead**: Only requested columns are processed and returned - **Efficient Filtering**: Database-level filtering reduces data transfer
* Get counties with a specific viewId
*/
v4CountiesControllerGetCountiesInViewV4(requestParameters: V4CountiesControllerGetCountiesInViewV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4CountiesGetCountiesInViewResponseDto>;
/**
* # GET /v4/counties ## Overview Retrieves a list of counties with optional filtering, sorting, and pagination capabilities. This endpoint provides access to county information including tax rates, title insurance rates, and transfer tax details. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Query Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `viewId` | number | No | Optional view ID to apply filters and column selection | | `limit` | number | No | Maximum number of counties to return (default: 20, max: 100) | | `offset` | number | No | Number of counties to skip for pagination (default: 0) | | `countOnly` | boolean | No | Return only the count of counties without the actual data | ## Access Control - **Organization Scope**: Counties are filtered by the user\'s organization context - **Data Privacy**: Only counties relevant to the organization are accessible - **Permission**: User must have county read permissions ## View Integration When a `viewId` is provided: - **Filters**: All view filters are applied to narrow the county dataset - **Sorts**: View sort criteria determine the order of returned counties - **Columns**: View column selection determines which fields are returned - **Consistent Results**: Same view produces consistent response structure ## Response Structure Returns a paginated list of counties matching the specified criteria. ## Use Cases This endpoint is ideal for: - **County Management**: Building county listing interfaces and dashboards - **Tax Analysis**: Analyzing tax rates and fees across different counties - **Deal Analysis**: Accessing county-specific costs for property deals - **Integration**: Syncing county data with external systems - **Reporting**: Generating county-based analytics and reports - **Location Selection**: Choosing counties based on tax and fee structures ## County Data Categories County information includes: - **Basic Information**: Name and identification - **Tax Information**: Tax rates and assessment data - **Title Insurance**: Title insurance percentages and buyer apportionment - **Transfer Tax**: Transfer tax percentages and buyer apportionment - **ATTOM Data**: Neighborhood community data integration ## Performance Considerations - **Optimized Queries**: Database queries are optimized for organization filtering - **View Caching**: View configurations are cached for improved performance - **Index Usage**: Queries utilize database indexes for fast retrieval - **Response Size**: Use limit parameter to control response size
* @summary Get counties with optional viewId
* @param {number} [viewId] The ID of the view to use for retrieving the repository
* @param {number} [limit] The maximum number of objects to return
* @param {number} [offset] The offset for pagination, used to skip a number of objects
* @param {boolean} [countOnly] Whether to return only the count of objects instead of the objects themselves
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CountiesAPIV4ApiInterface
*/
v4CountiesControllerGetCountiesV4Raw(requestParameters: V4CountiesControllerGetCountiesV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4CountiesGetCountiesResponseDto>>;
/**
* # GET /v4/counties ## Overview Retrieves a list of counties with optional filtering, sorting, and pagination capabilities. This endpoint provides access to county information including tax rates, title insurance rates, and transfer tax details. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Query Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `viewId` | number | No | Optional view ID to apply filters and column selection | | `limit` | number | No | Maximum number of counties to return (default: 20, max: 100) | | `offset` | number | No | Number of counties to skip for pagination (default: 0) | | `countOnly` | boolean | No | Return only the count of counties without the actual data | ## Access Control - **Organization Scope**: Counties are filtered by the user\'s organization context - **Data Privacy**: Only counties relevant to the organization are accessible - **Permission**: User must have county read permissions ## View Integration When a `viewId` is provided: - **Filters**: All view filters are applied to narrow the county dataset - **Sorts**: View sort criteria determine the order of returned counties - **Columns**: View column selection determines which fields are returned - **Consistent Results**: Same view produces consistent response structure ## Response Structure Returns a paginated list of counties matching the specified criteria. ## Use Cases This endpoint is ideal for: - **County Management**: Building county listing interfaces and dashboards - **Tax Analysis**: Analyzing tax rates and fees across different counties - **Deal Analysis**: Accessing county-specific costs for property deals - **Integration**: Syncing county data with external systems - **Reporting**: Generating county-based analytics and reports - **Location Selection**: Choosing counties based on tax and fee structures ## County Data Categories County information includes: - **Basic Information**: Name and identification - **Tax Information**: Tax rates and assessment data - **Title Insurance**: Title insurance percentages and buyer apportionment - **Transfer Tax**: Transfer tax percentages and buyer apportionment - **ATTOM Data**: Neighborhood community data integration ## Performance Considerations - **Optimized Queries**: Database queries are optimized for organization filtering - **View Caching**: View configurations are cached for improved performance - **Index Usage**: Queries utilize database indexes for fast retrieval - **Response Size**: Use limit parameter to control response size
* Get counties with optional viewId
*/
v4CountiesControllerGetCountiesV4(requestParameters: V4CountiesControllerGetCountiesV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4CountiesGetCountiesResponseDto>;
/**
* # GET /v4/counties/{countyId}/{columns} ## Overview Retrieves specific columns for a county identified by its unique ID. This endpoint allows selective data retrieval, returning only the requested fields for the specified county. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `countyId` | string | Yes | The unique identifier of the county | | `columns` | string | Yes | Comma-separated list of column names to retrieve | ## Column Selection Specify desired columns as a comma-separated string: - **Basic Info**: `cid,name,organizationId` - **Tax Information**: `taxRate,titleInsurancePercentage,transferTaxPercentage` - **Buyer Responsibility**: `titleInsuranceBuyerPppointment,transferTaxBuyerAppointment` - **Geographic Data**: `attomNeighborhoodComunityData` - **Custom Selection**: Any combination of available columns ## Available Columns ### Basic Information - `cid`: County ID - `name`: County name - `organizationId`: Organization ID ### Tax and Fee Information - `taxRate`: Property tax rate - `titleInsurancePercentage`: Title insurance rate - `titleInsuranceBuyerPppointment`: Title insurance buyer responsibility - `transferTaxPercentage`: Transfer tax rate - `transferTaxBuyerAppointment`: Transfer tax buyer apportionment ### Geographic and Community Data - `attomNeighborhoodComunityData`: ATTOM neighborhood community data ## Access Control - **Organization Scope**: County must be relevant to the user\'s organization - **Column Validation**: Invalid column names are ignored - **Data Privacy**: Only authorized columns are returned ## Use Cases This endpoint is ideal for: - **Performance Optimization**: Retrieve only needed data to reduce bandwidth - **Specific Comparisons**: Get particular fields for county comparison tables - **Integration**: Extract specific data points for external systems - **Custom Views**: Build interfaces with selective data display - **Mobile Optimization**: Minimize data transfer for mobile applications - **API Efficiency**: Reduce response size for better performance ## Performance Benefits - **Reduced Data Transfer**: Only requested columns are returned - **Faster Processing**: Less data processing on both server and client - **Network Efficiency**: Smaller response payloads - **Selective Queries**: Database queries target only required fields - **Cache Optimization**: Smaller responses improve caching efficiency
* @summary Get specific columns of a county by countyId
* @param {string} columns Comma-separated list of column names
* @param {string} countyId The unique identifier of the county
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CountiesAPIV4ApiInterface
*/
v4CountiesControllerGetCountyColumnsV4Raw(requestParameters: V4CountiesControllerGetCountyColumnsV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4CountiesGetCountyColumnsResponseDto>>;
/**
* # GET /v4/counties/{countyId}/{columns} ## Overview Retrieves specific columns for a county identified by its unique ID. This endpoint allows selective data retrieval, returning only the requested fields for the specified county. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `countyId` | string | Yes | The unique identifier of the county | | `columns` | string | Yes | Comma-separated list of column names to retrieve | ## Column Selection Specify desired columns as a comma-separated string: - **Basic Info**: `cid,name,organizationId` - **Tax Information**: `taxRate,titleInsurancePercentage,transferTaxPercentage` - **Buyer Responsibility**: `titleInsuranceBuyerPppointment,transferTaxBuyerAppointment` - **Geographic Data**: `attomNeighborhoodComunityData` - **Custom Selection**: Any combination of available columns ## Available Columns ### Basic Information - `cid`: County ID - `name`: County name - `organizationId`: Organization ID ### Tax and Fee Information - `taxRate`: Property tax rate - `titleInsurancePercentage`: Title insurance rate - `titleInsuranceBuyerPppointment`: Title insurance buyer responsibility - `transferTaxPercentage`: Transfer tax rate - `transferTaxBuyerAppointment`: Transfer tax buyer apportionment ### Geographic and Community Data - `attomNeighborhoodComunityData`: ATTOM neighborhood community data ## Access Control - **Organization Scope**: County must be relevant to the user\'s organization - **Column Validation**: Invalid column names are ignored - **Data Privacy**: Only authorized columns are returned ## Use Cases This endpoint is ideal for: - **Performance Optimization**: Retrieve only needed data to reduce bandwidth - **Specific Comparisons**: Get particular fields for county comparison tables - **Integration**: Extract specific data points for external systems - **Custom Views**: Build interfaces with selective data display - **Mobile Optimization**: Minimize data transfer for mobile applications - **API Efficiency**: Reduce response size for better performance ## Performance Benefits - **Reduced Data Transfer**: Only requested columns are returned - **Faster Processing**: Less data processing on both server and client - **Network Efficiency**: Smaller response payloads - **Selective Queries**: Database queries target only required fields - **Cache Optimization**: Smaller responses improve caching efficiency
* Get specific columns of a county by countyId
*/
v4CountiesControllerGetCountyColumnsV4(requestParameters: V4CountiesControllerGetCountyColumnsV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4CountiesGetCountyColumnsResponseDto>;
/**
* # GET /v4/counties/{countyId} ## Overview Retrieves detailed information for a specific county by its unique identifier. This endpoint returns complete county data including all tax rates, fees, and geographic information. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `countyId` | string | Yes | The unique identifier of the county to retrieve | ### Query Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `viewId` | number | No | Optional view ID to apply column selection and formatting | ## Access Control - **Organization Scope**: County must be relevant to the authenticated user\'s organization - **County Validation**: Invalid or non-existent county IDs will return a 404 error - **Data Privacy**: Only counties within the user\'s organization context are accessible ## Response Structure Returns a complete county object with all available fields and tax information. ## Use Cases This endpoint is ideal for: - **County Detail Views**: Display complete county information in detail pages - **Tax Analysis**: Access all tax rates and fees for detailed financial analysis - **Deal Calculations**: Get county-specific costs for property deal analysis - **Integration Workflows**: Access complete county data for external system sync - **Location Analysis**: Get comprehensive location data for geographic analysis - **Compliance**: Access complete tax and fee structure for regulatory compliance ## Tax and Fee Access The response includes comprehensive tax and fee information: - **Property Tax Rates**: Current property tax percentages and structures - **Title Insurance**: Title insurance costs and buyer responsibility - **Transfer Tax**: Transfer tax rates and apportionment details - **Assessment Data**: Property assessment methodologies and rates - **Geographic Data**: Location boundaries and demographic information ## Performance Considerations - **Single Record Fetch**: Optimized for retrieving individual counties - **Complete Data**: Returns all available county fields and tax information - **Real-time Data**: Always returns current county information - **Organization Filtering**: Automatic organization scoping ensures relevance
* @summary Get a specific county by countyId
* @param {string} countyId The unique identifier of the county
* @param {number} [viewId] The ID of the view to use for retrieving the repository
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CountiesAPIV4ApiInterface
*/
v4CountiesControllerGetCountyV4Raw(requestParameters: V4CountiesControllerGetCountyV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4CountiesGetCountyResponseDto>>;
/**
* # GET /v4/counties/{countyId} ## Overview Retrieves detailed information for a specific county by its unique identifier. This endpoint returns complete county data including all tax rates, fees, and geographic information. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `countyId` | string | Yes | The unique identifier of the county to retrieve | ### Query Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `viewId` | number | No | Optional view ID to apply column selection and formatting | ## Access Control - **Organization Scope**: County must be relevant to the authenticated user\'s organization - **County Validation**: Invalid or non-existent county IDs will return a 404 error - **Data Privacy**: Only counties within the user\'s organization context are accessible ## Response Structure Returns a complete county object with all available fields and tax information. ## Use Cases This endpoint is ideal for: - **County Detail Views**: Display complete county information in detail pages - **Tax Analysis**: Access all tax rates and fees for detailed financial analysis - **Deal Calculations**: Get county-specific costs for property deal analysis - **Integration Workflows**: Access complete county data for external system sync - **Location Analysis**: Get comprehensive location data for geographic analysis - **Compliance**: Access complete tax and fee structure for regulatory compliance ## Tax and Fee Access The response includes comprehensive tax and fee information: - **Property Tax Rates**: Current property tax percentages and structures - **Title Insurance**: Title insurance costs and buyer responsibility - **Transfer Tax**: Transfer tax rates and apportionment details - **Assessment Data**: Property assessment methodologies and rates - **Geographic Data**: Location boundaries and demographic information ## Performance Considerations - **Single Record Fetch**: Optimized for retrieving individual counties - **Complete Data**: Returns all available county fields and tax information - **Real-time Data**: Always returns current county information - **Organization Filtering**: Automatic organization scoping ensures relevance
* Get a specific county by countyId
*/
v4CountiesControllerGetCountyV4(requestParameters: V4CountiesControllerGetCountyV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4CountiesGetCountyResponseDto>;
/**
* # PATCH /v4/counties/{countyId} ## Overview Updates an existing county with the provided information. This endpoint allows partial updates, meaning you only need to include the fields you want to change. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `countyId` | string | Yes | The unique identifier of the county to update | ## Request Body The request body should contain only the fields you want to update. All fields are optional for updates. ### Updateable Fields | Field | Type | Description | |-------|------|-------------| | `name` | string | County name | | `attomNeighborhoodComunityData` | string | ATTOM neighborhood community data | | `taxRate` | string | County property tax rate (decimal format) | | `titleInsurancePercentage` | string | Title insurance percentage rate | | `titleInsuranceBuyerPppointment` | string | Title insurance buyer apportionment | | `transferTaxPercentage` | string | Transfer tax percentage rate | | `transferTaxBuyerAppointment` | string | Transfer tax buyer apportionment | ### Validation Rules - **Name**: Must be non-empty string (if provided) - **Tax Rates**: Must be valid decimal numbers (if provided) - **Percentages**: Must be valid decimal values between 0 and 1 (if provided) - **Partial Updates**: Only provided fields will be updated - **Organization Scope**: County must belong to user\'s organization ## Request Example ```json { \"taxRate\": \"1.15\", \"titleInsurancePercentage\": \"0.48\", \"transferTaxPercentage\": \"0.06\" } ``` ## Access Control - **Organization Scope**: County must be relevant to the authenticated user\'s organization - **County Validation**: Invalid or non-existent county IDs will return a 404 error - **Data Privacy**: Only counties within the user\'s organization context can be updated ## Response Structure Returns confirmation that the county was successfully updated. ## Use Cases This endpoint is ideal for: - **Rate Updates**: Modify tax rates and fees as they change over time - **Data Correction**: Fix incorrect information or update outdated rates - **Regulatory Changes**: Update rates based on new tax laws or regulations - **Market Response**: Adjust rates based on local market conditions - **Compliance**: Maintain current and accurate tax and fee information - **Geographic Updates**: Update community data and geographic information ## Update Scenarios ### Rate Changes - **Tax Adjustments**: Update property tax rates based on county assessments - **Fee Modifications**: Adjust title insurance and transfer tax rates - **Regulatory Updates**: Implement new rates based on legal changes ### Data Corrections - **Error Fixes**: Correct data entry errors or outdated information - **Information Updates**: Update community data and geographic information - **Name Changes**: Update county names if official designations change ### Compliance Updates - **Legal Requirements**: Update rates to comply with new regulations - **Audit Corrections**: Make changes based on audit findings - **Policy Changes**: Implement organizational policy updates ## Validation and Constraints - **Rate Validation**: All rates and percentages are validated for reasonable ranges - **Data Integrity**: Updates maintain data consistency and integrity - **Organization Scoping**: Updates are scoped to the user\'s organization - **Audit Trail**: All updates are logged for compliance and tracking ## Error Handling Common validation errors include: - **County Not Found**: County ID does not exist or not accessible to organization - **Invalid Rates**: Tax rates or percentages outside acceptable ranges - **Invalid Data Types**: Non-string values for text fields or invalid rate formats - **Permission Denied**: User lacks permission to update counties
* @summary Update a specific county by countyId
* @param {string} countyId The unique identifier of the county
* @param {V4CountiesUpdateCountyBodyDto} v4CountiesUpdateCountyBodyDto
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CountiesAPIV4ApiInterface
*/
v4CountiesControllerUpdateCountyV4Raw(requestParameters: V4CountiesControllerUpdateCountyV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4CountiesUpdateCountyResponseDto>>;
/**
* # PATCH /v4/counties/{countyId} ## Overview Updates an existing county with the provided information. This endpoint allows partial updates, meaning you only need to include the fields you want to change. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `countyId` | string | Yes | The unique identifier of the county to update | ## Request Body The request body should contain only the fields you want to update. All fields are optional for updates. ### Updateable Fields | Field | Type | Description | |-------|------|-------------| | `name` | string | County name | | `attomNeighborhoodComunityData` | string | ATTOM neighborhood community data | | `taxRate` | string | County property tax rate (decimal format) | | `titleInsurancePercentage` | string | Title insurance percentage rate | | `titleInsuranceBuyerPppointment` | string | Title insurance buyer apportionment | | `transferTaxPercentage` | string | Transfer tax percentage rate | | `transferTaxBuyerAppointment` | string | Transfer tax buyer apportionment | ### Validation Rules - **Name**: Must be non-empty string (if provided) - **Tax Rates**: Must be valid decimal numbers (if provided) - **Percentages**: Must be valid decimal values between 0 and 1 (if provided) - **Partial Updates**: Only provided fields will be updated - **Organization Scope**: County must belong to user\'s organization ## Request Example ```json { \"taxRate\": \"1.15\", \"titleInsurancePercentage\": \"0.48\", \"transferTaxPercentage\": \"0.06\" } ``` ## Access Control - **Organization Scope**: County must be relevant to the authenticated user\'s organization - **County Validation**: Invalid or non-existent county IDs will return a 404 error - **Data Privacy**: Only counties within the user\'s organization context can be updated ## Response Structure Returns confirmation that the county was successfully updated. ## Use Cases This endpoint is ideal for: - **Rate Updates**: Modify tax rates and fees as they change over time - **Data Correction**: Fix incorrect information or update outdated rates - **Regulatory Changes**: Update rates based on new tax laws or regulations - **Market Response**: Adjust rates based on local market conditions - **Compliance**: Maintain current and accurate tax and fee information - **Geographic Updates**: Update community data and geographic information ## Update Scenarios ### Rate Changes - **Tax Adjustments**: Update property tax rates based on count