@simplyhomes/sos-sdk
Version:
TypeScript SDK for Simply Homes SoS API v4
336 lines • 37.4 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 { V4TransactionsCreateTransactionBodyDto, V4TransactionsCreateTransactionResponseDto, V4TransactionsDeleteTransactionResponseDto, V4TransactionsGetTransactionColumnsResponseDto, V4TransactionsGetTransactionResponseDto, V4TransactionsGetTransactionsFilteredByResponseDto, V4TransactionsGetTransactionsInViewResponseDto, V4TransactionsGetTransactionsResponseDto, V4TransactionsGetUniqueValuesResponseDto, V4TransactionsUpdateTransactionBodyDto, V4TransactionsUpdateTransactionResponseDto } from '../models/index';
export interface V4TransactionsControllerCreateTransactionV4Request {
v4TransactionsCreateTransactionBodyDto: V4TransactionsCreateTransactionBodyDto;
}
export interface V4TransactionsControllerDeleteTransactionV4Request {
transactionId: number;
}
export interface V4TransactionsControllerGetTransactionColumnsV4Request {
transactionId: number;
columns: string;
}
export interface V4TransactionsControllerGetTransactionV4Request {
transactionId: number;
viewId?: number;
}
export interface V4TransactionsControllerGetTransactionsFilteredByV4Request {
column: string;
value: string;
viewId?: number;
columns?: string;
limit?: number;
offset?: number;
countOnly?: boolean;
filterOperation?: V4TransactionsControllerGetTransactionsFilteredByV4FilterOperation;
}
export interface V4TransactionsControllerGetTransactionsInViewV4Request {
viewId: number;
limit?: number;
offset?: number;
countOnly?: boolean;
}
export interface V4TransactionsControllerGetTransactionsV4Request {
viewId?: number;
limit?: number;
offset?: number;
countOnly?: boolean;
}
export interface V4TransactionsControllerGetUniqueValuesV4Request {
column: string;
viewId?: number;
limit?: number;
offset?: number;
}
export interface V4TransactionsControllerUpdateTransactionV4Request {
transactionId: number;
v4TransactionsUpdateTransactionBodyDto: V4TransactionsUpdateTransactionBodyDto;
}
/**
* TransactionsAPIV4Api - interface
*
* @export
* @interface TransactionsAPIV4ApiInterface
*/
export interface TransactionsAPIV4ApiInterface {
/**
* Create a new transaction linked to a property
* @summary Create a new transaction
* @param {V4TransactionsCreateTransactionBodyDto} v4TransactionsCreateTransactionBodyDto
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof TransactionsAPIV4ApiInterface
*/
v4TransactionsControllerCreateTransactionV4Raw(requestParameters: V4TransactionsControllerCreateTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsCreateTransactionResponseDto>>;
/**
* Create a new transaction linked to a property
* Create a new transaction
*/
v4TransactionsControllerCreateTransactionV4(requestParameters: V4TransactionsControllerCreateTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsCreateTransactionResponseDto>;
/**
* Remove a transaction from the system
* @summary Delete a specific transaction by transactionId
* @param {number} transactionId The unique identifier of the transaction
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof TransactionsAPIV4ApiInterface
*/
v4TransactionsControllerDeleteTransactionV4Raw(requestParameters: V4TransactionsControllerDeleteTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsDeleteTransactionResponseDto>>;
/**
* Remove a transaction from the system
* Delete a specific transaction by transactionId
*/
v4TransactionsControllerDeleteTransactionV4(requestParameters: V4TransactionsControllerDeleteTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsDeleteTransactionResponseDto>;
/**
* Retrieve only specified columns of a transaction
* @summary Get specific columns of a transaction by transactionId
* @param {number} transactionId The unique identifier of the transaction
* @param {string} columns Comma-separated list of column names
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof TransactionsAPIV4ApiInterface
*/
v4TransactionsControllerGetTransactionColumnsV4Raw(requestParameters: V4TransactionsControllerGetTransactionColumnsV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetTransactionColumnsResponseDto>>;
/**
* Retrieve only specified columns of a transaction
* Get specific columns of a transaction by transactionId
*/
v4TransactionsControllerGetTransactionColumnsV4(requestParameters: V4TransactionsControllerGetTransactionColumnsV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetTransactionColumnsResponseDto>;
/**
* Retrieve details of a single transaction
* @summary Get a specific transaction by transactionId
* @param {number} transactionId The unique identifier of the transaction
* @param {number} [viewId] The ID of the view to use for retrieving the repository
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof TransactionsAPIV4ApiInterface
*/
v4TransactionsControllerGetTransactionV4Raw(requestParameters: V4TransactionsControllerGetTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetTransactionResponseDto>>;
/**
* Retrieve details of a single transaction
* Get a specific transaction by transactionId
*/
v4TransactionsControllerGetTransactionV4(requestParameters: V4TransactionsControllerGetTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetTransactionResponseDto>;
/**
* Retrieve transactions that match the specified column filter
* @summary Get transactions filtered by a specific column and value
* @param {string} column The name of the column
* @param {string} value The value to filter or query by
* @param {number} [viewId] The ID of the view to use for retrieving the repository
* @param {string} [columns] The columns to select from the object
* @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 {'contains' | 'does not contain' | 'is' | 'is not' | 'is any of' | 'is none of' | '=' | '!=' | '>' | '<' | '>=' | '<=' | 'contains all of' | 'contains any of' | 'contains none of' | 'is empty' | 'is not empty' | 'is before' | 'is after' | 'is on or before' | 'is on or after' | 'is between'} [filterOperation] Filters to apply to the view - Operation must be one of the following: + For string: contains, does not contain, is, is not, is any of, is none of + For number: =, !=, >, <, >=, <=, is any of, is none of + For array: contains all of, contains any of, contains none of, is empty, is not empty + For boolean: is + For date: is, is not, is before, is after, is on or before, is on or after, is between, is any of, is none of
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof TransactionsAPIV4ApiInterface
*/
v4TransactionsControllerGetTransactionsFilteredByV4Raw(requestParameters: V4TransactionsControllerGetTransactionsFilteredByV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetTransactionsFilteredByResponseDto>>;
/**
* Retrieve transactions that match the specified column filter
* Get transactions filtered by a specific column and value
*/
v4TransactionsControllerGetTransactionsFilteredByV4(requestParameters: V4TransactionsControllerGetTransactionsFilteredByV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetTransactionsFilteredByResponseDto>;
/**
* Retrieve transactions filtered by a specific view
* @summary Get transactions 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 TransactionsAPIV4ApiInterface
*/
v4TransactionsControllerGetTransactionsInViewV4Raw(requestParameters: V4TransactionsControllerGetTransactionsInViewV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetTransactionsInViewResponseDto>>;
/**
* Retrieve transactions filtered by a specific view
* Get transactions with a specific viewId
*/
v4TransactionsControllerGetTransactionsInViewV4(requestParameters: V4TransactionsControllerGetTransactionsInViewV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetTransactionsInViewResponseDto>;
/**
* Retrieve a list of transactions, optionally filtered by a view
* @summary Get transactions 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 TransactionsAPIV4ApiInterface
*/
v4TransactionsControllerGetTransactionsV4Raw(requestParameters: V4TransactionsControllerGetTransactionsV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetTransactionsResponseDto>>;
/**
* Retrieve a list of transactions, optionally filtered by a view
* Get transactions with optional viewId
*/
v4TransactionsControllerGetTransactionsV4(requestParameters: V4TransactionsControllerGetTransactionsV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetTransactionsResponseDto>;
/**
* # GET /v4/transactions/unique/{column} ## Overview Retrieves all unique values for a specified transaction column along with the count of transactions having each value. This endpoint is ideal for building filter dropdowns, analytics dashboards, and understanding data distribution across transaction fields. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `column` | string | Yes | The transaction column/field to get unique values from (e.g., \"status\", \"closingConfidence\") | ### Query Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `viewId` | number | No | Optional view ID to apply view filters before calculating unique values (only transactions matching the view criteria will be considered) | | `limit` | number | No | Maximum number of unique values to return (default: 100, max: 1000) | | `offset` | number | No | Number of unique values to skip for pagination (default: 0) | ## Supported Columns The endpoint supports any valid transaction column, including but not limited to: ### Status and Classification - **status**: Transaction status (New, In Contract, Closed, etc.) - **closingConfidence**: Confidence level in transaction closing ### Financial Fields - **contractPrice**: Contract price of the transaction - **closingCost**: Estimated closing costs ### Dates - **contractDate**: Date contract was signed - **closingDate**: Expected or actual closing date ## View Integration When a `viewId` is provided: - **Pre-filtering**: View filters are applied before calculating unique values - **Scoped Results**: Only transactions matching the view criteria are considered - **Consistent Data**: Results align with transactions visible in the specified view - **Dynamic Analysis**: Unique values reflect the filtered dataset, not all transactions ## Access Control - **Organization Scope**: Unique values are automatically filtered by organization - **Transaction Ownership**: Only transactions within the organization are considered - **Data Privacy**: Results are isolated between organizations - **View Authorization**: View access is validated before applying view filters ## Response Structure The response contains unique values with their counts, total count, and the queried column name. ## Use Cases This endpoint is ideal for: - **Filter Dropdowns**: Populate dropdown menus with available filter options - **Data Analytics**: Understand distribution of values across transaction portfolio - **Dashboard Widgets**: Display counts and statistics for different transaction categories - **Validation**: Check available values before filtering or updating transactions - **Report Generation**: Generate summaries and breakdowns by transaction attributes ## Examples ### Get Transaction Statuses `GET /v4/transactions/unique/status` ### Get Closing Confidence Levels `GET /v4/transactions/unique/closingConfidence` ### Get Statuses with View Filter `GET /v4/transactions/unique/status?viewId=12345` ## Performance Considerations - **Index Usage**: Queries on indexed columns (status, closingConfidence) perform better - **Result Size**: Use pagination for columns with many unique values - **Data Types**: Numeric columns may return many unique values; consider grouping - **Organization Filtering**: Automatic organization scoping ensures optimal performance ## Integration Patterns **Filter Interfaces:** - Use results to populate filter dropdown options - Show counts to help users understand data availability - Implement dynamic filtering based on available values **Analytics Dashboards:** - Display distribution charts using value counts - Create summary statistics for transaction portfolios - Build interactive data exploration tools **Data Validation:** - Verify valid values before transaction updates - Check data consistency across transaction records - Validate import data against existing values
* @summary Get unique values for a specific transaction column with counts
* @param {string} column The name of the column to get unique values for
* @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 {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof TransactionsAPIV4ApiInterface
*/
v4TransactionsControllerGetUniqueValuesV4Raw(requestParameters: V4TransactionsControllerGetUniqueValuesV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetUniqueValuesResponseDto>>;
/**
* # GET /v4/transactions/unique/{column} ## Overview Retrieves all unique values for a specified transaction column along with the count of transactions having each value. This endpoint is ideal for building filter dropdowns, analytics dashboards, and understanding data distribution across transaction fields. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `column` | string | Yes | The transaction column/field to get unique values from (e.g., \"status\", \"closingConfidence\") | ### Query Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `viewId` | number | No | Optional view ID to apply view filters before calculating unique values (only transactions matching the view criteria will be considered) | | `limit` | number | No | Maximum number of unique values to return (default: 100, max: 1000) | | `offset` | number | No | Number of unique values to skip for pagination (default: 0) | ## Supported Columns The endpoint supports any valid transaction column, including but not limited to: ### Status and Classification - **status**: Transaction status (New, In Contract, Closed, etc.) - **closingConfidence**: Confidence level in transaction closing ### Financial Fields - **contractPrice**: Contract price of the transaction - **closingCost**: Estimated closing costs ### Dates - **contractDate**: Date contract was signed - **closingDate**: Expected or actual closing date ## View Integration When a `viewId` is provided: - **Pre-filtering**: View filters are applied before calculating unique values - **Scoped Results**: Only transactions matching the view criteria are considered - **Consistent Data**: Results align with transactions visible in the specified view - **Dynamic Analysis**: Unique values reflect the filtered dataset, not all transactions ## Access Control - **Organization Scope**: Unique values are automatically filtered by organization - **Transaction Ownership**: Only transactions within the organization are considered - **Data Privacy**: Results are isolated between organizations - **View Authorization**: View access is validated before applying view filters ## Response Structure The response contains unique values with their counts, total count, and the queried column name. ## Use Cases This endpoint is ideal for: - **Filter Dropdowns**: Populate dropdown menus with available filter options - **Data Analytics**: Understand distribution of values across transaction portfolio - **Dashboard Widgets**: Display counts and statistics for different transaction categories - **Validation**: Check available values before filtering or updating transactions - **Report Generation**: Generate summaries and breakdowns by transaction attributes ## Examples ### Get Transaction Statuses `GET /v4/transactions/unique/status` ### Get Closing Confidence Levels `GET /v4/transactions/unique/closingConfidence` ### Get Statuses with View Filter `GET /v4/transactions/unique/status?viewId=12345` ## Performance Considerations - **Index Usage**: Queries on indexed columns (status, closingConfidence) perform better - **Result Size**: Use pagination for columns with many unique values - **Data Types**: Numeric columns may return many unique values; consider grouping - **Organization Filtering**: Automatic organization scoping ensures optimal performance ## Integration Patterns **Filter Interfaces:** - Use results to populate filter dropdown options - Show counts to help users understand data availability - Implement dynamic filtering based on available values **Analytics Dashboards:** - Display distribution charts using value counts - Create summary statistics for transaction portfolios - Build interactive data exploration tools **Data Validation:** - Verify valid values before transaction updates - Check data consistency across transaction records - Validate import data against existing values
* Get unique values for a specific transaction column with counts
*/
v4TransactionsControllerGetUniqueValuesV4(requestParameters: V4TransactionsControllerGetUniqueValuesV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetUniqueValuesResponseDto>;
/**
* Update fields of an existing transaction
* @summary Update a specific transaction by transactionId
* @param {number} transactionId The unique identifier of the transaction
* @param {V4TransactionsUpdateTransactionBodyDto} v4TransactionsUpdateTransactionBodyDto
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof TransactionsAPIV4ApiInterface
*/
v4TransactionsControllerUpdateTransactionV4Raw(requestParameters: V4TransactionsControllerUpdateTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsUpdateTransactionResponseDto>>;
/**
* Update fields of an existing transaction
* Update a specific transaction by transactionId
*/
v4TransactionsControllerUpdateTransactionV4(requestParameters: V4TransactionsControllerUpdateTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsUpdateTransactionResponseDto>;
}
/**
*
*/
export declare class TransactionsAPIV4Api extends runtime.BaseAPI implements TransactionsAPIV4ApiInterface {
/**
* Create a new transaction linked to a property
* Create a new transaction
*/
v4TransactionsControllerCreateTransactionV4Raw(requestParameters: V4TransactionsControllerCreateTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsCreateTransactionResponseDto>>;
/**
* Create a new transaction linked to a property
* Create a new transaction
*/
v4TransactionsControllerCreateTransactionV4(requestParameters: V4TransactionsControllerCreateTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsCreateTransactionResponseDto>;
/**
* Remove a transaction from the system
* Delete a specific transaction by transactionId
*/
v4TransactionsControllerDeleteTransactionV4Raw(requestParameters: V4TransactionsControllerDeleteTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsDeleteTransactionResponseDto>>;
/**
* Remove a transaction from the system
* Delete a specific transaction by transactionId
*/
v4TransactionsControllerDeleteTransactionV4(requestParameters: V4TransactionsControllerDeleteTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsDeleteTransactionResponseDto>;
/**
* Retrieve only specified columns of a transaction
* Get specific columns of a transaction by transactionId
*/
v4TransactionsControllerGetTransactionColumnsV4Raw(requestParameters: V4TransactionsControllerGetTransactionColumnsV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetTransactionColumnsResponseDto>>;
/**
* Retrieve only specified columns of a transaction
* Get specific columns of a transaction by transactionId
*/
v4TransactionsControllerGetTransactionColumnsV4(requestParameters: V4TransactionsControllerGetTransactionColumnsV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetTransactionColumnsResponseDto>;
/**
* Retrieve details of a single transaction
* Get a specific transaction by transactionId
*/
v4TransactionsControllerGetTransactionV4Raw(requestParameters: V4TransactionsControllerGetTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetTransactionResponseDto>>;
/**
* Retrieve details of a single transaction
* Get a specific transaction by transactionId
*/
v4TransactionsControllerGetTransactionV4(requestParameters: V4TransactionsControllerGetTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetTransactionResponseDto>;
/**
* Retrieve transactions that match the specified column filter
* Get transactions filtered by a specific column and value
*/
v4TransactionsControllerGetTransactionsFilteredByV4Raw(requestParameters: V4TransactionsControllerGetTransactionsFilteredByV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetTransactionsFilteredByResponseDto>>;
/**
* Retrieve transactions that match the specified column filter
* Get transactions filtered by a specific column and value
*/
v4TransactionsControllerGetTransactionsFilteredByV4(requestParameters: V4TransactionsControllerGetTransactionsFilteredByV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetTransactionsFilteredByResponseDto>;
/**
* Retrieve transactions filtered by a specific view
* Get transactions with a specific viewId
*/
v4TransactionsControllerGetTransactionsInViewV4Raw(requestParameters: V4TransactionsControllerGetTransactionsInViewV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetTransactionsInViewResponseDto>>;
/**
* Retrieve transactions filtered by a specific view
* Get transactions with a specific viewId
*/
v4TransactionsControllerGetTransactionsInViewV4(requestParameters: V4TransactionsControllerGetTransactionsInViewV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetTransactionsInViewResponseDto>;
/**
* Retrieve a list of transactions, optionally filtered by a view
* Get transactions with optional viewId
*/
v4TransactionsControllerGetTransactionsV4Raw(requestParameters: V4TransactionsControllerGetTransactionsV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetTransactionsResponseDto>>;
/**
* Retrieve a list of transactions, optionally filtered by a view
* Get transactions with optional viewId
*/
v4TransactionsControllerGetTransactionsV4(requestParameters?: V4TransactionsControllerGetTransactionsV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetTransactionsResponseDto>;
/**
* # GET /v4/transactions/unique/{column} ## Overview Retrieves all unique values for a specified transaction column along with the count of transactions having each value. This endpoint is ideal for building filter dropdowns, analytics dashboards, and understanding data distribution across transaction fields. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `column` | string | Yes | The transaction column/field to get unique values from (e.g., \"status\", \"closingConfidence\") | ### Query Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `viewId` | number | No | Optional view ID to apply view filters before calculating unique values (only transactions matching the view criteria will be considered) | | `limit` | number | No | Maximum number of unique values to return (default: 100, max: 1000) | | `offset` | number | No | Number of unique values to skip for pagination (default: 0) | ## Supported Columns The endpoint supports any valid transaction column, including but not limited to: ### Status and Classification - **status**: Transaction status (New, In Contract, Closed, etc.) - **closingConfidence**: Confidence level in transaction closing ### Financial Fields - **contractPrice**: Contract price of the transaction - **closingCost**: Estimated closing costs ### Dates - **contractDate**: Date contract was signed - **closingDate**: Expected or actual closing date ## View Integration When a `viewId` is provided: - **Pre-filtering**: View filters are applied before calculating unique values - **Scoped Results**: Only transactions matching the view criteria are considered - **Consistent Data**: Results align with transactions visible in the specified view - **Dynamic Analysis**: Unique values reflect the filtered dataset, not all transactions ## Access Control - **Organization Scope**: Unique values are automatically filtered by organization - **Transaction Ownership**: Only transactions within the organization are considered - **Data Privacy**: Results are isolated between organizations - **View Authorization**: View access is validated before applying view filters ## Response Structure The response contains unique values with their counts, total count, and the queried column name. ## Use Cases This endpoint is ideal for: - **Filter Dropdowns**: Populate dropdown menus with available filter options - **Data Analytics**: Understand distribution of values across transaction portfolio - **Dashboard Widgets**: Display counts and statistics for different transaction categories - **Validation**: Check available values before filtering or updating transactions - **Report Generation**: Generate summaries and breakdowns by transaction attributes ## Examples ### Get Transaction Statuses `GET /v4/transactions/unique/status` ### Get Closing Confidence Levels `GET /v4/transactions/unique/closingConfidence` ### Get Statuses with View Filter `GET /v4/transactions/unique/status?viewId=12345` ## Performance Considerations - **Index Usage**: Queries on indexed columns (status, closingConfidence) perform better - **Result Size**: Use pagination for columns with many unique values - **Data Types**: Numeric columns may return many unique values; consider grouping - **Organization Filtering**: Automatic organization scoping ensures optimal performance ## Integration Patterns **Filter Interfaces:** - Use results to populate filter dropdown options - Show counts to help users understand data availability - Implement dynamic filtering based on available values **Analytics Dashboards:** - Display distribution charts using value counts - Create summary statistics for transaction portfolios - Build interactive data exploration tools **Data Validation:** - Verify valid values before transaction updates - Check data consistency across transaction records - Validate import data against existing values
* Get unique values for a specific transaction column with counts
*/
v4TransactionsControllerGetUniqueValuesV4Raw(requestParameters: V4TransactionsControllerGetUniqueValuesV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsGetUniqueValuesResponseDto>>;
/**
* # GET /v4/transactions/unique/{column} ## Overview Retrieves all unique values for a specified transaction column along with the count of transactions having each value. This endpoint is ideal for building filter dropdowns, analytics dashboards, and understanding data distribution across transaction fields. ## Authentication - **Required**: Yes - **Security**: - `x-api-key` header - `organization-id` header ## Request Parameters ### Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `column` | string | Yes | The transaction column/field to get unique values from (e.g., \"status\", \"closingConfidence\") | ### Query Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `viewId` | number | No | Optional view ID to apply view filters before calculating unique values (only transactions matching the view criteria will be considered) | | `limit` | number | No | Maximum number of unique values to return (default: 100, max: 1000) | | `offset` | number | No | Number of unique values to skip for pagination (default: 0) | ## Supported Columns The endpoint supports any valid transaction column, including but not limited to: ### Status and Classification - **status**: Transaction status (New, In Contract, Closed, etc.) - **closingConfidence**: Confidence level in transaction closing ### Financial Fields - **contractPrice**: Contract price of the transaction - **closingCost**: Estimated closing costs ### Dates - **contractDate**: Date contract was signed - **closingDate**: Expected or actual closing date ## View Integration When a `viewId` is provided: - **Pre-filtering**: View filters are applied before calculating unique values - **Scoped Results**: Only transactions matching the view criteria are considered - **Consistent Data**: Results align with transactions visible in the specified view - **Dynamic Analysis**: Unique values reflect the filtered dataset, not all transactions ## Access Control - **Organization Scope**: Unique values are automatically filtered by organization - **Transaction Ownership**: Only transactions within the organization are considered - **Data Privacy**: Results are isolated between organizations - **View Authorization**: View access is validated before applying view filters ## Response Structure The response contains unique values with their counts, total count, and the queried column name. ## Use Cases This endpoint is ideal for: - **Filter Dropdowns**: Populate dropdown menus with available filter options - **Data Analytics**: Understand distribution of values across transaction portfolio - **Dashboard Widgets**: Display counts and statistics for different transaction categories - **Validation**: Check available values before filtering or updating transactions - **Report Generation**: Generate summaries and breakdowns by transaction attributes ## Examples ### Get Transaction Statuses `GET /v4/transactions/unique/status` ### Get Closing Confidence Levels `GET /v4/transactions/unique/closingConfidence` ### Get Statuses with View Filter `GET /v4/transactions/unique/status?viewId=12345` ## Performance Considerations - **Index Usage**: Queries on indexed columns (status, closingConfidence) perform better - **Result Size**: Use pagination for columns with many unique values - **Data Types**: Numeric columns may return many unique values; consider grouping - **Organization Filtering**: Automatic organization scoping ensures optimal performance ## Integration Patterns **Filter Interfaces:** - Use results to populate filter dropdown options - Show counts to help users understand data availability - Implement dynamic filtering based on available values **Analytics Dashboards:** - Display distribution charts using value counts - Create summary statistics for transaction portfolios - Build interactive data exploration tools **Data Validation:** - Verify valid values before transaction updates - Check data consistency across transaction records - Validate import data against existing values
* Get unique values for a specific transaction column with counts
*/
v4TransactionsControllerGetUniqueValuesV4(requestParameters: V4TransactionsControllerGetUniqueValuesV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsGetUniqueValuesResponseDto>;
/**
* Update fields of an existing transaction
* Update a specific transaction by transactionId
*/
v4TransactionsControllerUpdateTransactionV4Raw(requestParameters: V4TransactionsControllerUpdateTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<V4TransactionsUpdateTransactionResponseDto>>;
/**
* Update fields of an existing transaction
* Update a specific transaction by transactionId
*/
v4TransactionsControllerUpdateTransactionV4(requestParameters: V4TransactionsControllerUpdateTransactionV4Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<V4TransactionsUpdateTransactionResponseDto>;
}
/**
* @export
* @enum {string}
*/
export declare enum V4TransactionsControllerGetTransactionsFilteredByV4FilterOperation {
Contains = "contains",
DoesNotContain = "does not contain",
Is = "is",
IsNot = "is not",
IsAnyOf = "is any of",
IsNoneOf = "is none of",
Equal = "=",
NotEqual = "!=",
GreaterThan = ">",
LessThan = "<",
GreaterThanOrEqualTo = ">=",
LessThanOrEqualTo = "<=",
ContainsAllOf = "contains all of",
ContainsAnyOf = "contains any of",
ContainsNoneOf = "contains none of",
IsEmpty = "is empty",
IsNotEmpty = "is not empty",
IsBefore = "is before",
IsAfter = "is after",
IsOnOrBefore = "is on or before",
IsOnOrAfter = "is on or after",
IsBetween = "is between"
}
//# sourceMappingURL=TransactionsAPIV4Api.d.ts.map