Cursor Tables
The Cursor integration uses the following tables
Tables
CursorTeamMembers
This table stores Cursor team members, including encoded user ID, email, display name, team role, and whether the member has been removed.
| Name | Type | Description |
|---|---|---|
| CursorUserID | string | Encoded user ID for the team member (for example, user_PDSPmvukpYgZEDXsoNirw3CFhy). |
| string | Email address of the team member. | |
| Name | string | Display name of the team member. |
| Role | string | Role in the team (for example, member, owner). |
| IsRemoved | boolean | Whether the member has been removed from the team. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorBillingGroups
This table stores Cursor billing groups for the team, including spend for the current billing cycle.
| Name | Type | Description |
|---|---|---|
| GroupID | string | Encoded billing group ID (for example, group_PDSPmvukpYgZEDXsoNirw3CFhy). |
| Name | string | Name of the billing group. |
| Type | string | Group type. Currently BILLING is the supported value. |
| DirectoryGroupID | string | Directory group identifier attached to the billing group, if configured. |
| MemberCount | integer | Number of members in the billing group. |
| CreatedAt | datetime | The date and time the billing group was created. |
| UpdatedAt | datetime | The date and time the billing group was last updated. |
| SpendCents | decimal | Group spend in cents for the current billing cycle. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorBillingGroupMembers
This table stores current and former members of Cursor billing groups, including join and leave times and member spend.
| Name | Type | Description |
|---|---|---|
| ID | uniqueidentifier | Unique identifier for the record. |
| GroupID | string | Encoded billing group ID this membership belongs to. |
| CursorUserID | string | Encoded user ID of the billing group member (for example, user_abc123). |
| Name | string | Display name of the billing group member. |
| string | Email address of the billing group member. | |
| JoinedAt | datetime | The date and time the member joined the billing group. |
| LeftAt | datetime | The date and time the member left the billing group, if applicable. |
| SpendCents | decimal | Member spend in cents attributed to this billing group for the current billing cycle. |
| IsFormer | boolean | Indicates whether the member is a former member of the billing group. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorBillingGroupDailySpend
This table stores daily spend totals for each Cursor billing group in the current billing cycle.
| Name | Type | Description |
|---|---|---|
| ID | uniqueidentifier | Unique identifier for the record. |
| GroupID | string | Encoded billing group ID this daily spend row belongs to. |
| SpendDate | datetime | Calendar date of the daily spend total. |
| SpendCents | decimal | Spend in cents for the billing group on this date. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorAuditLogs
This table stores Cursor team audit log events, including actor email, event type, IP address, and event payload.
| Name | Type | Description |
|---|---|---|
| EventID | string | Unique identifier of the audit event (for example, evt_abc123). |
| Timestamp | datetime | The date and time the audit event occurred. |
| IpAddress | string | IP address associated with the audit event. |
| UserEmail | string | Email address of the user associated with the audit event. |
| EventType | string | Audit event type (for example, login, add_user, team_settings). |
| EventDataJson | string | JSON payload of event-specific details returned with the audit event. |
| CursorTeamNumericID | integer | Numeric Cursor team ID associated with the audit log query (params.teamId). |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorMemberSpend
This table stores per-member spending for the current Cursor team billing cycle, including on-demand spend, included usage, request counts, and spend limits.
| Name | Type | Description |
|---|---|---|
| CursorUserID | string | Encoded user ID (for example, user_PDSPmvukpYgZEDXsoNirw3CFhy). Shares the same identifier namespace as CursorTeamMembers.CursorUserID. |
| Name | string | Display name of the user. |
| string | Email address of the user. | |
| Role | string | Role in the team (for example, member, owner). |
| SpendCents | decimal | On-demand spend in cents for the current billing cycle (excludes included usage). |
| IncludedSpendCents | decimal | Included usage spend in cents for the current billing cycle, as returned by the Cursor spend API. |
| OverallSpendCents | decimal | Total spend in cents for the current billing cycle, including both on-demand and included usage. |
| FastPremiumRequests | integer | Number of usage-based premium requests made during the billing cycle. |
| HardLimitOverrideDollars | decimal | Custom hard spending limit override in dollars for this user (0 means no override). |
| MonthlyLimitDollars | decimal | Monthly spending limit in dollars set for this user, or null if no limit is set. |
| EffectivePerUserLimitDollars | decimal | Currently enforced per-user spending limit in dollars, derived from monthlyLimitDollars and hardLimitOverrideDollars. |
| SubscriptionCycleStart | datetime | Start of the current subscription billing cycle for the spend response. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorDailyUsage
This table stores daily Cursor usage metrics per team member, including code apply/accept activity, Tab completions, Composer/chat/agent requests, and client version.
| Name | Type | Description |
|---|---|---|
| ID | uniqueidentifier | Unique identifier for the record. |
| CursorUserID | string | Encoded user ID for the member this daily usage row belongs to (for example, user_…). Shares the same identifier namespace as CursorTeamMembers.CursorUserID. |
| Day | datetime | The date this record covers (ISO date, for example, 2024-03-18). |
| DateEpochMs | integer | Date as epoch milliseconds. |
| string | User's email address. | |
| IsActive | boolean | Whether the user had activity on this day. |
| TotalLinesAdded | integer | Total lines of code added. |
| TotalLinesDeleted | integer | Total lines of code deleted. |
| AcceptedLinesAdded | integer | AI-suggested lines added that were accepted. |
| AcceptedLinesDeleted | integer | AI-suggested lines deleted that were accepted. |
| TotalApplies | integer | Total AI code apply actions. |
| TotalAccepts | integer | Total accepted AI suggestions. |
CursorUsageEvents
This table stores granular Cursor usage events for the team, including model, billing category, token usage, and charged amounts.
| Name | Type | Description |
|---|---|---|
| ID | uniqueidentifier | Unique identifier for the record. |
| Timestamp | datetime | Event timestamp. Cursor returns this as epoch milliseconds; Compyl stores it as datetime. |
| UserEmail | string | Email address of the user who made the request. |
| ServiceAccountID | string | ID of the service account that made the request. Omitted for human user events. |
| ServiceAccountName | string | Display name of the service account that made the request. Omitted for human user events. |
| CloudAgentID | string | ID of the cloud agent run attributed to this event. Omitted for events outside cloud agents. |
| AutomationID | string | UUID of the automation attributed to this event. Omitted for events outside automations. |
| ConversationID | string | ID of the conversation (agent session) that generated this event. |
| Model | string | AI model used for the request. |
| Kind | string | Billing category (for example, Usage-based, Included in Business). |
| MaxMode | boolean | Whether the request used max mode. |
| RequestsCosts | decimal | Cost in request units. |
CursorModelAccessConfigurations
This table stores the team's Cursor model-access policy, including whether the policy is unrestricted, custom, or legacy, and defaults for newly seen providers and models.
| Name | Type | Description |
|---|---|---|
| TeamID | integer | Integer team ID implied by the Team Admin API key. |
| State | string | Model-access policy state: unrestricted, custom, or legacy. |
| NewProviderDefault | string | enabled or disabled when state is custom. Otherwise null. |
| NewModelDefault | string | enabled or disabled when state is custom. Otherwise null. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorModelAccessProviders
This table stores catalog AI providers in the team's custom model-access policy, including whether each provider is enabled.
| Name | Type | Description |
|---|---|---|
| ID | uniqueidentifier | Unique identifier for the record. |
| TeamID | integer | Integer team ID this provider configuration belongs to. |
| ProviderID | string | Catalog provider ID (for example, openai or anthropic). |
| DisplayName | string | Human-readable provider name. |
| Enabled | boolean | Whether this provider is enabled for the team. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorModelAccessModels
This table stores catalog AI models under each provider in the team's custom model-access policy, including enabled flags and serialized parameter settings.
| Name | Type | Description |
|---|---|---|
| ID | uniqueidentifier | Unique identifier for the record. |
| TeamID | integer | Integer team ID this model configuration belongs to. |
| ProviderID | string | Catalog provider ID this model belongs to (for example, anthropic). |
| ModelID | string | Catalog model ID (for example, claude-opus-4-6). |
| DisplayName | string | Human-readable model name. |
| Enabled | boolean | Whether this model is enabled for the team. |
| ParametersJson | string | JSON array of catalog-driven model parameters (id, displayName, supportedValues, allowedValues, configuredDefaultValue, catalogDefaultValue). |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorRepoBlocklists
This table stores repository blocklists configured for the team, used to prevent files or directories from being used as context.
| Name | Type | Description |
|---|---|---|
| RepoID | string | Unique identifier of the repository blocklist entry (for example, repo_123). |
| Url | string | Repository URL on the blocklist. |
| PatternsJson | string | JSON array of glob patterns to block (for example, *.env, config/*, *). |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorOrganizationMembers
This table stores members of the Cursor organization, including organization role. Populated only when Enterprise is enabled.
| Name | Type | Description |
|---|---|---|
| CursorNumericUserID | integer | Unique numeric identifier for the member, matching the numeric id returned by the organization members API. |
| string | Email address of the member. | |
| Name | string | Display name of the member. |
| OrganizationRole | string | Organization-level role, either admin or member. Distinct from each team assignment's team role. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorOrganizationMemberTeams
This table stores each organization member's assignments across teams linked to the organization. Populated only when Enterprise is enabled.
| Name | Type | Description |
|---|---|---|
| ID | uniqueidentifier | Unique identifier for the record. |
| CursorNumericUserID | integer | Numeric user ID of the organization member this team assignment belongs to. |
| TeamID | integer | Integer ID of a linked team the member belongs to. |
| TeamRole | string | Role within that team (for example, member, owner). |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorOrganizationGroups
This table stores Cursor organization groups. Populated only when Enterprise is enabled.
| Name | Type | Description |
|---|---|---|
| GroupID | string | Organization group ID with the g_ prefix. |
| Name | string | Group name. |
| CreatedAt | datetime | Creation time of the organization group. |
| UpdatedAt | datetime | Last update time of the organization group. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorOrganizationGroupMembers
This table stores members of Cursor organization groups. Populated only when Enterprise is enabled.
| Name | Type | Description |
|---|---|---|
| ID | uniqueidentifier | Unique identifier for the record. |
| GroupID | string | Organization group ID this membership belongs to. |
| CursorUserID | string | Public user ID with the user_ prefix. |
| Name | string | Display name of the member. |
| string | Email address of the member. | |
| JoinedAt | datetime | Time the member was added to the group. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorPooledUsage
This table stores organization-level pooled spend limits and usage for the current contract period. Populated only when Enterprise is enabled.
| Name | Type | Description |
|---|---|---|
| OrganizationId | string | Public organization ID this pooled usage row belongs to (for example, org_abc123). |
| LimitCents | decimal | Pooled spend limit for the organization, in cents. |
| UsedCents | decimal | Total pooled usage consumed so far, in cents. |
| RemainingCents | decimal | Remaining pooled budget (limitCents minus usedCents), in cents. |
| ContractStartDate | datetime | Start of the current contract period, or null when no contract dates are set. |
| ContractEndDate | datetime | End of the current contract period, or null when no contract dates are set. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorPooledUsageTeams
This table stores per-team pooled usage and optional budget caps within the organization pool. Populated only when Enterprise is enabled.
| Name | Type | Description |
|---|---|---|
| TeamID | integer | Integer ID of a team linked to the organization. |
| UsedCents | decimal | Usage consumed by this team during the current contract period, in cents. |
| BudgetLimitCents | decimal | Per-team budget cap in cents. Present only when a budget is configured for the team. |
| OrganizationId | string | Public organization ID of the parent pooled usage row. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
CursorOrganizationModelAccessConfigurations
This table stores model-access configuration for teams linked to the organization, including unrestricted vs custom policy and errors when model access is not available. Populated only when Enterprise is enabled.
| Name | Type | Description |
|---|---|---|
| TeamID | integer | Integer ID of a team linked to the organization. |
| TeamName | string | Display name of the linked team. |
| State | string | Model-access policy state for the team: unrestricted, custom, or legacy. |
| NewProviderDefault | string | enabled or disabled when state is custom. Otherwise null. |
| NewModelDefault | string | enabled or disabled when state is custom. Otherwise null. |
| ErrorMessage | string | Error returned when model access control is not available for this team. |
| ConfigID | integer | The ID of the configuration within Compyl. |
| BatchDate | datetime | The date and time data was synced to our database. |
Updated 24 days ago