// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../resource'; import { isRequestOptions } from '../../core'; import * as Core from '../../core'; import * as SettingsAPI from './settings'; export class Settings extends APIResource { /** * Get the current Prefect REST API settings. * * Secret setting values will be obfuscated. */ retrieve(params?: SettingRetrieveParams, options?: Core.RequestOptions): Core.APIPromise; retrieve(options?: Core.RequestOptions): Core.APIPromise; retrieve( params: SettingRetrieveParams | Core.RequestOptions = {}, options?: Core.RequestOptions, ): Core.APIPromise { if (isRequestOptions(params)) { return this.retrieve({}, params); } const { 'x-prefect-api-version': xPrefectAPIVersion } = params; return this._client.get('/api/admin/settings', { ...options, headers: { ...(xPrefectAPIVersion != null ? { 'x-prefect-api-version': xPrefectAPIVersion } : undefined), ...options?.headers, }, }); } } /** * Contains validated Prefect settings. * * Settings should be accessed using the relevant `Setting` object. For example: * * ```python * from prefect.settings import PREFECT_HOME * PREFECT_HOME.value() * ``` * * Accessing a setting attribute directly will ignore any `value_callback` * mutations. This is not recommended: * * ```python * from prefect.settings import Settings * Settings().PREFECT_PROFILES_PATH # PosixPath('${PREFECT_HOME}/profiles.toml') * ``` */ export interface Settings { PREFECT_API_BLOCKS_REGISTER_ON_START?: boolean; PREFECT_API_DATABASE_CONNECTION_TIMEOUT?: number | null; PREFECT_API_DATABASE_CONNECTION_URL?: string | null; PREFECT_API_DATABASE_DRIVER?: 'postgresql+asyncpg' | 'sqlite+aiosqlite' | null; PREFECT_API_DATABASE_ECHO?: boolean; PREFECT_API_DATABASE_HOST?: string | null; PREFECT_API_DATABASE_MIGRATE_ON_START?: boolean; PREFECT_API_DATABASE_NAME?: string | null; PREFECT_API_DATABASE_PASSWORD?: string | null; PREFECT_API_DATABASE_PORT?: number | null; PREFECT_API_DATABASE_TIMEOUT?: number | null; PREFECT_API_DATABASE_USER?: string | null; PREFECT_API_DEFAULT_LIMIT?: number; PREFECT_API_ENABLE_HTTP2?: boolean; PREFECT_API_ENABLE_METRICS?: boolean; PREFECT_API_EVENTS_RELATED_RESOURCE_CACHE_TTL?: string; PREFECT_API_EVENTS_STREAM_OUT_ENABLED?: boolean; PREFECT_API_KEY?: string | null; PREFECT_API_LOG_RETRYABLE_ERRORS?: boolean; PREFECT_API_MAX_FLOW_RUN_GRAPH_ARTIFACTS?: number; PREFECT_API_MAX_FLOW_RUN_GRAPH_NODES?: number; PREFECT_API_REQUEST_TIMEOUT?: number; PREFECT_API_SERVICES_CANCELLATION_CLEANUP_ENABLED?: boolean; PREFECT_API_SERVICES_CANCELLATION_CLEANUP_LOOP_SECONDS?: number; PREFECT_API_SERVICES_EVENT_PERSISTER_BATCH_SIZE?: number; PREFECT_API_SERVICES_EVENT_PERSISTER_ENABLED?: boolean; PREFECT_API_SERVICES_EVENT_PERSISTER_FLUSH_INTERVAL?: number; PREFECT_API_SERVICES_FLOW_RUN_NOTIFICATIONS_ENABLED?: boolean; PREFECT_API_SERVICES_FOREMAN_DEPLOYMENT_LAST_POLLED_TIMEOUT_SECONDS?: number; PREFECT_API_SERVICES_FOREMAN_ENABLED?: boolean; PREFECT_API_SERVICES_FOREMAN_FALLBACK_HEARTBEAT_INTERVAL_SECONDS?: number; PREFECT_API_SERVICES_FOREMAN_INACTIVITY_HEARTBEAT_MULTIPLE?: number; PREFECT_API_SERVICES_FOREMAN_LOOP_SECONDS?: number; PREFECT_API_SERVICES_FOREMAN_WORK_QUEUE_LAST_POLLED_TIMEOUT_SECONDS?: number; PREFECT_API_SERVICES_LATE_RUNS_AFTER_SECONDS?: string; PREFECT_API_SERVICES_LATE_RUNS_ENABLED?: boolean; PREFECT_API_SERVICES_LATE_RUNS_LOOP_SECONDS?: number; PREFECT_API_SERVICES_PAUSE_EXPIRATIONS_ENABLED?: boolean; PREFECT_API_SERVICES_PAUSE_EXPIRATIONS_LOOP_SECONDS?: number; PREFECT_API_SERVICES_SCHEDULER_DEPLOYMENT_BATCH_SIZE?: number; PREFECT_API_SERVICES_SCHEDULER_ENABLED?: boolean; PREFECT_API_SERVICES_SCHEDULER_INSERT_BATCH_SIZE?: number; PREFECT_API_SERVICES_SCHEDULER_LOOP_SECONDS?: number; PREFECT_API_SERVICES_SCHEDULER_MAX_RUNS?: number; PREFECT_API_SERVICES_SCHEDULER_MAX_SCHEDULED_TIME?: string; PREFECT_API_SERVICES_SCHEDULER_MIN_RUNS?: number; PREFECT_API_SERVICES_SCHEDULER_MIN_SCHEDULED_TIME?: string; PREFECT_API_SERVICES_TASK_RUN_RECORDER_ENABLED?: boolean; PREFECT_API_SERVICES_TRIGGERS_ENABLED?: boolean; PREFECT_API_SSL_CERT_FILE?: string | null; PREFECT_API_TASK_CACHE_KEY_MAX_LENGTH?: number; PREFECT_API_TLS_INSECURE_SKIP_VERIFY?: boolean; PREFECT_API_URL?: string | null; PREFECT_ASYNC_FETCH_STATE_RESULT?: boolean; PREFECT_CLI_COLORS?: boolean; PREFECT_CLI_PROMPT?: boolean | null; PREFECT_CLI_WRAP_LINES?: boolean; PREFECT_CLIENT_CSRF_SUPPORT_ENABLED?: boolean; PREFECT_CLIENT_ENABLE_METRICS?: boolean; PREFECT_CLIENT_MAX_RETRIES?: number; PREFECT_CLIENT_METRICS_PORT?: number; PREFECT_CLIENT_RETRY_EXTRA_CODES?: string; PREFECT_CLIENT_RETRY_JITTER_FACTOR?: number; PREFECT_CLOUD_API_URL?: string; PREFECT_CLOUD_UI_URL?: string | null; PREFECT_DEBUG_MODE?: boolean; PREFECT_DEFAULT_DOCKER_BUILD_NAMESPACE?: string | null; PREFECT_DEFAULT_RESULT_STORAGE_BLOCK?: string | null; PREFECT_DEFAULT_WORK_POOL_NAME?: string | null; PREFECT_DEPLOYMENT_SCHEDULE_MAX_SCHEDULED_RUNS?: number; PREFECT_EVENTS_EXPIRED_BUCKET_BUFFER?: string; PREFECT_EVENTS_MAXIMUM_LABELS_PER_RESOURCE?: number; PREFECT_EVENTS_MAXIMUM_RELATED_RESOURCES?: number; PREFECT_EVENTS_MAXIMUM_SIZE_BYTES?: number; PREFECT_EVENTS_MAXIMUM_WEBSOCKET_BACKFILL?: string; PREFECT_EVENTS_PROACTIVE_GRANULARITY?: string; PREFECT_EVENTS_RETENTION_PERIOD?: string; PREFECT_EVENTS_WEBSOCKET_BACKFILL_PAGE_SIZE?: number; PREFECT_EXPERIMENTAL_ENABLE_SCHEDULE_CONCURRENCY?: boolean; PREFECT_EXPERIMENTAL_WARN?: boolean; PREFECT_FLOW_DEFAULT_RETRIES?: number; PREFECT_FLOW_DEFAULT_RETRY_DELAY_SECONDS?: number; PREFECT_HOME?: string; PREFECT_LOCAL_STORAGE_PATH?: string; PREFECT_LOGGING_COLORS?: boolean; PREFECT_LOGGING_EXTRA_LOGGERS?: string; PREFECT_LOGGING_INTERNAL_LEVEL?: string; PREFECT_LOGGING_LEVEL?: string; PREFECT_LOGGING_LOG_PRINTS?: boolean; PREFECT_LOGGING_MARKUP?: boolean; PREFECT_LOGGING_SERVER_LEVEL?: string; PREFECT_LOGGING_SETTINGS_PATH?: string; PREFECT_LOGGING_TO_API_BATCH_INTERVAL?: number; PREFECT_LOGGING_TO_API_BATCH_SIZE?: number; PREFECT_LOGGING_TO_API_ENABLED?: boolean; PREFECT_LOGGING_TO_API_MAX_LOG_SIZE?: number; PREFECT_LOGGING_TO_API_WHEN_MISSING_FLOW?: 'warn' | 'error' | 'ignore'; PREFECT_MEMO_STORE_PATH?: string; PREFECT_MEMOIZE_BLOCK_AUTO_REGISTRATION?: boolean; PREFECT_MESSAGING_BROKER?: string; PREFECT_MESSAGING_CACHE?: string; PREFECT_PROFILES_PATH?: string; PREFECT_RESULTS_DEFAULT_SERIALIZER?: string; PREFECT_RESULTS_PERSIST_BY_DEFAULT?: boolean; PREFECT_RUNNER_POLL_FREQUENCY?: number; PREFECT_RUNNER_PROCESS_LIMIT?: number; PREFECT_RUNNER_SERVER_ENABLE?: boolean; PREFECT_RUNNER_SERVER_HOST?: string; PREFECT_RUNNER_SERVER_LOG_LEVEL?: string; PREFECT_RUNNER_SERVER_MISSED_POLLS_TOLERANCE?: number; PREFECT_RUNNER_SERVER_PORT?: number; PREFECT_SERVER_ALLOW_EPHEMERAL_MODE?: boolean; PREFECT_SERVER_ANALYTICS_ENABLED?: boolean; PREFECT_SERVER_API_HOST?: string; PREFECT_SERVER_API_KEEPALIVE_TIMEOUT?: number; PREFECT_SERVER_API_PORT?: number; PREFECT_SERVER_CSRF_PROTECTION_ENABLED?: boolean; PREFECT_SERVER_CSRF_TOKEN_EXPIRATION?: string; PREFECT_SERVER_EPHEMERAL_STARTUP_TIMEOUT_SECONDS?: number; PREFECT_SILENCE_API_URL_MISCONFIGURATION?: boolean; PREFECT_SQLALCHEMY_MAX_OVERFLOW?: number | null; PREFECT_SQLALCHEMY_POOL_SIZE?: number | null; PREFECT_TASK_DEFAULT_RETRIES?: number; PREFECT_TASK_DEFAULT_RETRY_DELAY_SECONDS?: number | Array; PREFECT_TASK_RUN_TAG_CONCURRENCY_SLOT_WAIT_SECONDS?: number; PREFECT_TASK_SCHEDULING_DEFAULT_STORAGE_BLOCK?: string | null; PREFECT_TASK_SCHEDULING_DELETE_FAILED_SUBMISSIONS?: boolean; PREFECT_TASK_SCHEDULING_MAX_RETRY_QUEUE_SIZE?: number; PREFECT_TASK_SCHEDULING_MAX_SCHEDULED_QUEUE_SIZE?: number; PREFECT_TASK_SCHEDULING_PENDING_TASK_TIMEOUT?: string; PREFECT_TASKS_REFRESH_CACHE?: boolean; PREFECT_TEST_MODE?: boolean; PREFECT_TEST_SETTING?: unknown; PREFECT_UI_API_URL?: string | null; PREFECT_UI_ENABLED?: boolean; PREFECT_UI_SERVE_BASE?: string; PREFECT_UI_STATIC_DIRECTORY?: string | null; PREFECT_UI_URL?: string | null; PREFECT_UNIT_TEST_LOOP_DEBUG?: boolean; PREFECT_UNIT_TEST_MODE?: boolean; PREFECT_WORKER_HEARTBEAT_SECONDS?: number; PREFECT_WORKER_PREFETCH_SECONDS?: number; PREFECT_WORKER_QUERY_SECONDS?: number; PREFECT_WORKER_WEBSERVER_HOST?: string; PREFECT_WORKER_WEBSERVER_PORT?: number; } export interface SettingRetrieveParams { 'x-prefect-api-version'?: string; } export namespace Settings { export import Settings = SettingsAPI.Settings; export import SettingRetrieveParams = SettingsAPI.SettingRetrieveParams; }