MCPcopy Create free account

hub / github.com/brightbeanxyz/brightbean-studio / types & classes

Types & classes668 in github.com/brightbeanxyz/brightbean-studio

↓ 55 callersClassJsonRpcError
Raised inside a handler to translate into a JSON-RPC error envelope. Handlers raise this for any user-facing failure (bad params, permission
apps/mcp/protocol.py:50
↓ 52 callersClassPublishError
Post publishing failed.
providers/exceptions.py:45
↓ 31 callersClassTikTokProvider
TikTok Content Posting API provider using OAuth 2.0.
providers/tiktok.py:97
↓ 27 callersClassOAuthTokens
providers/types.py:41
↓ 25 callersClassFacebookProvider
Facebook Graph API v25.0 provider.
providers/facebook.py:66
↓ 23 callersClassPublishResult
providers/types.py:61
↓ 22 callersClassAPIError
Generic API error from the platform.
providers/exceptions.py:49
↓ 22 callersClassOAuthError
OAuth flow failure (invalid code, denied access, etc.).
providers/exceptions.py:24
↓ 20 callersClassAccountProfile
providers/types.py:51
↓ 17 callersClassPublishEngine
Orchestrates the publishing of scheduled posts.
apps/publisher/engine.py:99
↓ 16 callersClassPublishContent
Content payload passed to publish_post().
providers/types.py:132
↓ 15 callersClassAccountMetrics
providers/types.py:88
↓ 15 callersClassPostMetrics
providers/types.py:74
↓ 15 callersClassWorkspaceScopedManager
Manager that auto-filters queries by workspace_id. Usage: MyModel.objects.for_workspace(workspace_id).all()
apps/common/managers.py:18
↓ 15 callersClass_SecureClient
Forces ``secure=True`` so the bearer HTTPS guard doesn't 401 every call.
apps/mcp/tests/test_oauth_auth.py:28
↓ 13 callersClassTool
apps/mcp/tools.py:23
↓ 12 callersClassInternalClient
HMAC-signed client for Intelligence's /internal/v1/. Construct without arguments, pulls config from Django settings. Methods raise typed exce
apps/intelligence/services/client.py:75
↓ 12 callersClassRateLimitConfig
providers/types.py:124
↓ 9 callersClassMediaAsset
A media file (image, video, GIF) uploaded to a workspace's media library. Stores the original file plus processed variants for different platform
apps/media_library/models.py:73
↓ 8 callersClassInboxSyncEngine
Syncs inbox messages from all connected social accounts.
apps/inbox/tasks.py:35
↓ 7 callersClassCommentResult
providers/types.py:68
↓ 7 callersClassInboxMessage
providers/types.py:106
↓ 7 callersClassOrgScopedManager
Manager that auto-filters queries by organization_id. Usage in views/middleware: set the organization on the manager before querying:
apps/common/managers.py:6
↓ 7 callersClassPlatformPost
A per-platform variant of a Post. Created for each selected social account when composing. Holds optional caption/media overrides and — cruci
apps/composer/models.py:331
↓ 7 callersClassYouTubeProvider
YouTube Data API v3 provider using Google OAuth 2.0.
providers/youtube.py:42
↓ 6 callersClassEncryptedTextField
A TextField that encrypts its value at rest using AES-256-GCM.
apps/common/encryption.py:61
↓ 6 callersClassPost
A piece of content created in the composer. A Post holds the shared/base content. PlatformPost children hold per-platform overrides **and the
apps/composer/models.py:216
↓ 6 callersClassRateLimitState
Track API rate limit state per social account per platform. Updated from API response headers after each call.
apps/publisher/models.py:42
↓ 6 callersClassReplyResult
providers/types.py:118
↓ 6 callersClassServiceUnavailable
5xx / network error, transient.
apps/intelligence/services/exceptions.py:41
↓ 6 callersClass_SecureClient
Django test client that forces every request to ``secure=True``. Django's ``Client.get/post`` always pass an explicit ``secure=False`` to ``g
apps/api/tests/test_routers.py:112
↓ 5 callersClassInstagramProvider
Instagram Graph API provider (via Facebook Graph API v25.0).
providers/instagram.py:71
↓ 5 callersClassLinkedInCompanyProvider
LinkedIn provider scoped to Company Page posting.
providers/linkedin_company.py:16
↓ 5 callersClass_SecureClient
apps/mcp/tests/test_transport.py:37
↓ 5 callersClass_StubApps
Stand-in for the ``apps`` arg Django migrations get. The migration only calls ``apps.get_model("api_keys", "ApiKey")``, so we return the live
apps/api_keys/tests/test_migration_0002.py:114
↓ 4 callersClassPlatformCredentialAdminForm
apps/credentials/forms.py:28
↓ 4 callersClassPostForm
Form for creating and editing posts in the composer.
apps/composer/forms.py:27
↓ 4 callersClassQueueFullError
No open posting slot exists within the scheduling lookahead horizon.
apps/calendar/services.py:102
↓ 4 callersClassSavedReplyForm
apps/inbox/forms.py:61
↓ 3 callersClassActivationRejected
4xx from /activate-preflight or /activate-commit, payment problem, metadata mismatch, unknown_checkout_attempt, etc.
apps/intelligence/services/exceptions.py:61
↓ 3 callersClassContentCategoryForm
Form for creating/editing content categories.
apps/composer/forms.py:89
↓ 3 callersClassDerivedMetric
The output shape every card / chart consumes.
apps/analytics/derive.py:18
↓ 3 callersClassPlatformPostAnalyticsResponse
Analytics for a single per-platform child of a Post.
apps/api/schemas.py:557
↓ 3 callersClassPostMedia
Media attachment on a post, with ordering and alt text.
apps/composer/models.py:545
↓ 3 callersClassPostingSlot
Recurring time slot for a social account. Defines default publishing times (e.g., Mon/Wed/Fri at 9 AM) used for queue-based scheduling.
apps/calendar/models.py:12
↓ 3 callersClassStorageQuota
apps/media_library/quotas.py:34
↓ 3 callersClassStorageQuotaExceededError
Raised by ``enforce_storage_quota`` when an upload would push usage above the org's resolved limit. The API layer maps this to HTTP 413 with
apps/media_library/quotas.py:40
↓ 3 callersClassStudioCheckoutAttempt
Local mirror of Intelligence's ``StudioCheckoutAttempt``. Reserved BEFORE the Intelligence ``/studio-checkout-session`` call: - On the Studi
apps/intelligence/models.py:105
↓ 3 callersClass_SecureClient
apps/mcp/tests/test_rest_parity.py:31
↓ 3 callersClass_SecureClient
apps/api/tests/test_media_router.py:26
↓ 3 callersClass_SecureClient
apps/api/tests/test_analytics_router.py:165
↓ 3 callersClass_SecureClient
apps/api/tests/test_review_fixes_round2.py:30
↓ 2 callersClassAccountAnalyticsResponse
Channel-level analytics summary over a rolling window of days.
apps/api/schemas.py:486
↓ 2 callersClassBadRequest
4xx that isn't covered by a more specific subclass.
apps/intelligence/services/exceptions.py:45
↓ 2 callersClassBlueskyProvider
AT Protocol / Bluesky provider. Uses session-based authentication (app passwords), not OAuth. The ``credentials`` dict may contain: - ``
providers/bluesky.py:48
↓ 2 callersClassConflict
409, idempotency / eligibility blocker.
apps/intelligence/services/exceptions.py:53
↓ 2 callersClassDeploymentNotAuthorized
401/403 indicating the deployment is not registered or is disabled.
apps/intelligence/services/exceptions.py:112
↓ 2 callersClassEncryptedJSONField
A field that stores JSON data encrypted at rest using AES-256-GCM.
apps/common/encryption.py:82
↓ 2 callersClassIdeaMedia
Media attachment on an idea, with stable ordering.
apps/composer/models.py:189
↓ 2 callersClassIntelligenceClientError
Base class, anything client-call-related.
apps/intelligence/services/exceptions.py:10
↓ 2 callersClassInternalNoteForm
apps/inbox/forms.py:20
↓ 2 callersClassRateLimitError
Platform rate limit exceeded.
providers/exceptions.py:32
↓ 2 callersClassReplyForm
apps/inbox/forms.py:8
↓ 2 callersClassS256OnlyOAuth2Validator
OAuth2Validator subclass that requires ``code_challenge_method=S256``. Hooks ``is_pkce_required`` because it is the earliest validator method
apps/oauth_server/validator.py:20
↓ 2 callersClassSLAConfigForm
apps/inbox/forms.py:82
↓ 2 callersClassSocialAccount
apps/social_accounts/models.py:11
↓ 2 callersClassTag
A reusable tag scoped to a workspace. Tags can be applied to Posts, Ideas, and other content types. They are workspace-scoped so each workspa
apps/composer/models.py:62
↓ 2 callersClassVirtualMembership
Duck-typed stand-in for ``apps.members.models.WorkspaceMembership``. The only attribute ``@require_permission`` reads is ``effective_permissi
apps/api/auth.py:45
↓ 2 callersClass_FakeOAuthRequest
Minimal oauthlib-style request for the validator unit tests. Unset attributes read as ``None`` so oauthlib's error constructor — which copies
apps/oauth_server/tests.py:115
↓ 2 callersClass_SecureClient
apps/api/tests/test_account_capabilities.py:27
↓ 1 callersClassAccountsListResponse
apps/api/schemas.py:107
↓ 1 callersClassApiKeyAuth
Ninja ``HttpBearer`` that authenticates Agent API requests. The Ninja contract is: return a truthy value on success (becomes ``request.auth``
apps/api/auth.py:88
↓ 1 callersClassAssignForm
apps/inbox/forms.py:32
↓ 1 callersClassBulkActionForm
apps/inbox/forms.py:44
↓ 1 callersClassCreatePostRequest
Create a draft or directly schedule a post against one account. ``social_account_id`` MUST be in the key's allowlist; the auth class raises 4
apps/api/schemas.py:141
↓ 1 callersClassEngagementCardResponse
apps/api/schemas.py:475
↓ 1 callersClassInstagramLoginProvider
Instagram API provider using Instagram Login (OAuth 2.0). Authenticates Professional (Business or Creator) Instagram accounts directly throug
providers/instagram_login.py:79
↓ 1 callersClassInsufficientCredits
402, Intelligence returned credits=0; show upgrade CTA.
apps/intelligence/services/exceptions.py:29
↓ 1 callersClassIntelligenceAPIClient
Calls Intelligence's public /v1/ tool endpoints using a per-org ``bb_`` bearer key (decrypted from ``IntelligenceSubscription``).
apps/intelligence/services/client.py:443
↓ 1 callersClassInvalidApiKey
401, the per-org bearer key was rejected.
apps/intelligence/services/exceptions.py:25
↓ 1 callersClassIssuedKey
Return value of ``issue_api_key`` — the only place plaintext exists.
apps/api_keys/services.py:129
↓ 1 callersClassMcpAuth
Bearer auth for the MCP router: bb_studio_ keys OR OAuth 2.1 tokens. A ``bb_studio_`` token reuses the parent ``ApiKeyAuth`` path verbatim —
apps/api/auth.py:330
↓ 1 callersClassMeResponse
Echoes everything the key is scoped to so an agent can self-introspect.
apps/api/schemas.py:90
↓ 1 callersClassMediaAssetListResponse
apps/api/schemas.py:424
↓ 1 callersClassMediaAssetManager
apps/media_library/managers.py:7
↓ 1 callersClassMediaAssetVersion
Version history for edited media assets. Each edit creates a new version.
apps/media_library/models.py:242
↓ 1 callersClassMediaFolder
Folder for organizing media assets. Max 3 levels of nesting.
apps/media_library/models.py:12
↓ 1 callersClassNoncedSwagger
apps/api/api.py:29
↓ 1 callersClassNotFound
404, typically "no pending activation" or "no account".
apps/intelligence/services/exceptions.py:49
↓ 1 callersClassNotificationDelivery
apps/notifications/models.py:87
↓ 1 callersClassOAuthMcpActor
ApiKey-shaped stand-in for an OAuth-authenticated MCP caller. Exposes exactly the ``ApiKey`` attributes the MCP path touches — the handlers'
apps/api/auth.py:226
↓ 1 callersClassParsedToken
Result of splitting a raw bearer string into its three parts.
apps/api_keys/services.py:74
↓ 1 callersClassPostAnalyticsResponse
Analytics for a Post, with per-platform breakdown. Mirrors ``PostResponse``'s parent-Post-with-platform-children shape so agents that already
apps/api/schemas.py:594
↓ 1 callersClassPostMetricTileResponse
One metric tile in the per-post analytics drawer.
apps/api/schemas.py:540
↓ 1 callersClassPostType
providers/types.py:10
↓ 1 callersClassPostVersion
Immutable snapshot of a post state for version history.
apps/composer/models.py:576
↓ 1 callersClassProtectedAssetError
Raised when trying to delete an asset referenced by scheduled posts.
apps/media_library/services.py:24
↓ 1 callersClassPublishLog
Log entry for every publish attempt (including retries). Retained for 90 days, then cleaned up by a background job.
apps/publisher/models.py:8
↓ 1 callersClassRateLimited
429, caller is over plan rate limit.
apps/intelligence/services/exceptions.py:33
↓ 1 callersClassSentimentForm
apps/inbox/forms.py:40
next →1–100 of 668, ranked by callers