/**
 * Meeting BaaS API
 * Meeting BaaS API
 *
 * The version of the OpenAPI document: 1.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface ListRecentBotsQuery
 */
export interface ListRecentBotsQuery {
    /**
     * Filter bots by name containing this string.  Performs a case-insensitive partial match on the bot\'s name. Useful for finding bots with specific naming conventions or to locate a particular bot when you don\'t have its ID.  Example: \"Sales\" would match \"Sales Meeting\", \"Quarterly Sales\", etc.
     * @type {string}
     * @memberof ListRecentBotsQuery
     */
    'bot_name'?: string | null;
    /**
     * Filter bots created after this date (ISO format).  Limits results to bots created at or after the specified timestamp. Used for time-based filtering to find recent additions.  Format: ISO-8601 date-time string (YYYY-MM-DDThh:mm:ss) Example: \"2023-05-01T00:00:00\"
     * @type {string}
     * @memberof ListRecentBotsQuery
     */
    'created_after'?: string | null;
    /**
     * Filter bots created before this date (ISO format).  Limits results to bots created at or before the specified timestamp. Used for time-based filtering to exclude recent additions.  Format: ISO-8601 date-time string (YYYY-MM-DDThh:mm:ss) Example: \"2023-05-31T23:59:59\"
     * @type {string}
     * @memberof ListRecentBotsQuery
     */
    'created_before'?: string | null;
    /**
     * Cursor for pagination, obtained from previous response.  Used for retrieving the next set of results after a previous call. The cursor value is returned in the `nextCursor` field of responses that have additional results available.  Format: Base64-encoded string containing pagination metadata
     * @type {string}
     * @memberof ListRecentBotsQuery
     */
    'cursor'?: string | null;
    /**
     * Filter bots ended after this date (ISO format).  Limits results to bots that ended at or after the specified timestamp. Useful for finding completed meetings within a specific time period.  Format: ISO-8601 date-time string (YYYY-MM-DDThh:mm:ss) Example: \"2023-05-01T00:00:00\"
     * @type {string}
     * @memberof ListRecentBotsQuery
     */
    'ended_after'?: string | null;
    /**
     * Filter bots by matching values in the extra JSON payload.  This parameter performs in-memory filtering on the `extra` JSON field, similar to a SQL WHERE clause. It reduces the result set to only include bots that match all specified conditions.  Format specifications: - Single condition: \"field:value\" - Multiple conditions: \"field1:value1,field2:value2\"  Examples: - \"customerId:12345\" - Only bots with this customer ID - \"status:active,project:sales\" - Only active bots from sales projects  Notes: - All conditions must match for a bot to be included - Values are matched exactly (case-sensitive) - Bots without the specified field are excluded
     * @type {string}
     * @memberof ListRecentBotsQuery
     */
    'filter_by_extra'?: string | null;
    /**
     * Maximum number of bots to return in a single request.  Limits the number of results returned in a single API call. This parameter helps control response size and page length.  Default: 10 Minimum: 1 Maximum: 50
     * @type {number}
     * @memberof ListRecentBotsQuery
     */
    'limit'?: number;
    /**
     * Filter bots by meeting URL containing this string.  Performs a case-insensitive partial match on the bot\'s meeting URL. Use this to find bots associated with specific meeting platforms or particular meeting IDs.  Example: \"zoom.us\" would match all Zoom meetings
     * @type {string}
     * @memberof ListRecentBotsQuery
     */
    'meeting_url'?: string | null;
    /**
     * Sort the results by a field in the extra JSON payload.  This parameter performs in-memory sorting on the `extra` JSON field, similar to a SQL ORDER BY clause. It changes the order of results but not which results are included.  Format specifications: - Default (ascending): \"field\" - Explicit direction: \"field:asc\" or \"field:desc\"  Examples: - \"customer_id\" - Sort by customer_id (ascending) - \"priority:desc\" - Sort by priority (descending)  Notes: - Applied after all filtering - String comparison is used for sorting - Bots with the field come before bots without it - Can be combined with filter_by_extra
     * @type {string}
     * @memberof ListRecentBotsQuery
     */
    'sort_by_extra'?: string | null;
    /**
     * NOTE: this is a preview feature and not yet available  Filter bots by speaker name containing this string.  Performs a case-insensitive partial match on the speakers in the meeting. Useful for finding meetings that included a specific person.  Example: \"John\" would match meetings with speakers like \"John Smith\" or \"John Doe\"
     * @type {string}
     * @memberof ListRecentBotsQuery
     */
    'speaker_name'?: string | null;
}
