/api/v2/files/{fileId}/versionsList the versions of a file, newest first by default. Each write that changes the bytes records one; identical rewrites do not. Collaborative edits, and repeated workflow writes by one author, fold into a version under ten minutes old and written in the last five. Renames and moves are not versions. Retention removes older versions by age and plan but keeps the newest ten, so numbers can have gaps.
OAuth scope: api:read.
Authentication
Send a personal or workspace API key in X-API-Key. See key types and access; operations that reject workspace keys say so in their description.
Send X-API-Key in the request header.
Alternatively
Send a Sim OAuth access token in Authorization: Bearer. See OAuth authentication and scopes.
Authorization: Bearer YOUR_ACCESS_TOKEN
Required scopes: api:read
OAuth flows
OAuth scope: api:read.
Path parameters
File identifier.
- minLength
- 1
- maxLength
- 128
- pattern
- ^[A-Za-z0-9_-]+$
Query parameters
Workspace that owns the file.
- minLength
- 1
- maxLength
- 128
Field used to sort the result.
- default
- version
- enum
- ["version"]
Sort direction.
- default
- desc
- enum
- ["asc","desc"]
Maximum versions to return per page. Must be a whole number from 1 to 100. Defaults to 50.
- default
- 50
- minimum
- 1
- maximum
- 100
Opaque cursor from the previous page. Send it back with the same sort and filters; only limit may change. Change anything else and pagination must restart without a cursor.
- minLength
- 1
Responses
200
A page of file versions.
A cursor-paginated page of file versions.
2 fields
Items in the current page.
Schema details
One recorded version of the content of a workspace file.
11 fields
File this version belongs to.
Version number, increasing by one per recorded version. Numbers are never reused, so a gap means an older version was removed by retention or deleted.
- minimum
- 1
- maximum
- 2147483647
Whether this version holds the current content of the file.
Size in bytes of the stored content of this version.
- minimum
- 0
- maximum
- 9007199254740991
MIME type of the stored content of this version.
What wrote this version: upload (the original upload), user (a save in the Sim editor), api (an API, CLI, or MCP write), copilot (Sim, the agent), workflow (a workflow run), collab (collaborative editing), revert (a revert to an earlier version), or unknown (content written before version history existed, or by a writer with no source of its own).
- enum
- ["upload","user","api","copilot","workflow","collab","revert","unknown"]
Users who wrote this version, in order of first contribution. Empty for actorless writers such as workspace API keys. A collaborative version lists every editor in its window.
Schema details
2 fields
User identifier.
Current email address of the user, or null when the account no longer exists.
Schema details
Any of
- format
- pattern
- ^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$
Additional properties are not allowed.
For a revert version, the version whose content it restored; otherwise null.
Schema details
Any of
- minimum
- 1
- maximum
- 2147483647
ISO 8601 timestamp when this content became current.
- format
- date-time
ISO 8601 timestamp of the last write folded into this version. Equals createdAt unless edits were coalesced into it.
- format
- date-time
ISO 8601 timestamp when a newer version replaced this one, or null for the current version. Retention ages versions from this time.
- format
- date-time
Schema details
Any of
Additional properties are not allowed.
Opaque cursor for the next page. Send it back as cursor; null means there are no more pages. Do not construct a cursor yourself.
Schema details
Any of
Additional properties are not allowed.
Response example 1
Response headers
Maximum requests allowed in the current window.
- minimum
- 0
- maximum
- 9007199254740991
Requests remaining in the current window.
- minimum
- 0
- maximum
- 9007199254740991
ISO 8601 timestamp when the current rate-limit window resets.
- format
- date-time
- pattern
- ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
400
The request is invalid. This includes a query parameter sent with no value (?limit=, ?search=), which is rejected rather than read as zero, empty, or the parameter default — omit the parameter instead.
Canonical error envelope returned by the public v2 API.
1 field
Canonical error details.
3 fields
Stable machine-readable error code.
Human-readable explanation of the error.
Structured error context whose keys depend on the error. Actionable 403 responses use the V2ActionableForbiddenDetails shape; validation failures may return issue arrays instead.
Schema details
Any of
Machine-readable cause and optional context for an actionable 403 response.
1 field
Stable cause code for an actionable 403 response.
- enum
- ["INSUFFICIENT_WORKSPACE_ROLE","PERSONAL_API_KEYS_DISABLED","WORKSPACE_KEY_OPERATION_NOT_PERMITTED","PRINCIPAL_KIND_NOT_PERMITTED","ORGANIZATION_MEMBERSHIP_REQUIRED","ORGANIZATION_ADMIN_REQUIRED","ENTERPRISE_PLAN_REQUIRED","SSO_DISABLED","SSO_DOMAIN_NOT_VERIFIED","SSO_PROVIDER_LIMIT_REACHED","ORGANIZATION_PLAN_REQUIRED","AUDIT_LOGS_DISABLED","ACCESS_REQUESTS_DISABLED","ACCESS_REQUEST_ORGANIZATION_REQUIRED","SKILL_EDITOR_ACCESS_REQUIRED","SECRET_ADMIN_ACCESS_REQUIRED","WORKSPACE_RESOURCE_LIMIT_REACHED","PUBLIC_SHARING_NOT_ALLOWED","CREDENTIAL_ADMIN_ACCESS_REQUIRED","MCP_SERVER_URL_NOT_ALLOWED","WORKSPACE_PLAN_CAPABILITY_REQUIRED","CHAT_AUTH_MODE_NOT_PERMITTED","CONNECTOR_MANAGED_RESOURCE_READ_ONLY","PERMISSION_GROUP_CAPABILITY_BLOCKED","INTEGRATION_NOT_ALLOWED","INSUFFICIENT_SCOPE","SCIM_MANAGED_MEMBERSHIP"]
Additional context for this refusal.
Other structured context defined by the specific error.
Additional properties are not allowed.
Additional properties are not allowed.
401
The API credential is missing or invalid.
Canonical error envelope returned by the public v2 API.
1 field
Canonical error details.
3 fields
Stable machine-readable error code.
Human-readable explanation of the error.
Structured error context whose keys depend on the error. Actionable 403 responses use the V2ActionableForbiddenDetails shape; validation failures may return issue arrays instead.
Schema details
Any of
Machine-readable cause and optional context for an actionable 403 response.
1 field
Stable cause code for an actionable 403 response.
- enum
- ["INSUFFICIENT_WORKSPACE_ROLE","PERSONAL_API_KEYS_DISABLED","WORKSPACE_KEY_OPERATION_NOT_PERMITTED","PRINCIPAL_KIND_NOT_PERMITTED","ORGANIZATION_MEMBERSHIP_REQUIRED","ORGANIZATION_ADMIN_REQUIRED","ENTERPRISE_PLAN_REQUIRED","SSO_DISABLED","SSO_DOMAIN_NOT_VERIFIED","SSO_PROVIDER_LIMIT_REACHED","ORGANIZATION_PLAN_REQUIRED","AUDIT_LOGS_DISABLED","ACCESS_REQUESTS_DISABLED","ACCESS_REQUEST_ORGANIZATION_REQUIRED","SKILL_EDITOR_ACCESS_REQUIRED","SECRET_ADMIN_ACCESS_REQUIRED","WORKSPACE_RESOURCE_LIMIT_REACHED","PUBLIC_SHARING_NOT_ALLOWED","CREDENTIAL_ADMIN_ACCESS_REQUIRED","MCP_SERVER_URL_NOT_ALLOWED","WORKSPACE_PLAN_CAPABILITY_REQUIRED","CHAT_AUTH_MODE_NOT_PERMITTED","CONNECTOR_MANAGED_RESOURCE_READ_ONLY","PERMISSION_GROUP_CAPABILITY_BLOCKED","INTEGRATION_NOT_ALLOWED","INSUFFICIENT_SCOPE","SCIM_MANAGED_MEMBERSHIP"]
Additional context for this refusal.
Other structured context defined by the specific error.
Additional properties are not allowed.
Additional properties are not allowed.
403
The caller lacks the rights this operation requires. When the cause is one a caller can act on, error.details.code names it. A resource in a workspace the caller cannot reach at all answers 404 instead, so absence and denial are indistinguishable.
Canonical error envelope returned by the public v2 API.
1 field
Canonical error details.
3 fields
Stable machine-readable error code.
Human-readable explanation of the error.
Structured error context whose keys depend on the error. Actionable 403 responses use the V2ActionableForbiddenDetails shape; validation failures may return issue arrays instead.
Schema details
Any of
Machine-readable cause and optional context for an actionable 403 response.
1 field
Stable cause code for an actionable 403 response.
- enum
- ["INSUFFICIENT_WORKSPACE_ROLE","PERSONAL_API_KEYS_DISABLED","WORKSPACE_KEY_OPERATION_NOT_PERMITTED","PRINCIPAL_KIND_NOT_PERMITTED","ORGANIZATION_MEMBERSHIP_REQUIRED","ORGANIZATION_ADMIN_REQUIRED","ENTERPRISE_PLAN_REQUIRED","SSO_DISABLED","SSO_DOMAIN_NOT_VERIFIED","SSO_PROVIDER_LIMIT_REACHED","ORGANIZATION_PLAN_REQUIRED","AUDIT_LOGS_DISABLED","ACCESS_REQUESTS_DISABLED","ACCESS_REQUEST_ORGANIZATION_REQUIRED","SKILL_EDITOR_ACCESS_REQUIRED","SECRET_ADMIN_ACCESS_REQUIRED","WORKSPACE_RESOURCE_LIMIT_REACHED","PUBLIC_SHARING_NOT_ALLOWED","CREDENTIAL_ADMIN_ACCESS_REQUIRED","MCP_SERVER_URL_NOT_ALLOWED","WORKSPACE_PLAN_CAPABILITY_REQUIRED","CHAT_AUTH_MODE_NOT_PERMITTED","CONNECTOR_MANAGED_RESOURCE_READ_ONLY","PERMISSION_GROUP_CAPABILITY_BLOCKED","INTEGRATION_NOT_ALLOWED","INSUFFICIENT_SCOPE","SCIM_MANAGED_MEMBERSHIP"]
Additional context for this refusal.
Other structured context defined by the specific error.
Additional properties are not allowed.
Additional properties are not allowed.
404
The requested resource was not found.
Canonical error envelope returned by the public v2 API.
1 field
Canonical error details.
3 fields
Stable machine-readable error code.
Human-readable explanation of the error.
Structured error context whose keys depend on the error. Actionable 403 responses use the V2ActionableForbiddenDetails shape; validation failures may return issue arrays instead.
Schema details
Any of
Machine-readable cause and optional context for an actionable 403 response.
1 field
Stable cause code for an actionable 403 response.
- enum
- ["INSUFFICIENT_WORKSPACE_ROLE","PERSONAL_API_KEYS_DISABLED","WORKSPACE_KEY_OPERATION_NOT_PERMITTED","PRINCIPAL_KIND_NOT_PERMITTED","ORGANIZATION_MEMBERSHIP_REQUIRED","ORGANIZATION_ADMIN_REQUIRED","ENTERPRISE_PLAN_REQUIRED","SSO_DISABLED","SSO_DOMAIN_NOT_VERIFIED","SSO_PROVIDER_LIMIT_REACHED","ORGANIZATION_PLAN_REQUIRED","AUDIT_LOGS_DISABLED","ACCESS_REQUESTS_DISABLED","ACCESS_REQUEST_ORGANIZATION_REQUIRED","SKILL_EDITOR_ACCESS_REQUIRED","SECRET_ADMIN_ACCESS_REQUIRED","WORKSPACE_RESOURCE_LIMIT_REACHED","PUBLIC_SHARING_NOT_ALLOWED","CREDENTIAL_ADMIN_ACCESS_REQUIRED","MCP_SERVER_URL_NOT_ALLOWED","WORKSPACE_PLAN_CAPABILITY_REQUIRED","CHAT_AUTH_MODE_NOT_PERMITTED","CONNECTOR_MANAGED_RESOURCE_READ_ONLY","PERMISSION_GROUP_CAPABILITY_BLOCKED","INTEGRATION_NOT_ALLOWED","INSUFFICIENT_SCOPE","SCIM_MANAGED_MEMBERSHIP"]
Additional context for this refusal.
Other structured context defined by the specific error.
Additional properties are not allowed.
Additional properties are not allowed.
429
The caller exceeded the request rate limit.
Canonical error envelope returned by the public v2 API.
1 field
Canonical error details.
3 fields
Stable machine-readable error code.
Human-readable explanation of the error.
Structured error context whose keys depend on the error. Actionable 403 responses use the V2ActionableForbiddenDetails shape; validation failures may return issue arrays instead.
Schema details
Any of
Machine-readable cause and optional context for an actionable 403 response.
1 field
Stable cause code for an actionable 403 response.
- enum
- ["INSUFFICIENT_WORKSPACE_ROLE","PERSONAL_API_KEYS_DISABLED","WORKSPACE_KEY_OPERATION_NOT_PERMITTED","PRINCIPAL_KIND_NOT_PERMITTED","ORGANIZATION_MEMBERSHIP_REQUIRED","ORGANIZATION_ADMIN_REQUIRED","ENTERPRISE_PLAN_REQUIRED","SSO_DISABLED","SSO_DOMAIN_NOT_VERIFIED","SSO_PROVIDER_LIMIT_REACHED","ORGANIZATION_PLAN_REQUIRED","AUDIT_LOGS_DISABLED","ACCESS_REQUESTS_DISABLED","ACCESS_REQUEST_ORGANIZATION_REQUIRED","SKILL_EDITOR_ACCESS_REQUIRED","SECRET_ADMIN_ACCESS_REQUIRED","WORKSPACE_RESOURCE_LIMIT_REACHED","PUBLIC_SHARING_NOT_ALLOWED","CREDENTIAL_ADMIN_ACCESS_REQUIRED","MCP_SERVER_URL_NOT_ALLOWED","WORKSPACE_PLAN_CAPABILITY_REQUIRED","CHAT_AUTH_MODE_NOT_PERMITTED","CONNECTOR_MANAGED_RESOURCE_READ_ONLY","PERMISSION_GROUP_CAPABILITY_BLOCKED","INTEGRATION_NOT_ALLOWED","INSUFFICIENT_SCOPE","SCIM_MANAGED_MEMBERSHIP"]
Additional context for this refusal.
Other structured context defined by the specific error.
Additional properties are not allowed.
Additional properties are not allowed.
Response headers
Seconds to wait before retrying, sent on 429 and 503. Add jitter rather than retrying at exactly this offset.
- minimum
- 0
- maximum
- 9007199254740991
500
An unexpected server error occurred.
Canonical error envelope returned by the public v2 API.
1 field
Canonical error details.
3 fields
Stable machine-readable error code.
Human-readable explanation of the error.
Structured error context whose keys depend on the error. Actionable 403 responses use the V2ActionableForbiddenDetails shape; validation failures may return issue arrays instead.
Schema details
Any of
Machine-readable cause and optional context for an actionable 403 response.
1 field
Stable cause code for an actionable 403 response.
- enum
- ["INSUFFICIENT_WORKSPACE_ROLE","PERSONAL_API_KEYS_DISABLED","WORKSPACE_KEY_OPERATION_NOT_PERMITTED","PRINCIPAL_KIND_NOT_PERMITTED","ORGANIZATION_MEMBERSHIP_REQUIRED","ORGANIZATION_ADMIN_REQUIRED","ENTERPRISE_PLAN_REQUIRED","SSO_DISABLED","SSO_DOMAIN_NOT_VERIFIED","SSO_PROVIDER_LIMIT_REACHED","ORGANIZATION_PLAN_REQUIRED","AUDIT_LOGS_DISABLED","ACCESS_REQUESTS_DISABLED","ACCESS_REQUEST_ORGANIZATION_REQUIRED","SKILL_EDITOR_ACCESS_REQUIRED","SECRET_ADMIN_ACCESS_REQUIRED","WORKSPACE_RESOURCE_LIMIT_REACHED","PUBLIC_SHARING_NOT_ALLOWED","CREDENTIAL_ADMIN_ACCESS_REQUIRED","MCP_SERVER_URL_NOT_ALLOWED","WORKSPACE_PLAN_CAPABILITY_REQUIRED","CHAT_AUTH_MODE_NOT_PERMITTED","CONNECTOR_MANAGED_RESOURCE_READ_ONLY","PERMISSION_GROUP_CAPABILITY_BLOCKED","INTEGRATION_NOT_ALLOWED","INSUFFICIENT_SCOPE","SCIM_MANAGED_MEMBERSHIP"]
Additional context for this refusal.
Other structured context defined by the specific error.
Additional properties are not allowed.
Additional properties are not allowed.
503
A required service is temporarily unavailable. When present, Retry-After gives the minimum seconds to wait; add jitter before retrying. Check operation-specific guidance before repeating a change after an uncertain response.
Canonical error envelope returned by the public v2 API.
1 field
Canonical error details.
3 fields
Stable machine-readable error code.
Human-readable explanation of the error.
Structured error context whose keys depend on the error. Actionable 403 responses use the V2ActionableForbiddenDetails shape; validation failures may return issue arrays instead.
Schema details
Any of
Machine-readable cause and optional context for an actionable 403 response.
1 field
Stable cause code for an actionable 403 response.
- enum
- ["INSUFFICIENT_WORKSPACE_ROLE","PERSONAL_API_KEYS_DISABLED","WORKSPACE_KEY_OPERATION_NOT_PERMITTED","PRINCIPAL_KIND_NOT_PERMITTED","ORGANIZATION_MEMBERSHIP_REQUIRED","ORGANIZATION_ADMIN_REQUIRED","ENTERPRISE_PLAN_REQUIRED","SSO_DISABLED","SSO_DOMAIN_NOT_VERIFIED","SSO_PROVIDER_LIMIT_REACHED","ORGANIZATION_PLAN_REQUIRED","AUDIT_LOGS_DISABLED","ACCESS_REQUESTS_DISABLED","ACCESS_REQUEST_ORGANIZATION_REQUIRED","SKILL_EDITOR_ACCESS_REQUIRED","SECRET_ADMIN_ACCESS_REQUIRED","WORKSPACE_RESOURCE_LIMIT_REACHED","PUBLIC_SHARING_NOT_ALLOWED","CREDENTIAL_ADMIN_ACCESS_REQUIRED","MCP_SERVER_URL_NOT_ALLOWED","WORKSPACE_PLAN_CAPABILITY_REQUIRED","CHAT_AUTH_MODE_NOT_PERMITTED","CONNECTOR_MANAGED_RESOURCE_READ_ONLY","PERMISSION_GROUP_CAPABILITY_BLOCKED","INTEGRATION_NOT_ALLOWED","INSUFFICIENT_SCOPE","SCIM_MANAGED_MEMBERSHIP"]
Additional context for this refusal.
Other structured context defined by the specific error.
Additional properties are not allowed.
Additional properties are not allowed.
Response headers
Seconds to wait before retrying, sent on 429 and 503. Add jitter rather than retrying at exactly this offset.
- minimum
- 0
- maximum
- 9007199254740991