README
Classes
- APIError
- BadRequestError
- BetterAuthApp
- CachingSecretProvider
- CompositeSecretProvider
- ConfigurationApp
- ConflictError
- ConsentApp
- DateOnly
- EnvSecretProvider
- ExecutorConflictError
- ForbiddenError
- GcpSecretProvider
- InternalServerError
- MissingScopeResolverError
- NotFoundError
- OpenApiMiddlewareBuilder
- RealtimeApp
- SyncApp
- TaskCancelledError
- TerrenoApp
- UnauthorizedError
- ValidationError
- VersionCheckPlugin
Interfaces
- AccessCheckArgs
- AccessOptions
- AccessResult
- ActionContext
- AdminAccessConfig
- AdminAccessContext
- AdminAction
- AdminChangeEvent
- AdminConfig
- AdminContribution
- AdminCustomScreen
- AdminFieldOverride
- AdminFieldset
- AdminFilterBoolean
- AdminFilterChoice
- AdminFilterDateRange
- AdminFilterRef
- AdminFilterText
- AdminHomeConfig
- AdminHomeSlots
- AdminHomeWidgetContribution
- AdminModelContribution
- AdminModelPermissions
- AdminScriptContribution
- APIErrorBody
- APIErrorOptions
- AsyncHandlerOptions
- AuthenticatableSocket
- AuthenticatedClient
- AuthOptions
- AuthorizedEmitEntry
- BackfillAdminsOptions
- BackfillAdminsResult
- BackgroundTaskDocument
- BackgroundTaskMethods
- BackgroundTaskModel
- BackgroundTaskStatics
- BaseUser
- BetterAuthAppOptions
- BetterAuthConfig
- BetterAuthOAuthProvider
- BetterAuthSession
- BetterAuthSessionData
- BetterAuthSocketOptions
- BetterAuthUser
- CachingSecretProviderOptions
- ChangeStreamConfig
- CollectionActionConfig
- CompactTombstonesResult
- ConfigRegistration
- ConfigurationAppOptions
- ConfigurationMetaResponse
- ConfigurationModel
- ConfigurationPermissions
- ConfigurationPluginOptions
- ConfigurationStatics
- ConsentAppOptions
- ConsentFormCheckbox
- ConsentFormDefinition
- ConsentFormDocument
- ConsentFormModel
- ConsentFormStatics
- ConsentResponseDocument
- ConsentResponseMethods
- ConsentResponseModel
- ConsentResponseStatics
- CreateAuthenticatedClientOptions
- CreateBetterAuthOptions
- CreatedDeleted
- CreateFeatureFlaggedLoggerOptions
- CreateScopedLoggerOptions
- CreateValidatorOptions
- DecodedRealtimeToken
- DocumentSubscription
- ExecutorResult
- FieldMask
- FindExactlyOnePlugin
- FindOneOrNonePlugin
- GcpSecretProviderOptions
- GenerateTokensOptions
- GitHubAuthOptions
- GitHubUserFields
- HasSetPassword
- HasUpsert
- HttpClientLogger
- InstanceActionConfig
- IsArchived
- IsDeleted
- JSONArray
- JSONObject
- JwtSessionPayload
- LogContextFields
- LoggingOptions
- MCPAuthContext
- MCPConfig
- MCPCustomTool
- MCPRegistryEntry
- MCPRequest
- MCPServerOptions
- MCPToolDefinition
- MCPToolResult
- ModelRouterAccessOptions
- ModelRouterBuildContext
- ModelRouterOptions
- ModelRouterRegistration
- ModelRouterValidationOptions
- MongoClientLike
- NormalizedApiError
- OpenApiBuildResult
- OpenApiMiddleware
- OpenApiParameter
- OpenApiResponse
- OpenApiSchema
- OpenApiSchemaProperty
- OpenApiValidatorConfig
- OrganizationScopedUser
- OwnerScopeOptions
- PermissionSource
- PermissionSourceGrants
- PopulatePath
- QuerySubscription
- QueryValidatorOptions
- RbacAuditDocument
- RbacAuditWrite
- RbacRoleDocument
- RbacRouterOptions
- RbacUser
- RbacUserPluginOptions
- RealtimeAppOptions
- RealtimeConfig
- RealtimeEvent
- RealtimeRegistryEntry
- RealtimeSocketLike
- RequestBodyValidatorOptions
- RequestContext
- ResourceFieldViews
- ResourceScope
- RESTPermissions
- RetryPolicy
- RevalidatableSocket
- RoleDefinition
- RoleDiff
- RoleInput
- RoleManager
- ScopeArgs
- ScopeDefinition
- ScopedLogger
- ScriptArgDef
- ScriptArgs
- ScriptContext
- ScriptResult
- SecretFieldMeta
- SecretProvider
- SessionRevalidationOptions
- SetPasswordAuditContext
- SocketDataBag
- SocketWithDecodedToken
- SyncAck
- SyncAppOptions
- SyncBatchRunResult
- SyncConfig
- SyncConsentsOptions
- SyncConsentsResult
- SyncCounterDocument
- SyncDelta
- SyncedDocumentFields
- SyncEntitiesResponse
- SyncEntityPayload
- SyncKeyDocument
- SyncMutateBatchRequest
- SyncMutateBatchResponse
- SyncMutateRequest
- SyncMutationDocument
- SyncMutationRunResult
- SyncNack
- SyncPendingClaim
- SyncRegistryEntry
- SyncResyncHint
- SyncScopeBroadcast
- SyncScopeMoveDocument
- SyncScopeOwner
- SyncScopeTenant
- SyncSeqClaim
- SyncSeqConfirmResult
- SyncSnapshotResponse
- SyncSocketLike
- SyncStreamInfo
- SyncStreamsResponse
- TerrenoAccess
- TerrenoAppOptions
- TerrenoPlugin
- TerrenoRequestLogEntry
- TerrenoTransformer
- User
- UserModel
- UserPermissionDiff
- VersionCheckResponse
- VersionConfigDocument
- VersionConfigModel
- WithApiErrorHandlingOptions
- WrapScriptOptions
Type Aliases
- AddRoutes
- AdminChangeType
- AdminFilter
- AdminFilterKind
- AdminModelAdminMap
- AnyTerrenoAccess
- ApiErrorClassification
APIErrorConstructor- APIErrorSubclassOptions
- AuthProvider
- AuthStrategy
- BetterAuthInstance
- ConfigType
- ConfigurationPostUpdateHook
- ConfigurationPreUpdateHook
- ConsentFormMethods
- ConsentFormType
- DeepPartial
- ExecutorConcurrencyCheck
- ExecutorDoc
- GooseRESTOptions
- JSONPrimitive
- JSONValue
LoosePermissionRequest- MCPMethod
- MCPToolArgs
- ModelQuery
- Paths
- PathValue
- PermissionMethod
- PermissionRequest
- PermissionSet
- RbacAuditSink
- RbacRoleModel
- RequestContextAttributes
- ResourceScopes
- RESTMethod
- RevalidationOutcome
- RolePermissionSpec
- ScriptArgValue
- ScriptRunner
- SessionRevalidationHandle
- SocketAuthValidator
- StaleOnFailurePolicy
- Statements
- SyncBatchValidationOutcome
- SyncMutateBatchResult
- SyncMutationOperation
- SyncMutationOutcome
- SyncMutationScopeResolver
- SyncMutationStatus
- SyncNackCode
- SyncRunStage
- SyncScope
- SyncScopeResolver
- TerrenoAppAdminEvent
- VersionCheckStatus
Variables
- ACTION_NAME_PATTERN
- ADMIN_MODEL_ACCESS
- ADMIN_PAGE_ACTION
- ADMIN_PAGE_PERMISSION
- ADMIN_PAGE_RESOURCE
- BackgroundTask
- Config
- ConsentForm
- ConsentResponse
- consentResponsePopulatePaths
- DEFAULT_SESSION_REVALIDATION_INTERVAL_MS
- DEFAULT_TOMBSTONE_RETENTION_DAYS
- gooseRestRouter
- IsPermitted
- logger
- MAX_BULK_PATCH_IDS
- MAX_DOCUMENT_SUBSCRIPTIONS
- MAX_ENTITY_FETCH
- MAX_MODEL_SUBSCRIPTIONS
- MAX_PASSWORD_LENGTH
- MAX_QUERY_SUBSCRIPTIONS
- MAX_SYNC_COLLECTION_SUBSCRIPTIONS
- MAX_SYNC_MUTATIONS_PER_BATCH
- MAX_SYNC_MUTATIONS_PER_SECOND
- MAX_SYNC_SUBSCRIBE_ARRAY_LENGTH
- PENDING_CLAIM_LEASE_MS
- Permissions
- PRIVILEGED_USER_FIELDS
- READ_ACTIONS
- READ_ONLY_ROLE_PERMISSIONS
- REQUEST_CONTEXT_ATTRIBUTE_NAMES
- requireAccess
- SCOPE_MOVE_MARKER_ATTEMPTS
- SYNC_MUTATION_LEASE_MS
- SyncCounter
- SyncKey
- SyncMutation
- SyncScopeMove
- terrenoDefaultRoles
- terrenoStatements
- VersionConfig
- winstonLogger
Functions
- addAuthRoutes
- addGitHubAuthRoutes
- addMeRoutes
- addPopulateToQuery
- addQuerySubscription
- addSyncRoutes
- adminBodyFieldsToStrip
- AdminOwnerTransformer
- apiErrorMiddleware
- apiFallthroughErrorMiddleware
- apiUnauthorizedMiddleware
- applyReadMask
- applyRequestContextToSentry
- applySyncMutation
- applySyncMutationBatch
- assertNoActionCollisions
- assertWritableStream
- asyncHandler
- authenticateMiddleware
- backfillAdmins
- baseUserPlugin
- buildQuerySchemaFromFields
- buildSnapshotScopeFilter
- checkModelsStrict
- checkPermissions
- claimSyncSeqs
- clearMCPRegistry
- clearQueryStore
- clearRealtimeRegistry
- clearSyncRegistry
- compactEntryTombstones
- compactTombstones
- computeQueryId
- computeStableFrontier
- configurationPlugin
- configureOpenApiValidator
- confirmSyncSeqs
- createAccess
- createActionOpenApiMiddleware
- createAuthenticatedClient
- createBetterAuth
- createBetterAuthSessionMiddleware
- createBetterAuthValidator
- createdUpdatedPlugin
- createFeatureFlaggedLogger
- createIsPermitted
- createLegacyJwtValidator
- createModelValidators
- createOpenApiBuilder
- createRbacAuditModel
- createRbacRoleModel
- createRequireAccess
- createRouter
- createRouterWithAuth
- createScopedLogger
- createScriptArgs
- createSocketAuthMiddleware
- createValidator
- cronjob
- defaultResponseHandler
- defineCollectionAction
- defineInstanceAction
- defineScope
- diffPermissionSets
- emitPayloadToAuthorizedRoom
- emitSyncDeltaForChange
- ensureSyncIndexes
- ensureSyncModelIndexes
- envConfigurationPlugin
- errorDetail
- errorMessage
- errorsPlugin
- errorStack
- evictExpiredSyncMutationWindows
- excludeArchivedPlugin
- executeCreate
- executeDelete
- executeUpdate
- expandRolePermissions
- extractUserFromHeaders
- findExactlyOne
- findOneOrNone
- findOneOrNoneFor
- findRegistryEntryByCollection
- findRegistryEntryByRoutePath
- findSyncEntryByCollectionName
- findSyncEntryByCollectionTag
- findSyncEntryByModelName
- firebaseJWTPlugin
- fixMixedFields
- flattenToDotPaths
- formatLogContextSuffix
- generateAllTools
- generateInputSchema
- generateTokens
- generateToolDescription
- generateToolsForEntry
- getAllMCPTools
getAPIErrorBody- getBetterAuthSession
- getCompactedThroughSeq
- getCurrentLogContext
- getCurrentRequestContext
- getCurrentRequestContextAttributes
- getDisableExternalErrorTracking
- getDisallowedWriteKeys
- getMCPRegistry
- getMongoClientFromMongoose
- getOpenApiSpecForModel
- getOpenApiValidatorConfig
- getOrCreateSyncKeyMaterial
- getQuerySubscriptionsForCollection
- getRealtimeRegistry
- getRequestContextFromAttributes
- getSchemaFromModel
- getScopeField
- getSessionIdFromJwtPayload
- getSocketUser
- getSyncAppOptions
- getSyncRegistry
- getUserOrganizationIds
- githubUserPlugin
- hasBetterAuthSession
- installRealtimeSocketHandlers
- installSyncSocketHandlers
- isAPIError
- isDeletedPlugin
- isDisabledPlugin
- isExecutorConflictError
- isOpenApiValidatorConfigured
- isPermissionSubset
- isValidObjectId
- isVersionError
- jsonResponseRequestIdMiddleware
- loadFullUserForSocket
- logRequests
- markRetryUnsafe
- matchesQuery
- mergeStatements
- modelRouter
- mongooseErrorToAPIError
- mountBetterAuthRoutes
- mountMCPServer
- normalizeApiError
- omitUserRolesFromWriteBody
- openApiCompatMiddleware
- openApiEtagMiddleware
- OrganizationQueryFilter
- OwnerQueryFilter
- OwnerScope
- parseScriptArgs
- parseStreamKey
- passthroughOrWrap
- passthroughOrWrapWrite
- patchAppUse
- patchExpressRouterUse
- permissionMiddleware
- rbacRouter
- rbacUserPlugin
- recordCompactedThroughSeq
- recordRbacAudit
- registerActionRoutes
- registerMCPModel
- registerMCPTool
- registerRealtime
- registerSync
- releaseSyncSeqs
- removeAllSocketQueries
- removeQuerySubscription
- requestContextMiddleware
- requireAdminMiddleware
- reresolveSyncRoomsForSocket
- resetOpenApiValidatorConfig
- resetSyncMutationRateLimits
- resolveStreamForDoc
- resolveUserStreamsForEntry
- revalidateSocketSession
- runActionPermissions
- runPostCreate
- runPostDelete
- runPostUpdate
- runSessionRevalidationSweep
- runSyncBatch
- runSyncMutation
- runWithRequestContext
- runWithRequestContextAttributes
- scrubAdminFields
- sendToGoogleChat
- sendToSlack
- sendToZoom
- sentryAppVersionMiddleware
- serialize
- serializeSyncDoc
- serializeSyncPayload
- setPasswordForUser
- setRequestContext
- setupAuth
- setupBetterAuthUserSync
- setupEnvironment
- setupGitHubAuth
- setupLogging
- signupUser
- startChangeStreamWatcher
- startSessionRevalidationSweep
- stopChangeStreamWatcher
- streamForScopeValue
- stripAdminBodyFields
- stripPrivilegedUserFields
- syncBetterAuthUser
- syncConsents
- syncMutationRateLimitWindowCount
- syncPlugin
- syncRoomForStream
- timeout
- trackSyncIndexCreation
- transform
- unionPermissionSets
- unpopulate
- updateMCPRegistryOptions
- updateRealtimeRegistryOptions
- updateRequestContextFromRequest
- updateSyncRegistryOptions
- upsertPlugin
- validateActionRequest
- validateModelRequestBody
- validatePermissionSet
- validateQueryParams
- validateRequestBody
- validateResponseData
- validateSyncMutationBatch
- warnOnSyncScopesWithoutUserModel
- withApiErrorHandling
- wrapActionResponse
- wrapScript
References
MAX_SYNC_HTTP_MUTATIONS_PER_SECOND
Renames and re-exports MAX_SYNC_MUTATIONS_PER_SECOND