{
	"components": {
		"schemas": {
			"APITokenResponse": {
				"additionalProperties": false,
				"properties": {
					"created_at": {
						"description": "Creation time",
						"type": "string"
					},
					"expires_at": {
						"description": "Token expiry time",
						"type": "string"
					},
					"id": {
						"description": "API token ID",
						"type": "string"
					},
					"last_used_at": {
						"description": "Last successful use time",
						"type": "string"
					},
					"name": {
						"description": "User-visible token name",
						"type": "string"
					},
					"revoked_at": {
						"description": "Revocation time",
						"type": "string"
					},
					"scope": {
						"description": "Token scope",
						"type": "string"
					},
					"token_prefix": {
						"description": "First 8 hex characters of the token secret hash",
						"type": "string"
					}
				},
				"required": ["id", "name", "token_prefix", "scope", "created_at"],
				"type": "object"
			},
			"AccountResponse": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/AccountResponse.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"account_id": {
						"description": "Platform-specific account ID",
						"type": "string"
					},
					"account_username": {
						"description": "Account username",
						"type": "string"
					},
					"id": {
						"description": "Account ID",
						"type": "string"
					},
					"instance_url": {
						"description": "Instance URL (Mastodon/Bluesky)",
						"type": "string"
					},
					"is_active": {
						"description": "Whether the account is active",
						"type": "boolean"
					},
					"platform": {
						"description": "Platform name",
						"type": "string"
					},
					"slug": {
						"description": "User-editable account slug for CLI selectors",
						"type": "string"
					},
					"thread_replies_supported": {
						"description": "Whether this account supports thread replies in current server config",
						"type": "boolean"
					}
				},
				"required": [
					"id",
					"slug",
					"platform",
					"account_id",
					"account_username",
					"instance_url",
					"is_active",
					"thread_replies_supported"
				],
				"type": "object"
			},
			"AddSetAccountsInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/AddSetAccountsInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"account_ids": {
						"description": "Account IDs to add",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"is_main": {
						"description": "Mark as main platform",
						"type": "boolean"
					}
				},
				"required": ["account_ids"],
				"type": "object"
			},
			"ApproveCLIAuthInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/ApproveCLIAuthInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"device_code": {
						"type": "string"
					},
					"name": {
						"type": "string"
					},
					"scopes": {
						"type": "string"
					},
					"user_code": {
						"type": "string"
					}
				},
				"type": "object"
			},
			"AuthOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/AuthOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"mfa_methods": {
						"description": "Enabled MFA methods for this account",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"mfa_token": {
						"description": "Pending MFA token for follow-up verification",
						"type": "string"
					},
					"requires_mfa": {
						"description": "Whether the login requires a second factor",
						"type": "boolean"
					},
					"token": {
						"description": "JWT authentication token",
						"type": "string"
					},
					"user": {
						"$ref": "#/components/schemas/UserProfile"
					}
				},
				"required": ["requires_mfa"],
				"type": "object"
			},
			"BatchDeleteMediaInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/BatchDeleteMediaInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"media_ids": {
						"description": "Array of media IDs to delete",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["media_ids"],
				"type": "object"
			},
			"BatchDeleteMediaOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/BatchDeleteMediaOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"deleted": {
						"description": "Number of media deleted",
						"format": "int64",
						"type": "integer"
					},
					"failed_ids": {
						"description": "IDs that could not be deleted (in use)",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["deleted", "failed_ids"],
				"type": "object"
			},
			"BeginPasskeyLoginInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/BeginPasskeyLoginInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"mfa_token": {
						"description": "Pending MFA challenge token",
						"type": "string"
					}
				},
				"required": ["mfa_token"],
				"type": "object"
			},
			"BeginPasskeyRegistrationInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/BeginPasskeyRegistrationInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"current_password": {
						"description": "Current password for re-authentication",
						"type": "string"
					},
					"name": {
						"description": "Optional passkey label",
						"type": "string"
					}
				},
				"required": ["current_password", "name"],
				"type": "object"
			},
			"BlueskyLoginInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/BlueskyLoginInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"app_password": {
						"description": "Bluesky app password (Settings > App Passwords)",
						"type": "string"
					},
					"handle": {
						"description": "Bluesky handle (e.g. user.bsky.social)",
						"type": "string"
					},
					"workspace_id": {
						"description": "Workspace ID",
						"type": "string"
					}
				},
				"required": ["workspace_id", "handle", "app_password"],
				"type": "object"
			},
			"CLIAuthDecisionOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CLIAuthDecisionOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"ok": {
						"type": "boolean"
					}
				},
				"required": ["ok"],
				"type": "object"
			},
			"ConfirmTOTPSetupInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/ConfirmTOTPSetupInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"challenge_id": {
						"description": "TOTP setup challenge ID",
						"type": "string"
					},
					"code": {
						"description": "Six digit authenticator code",
						"maxLength": 6,
						"minLength": 6,
						"type": "string"
					}
				},
				"required": ["challenge_id", "code"],
				"type": "object"
			},
			"CreateAPITokenInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CreateAPITokenInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"expires_at": {
						"description": "Explicit expiry. Null means never expires.",
						"format": "date-time",
						"type": "string"
					},
					"name": {
						"description": "User-visible token name",
						"type": "string"
					},
					"scope": {
						"description": "Token scope. Defaults to cli:full.",
						"type": "string"
					}
				},
				"required": ["name"],
				"type": "object"
			},
			"CreateAPITokenOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CreateAPITokenOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"item": {
						"$ref": "#/components/schemas/APITokenResponse"
					},
					"token": {
						"description": "Raw API token. Returned once and never stored in plaintext.",
						"type": "string"
					}
				},
				"required": ["token", "item"],
				"type": "object"
			},
			"CreatePostInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CreatePostInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"content": {
						"description": "Post content",
						"type": "string"
					},
					"media_ids": {
						"description": "Media attachment IDs to include",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"random_delay_minutes": {
						"description": "Random delay in minutes (±N) to add for natural posting",
						"format": "int64",
						"type": "integer"
					},
					"scheduled_at": {
						"description": "Schedule time (ISO 8601). Omit for draft.",
						"format": "date-time",
						"type": "string"
					},
					"social_account_ids": {
						"description": "Social account IDs to publish to",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"thread_draft": {
						"description": "Optional thread draft JSON (encoded with __openpost_thread__: prefix) for a parent post that drafts a multi-post thread. Mutually exclusive with a thread blob in content: the new field is preferred.",
						"type": "string"
					},
					"workspace_id": {
						"description": "Target workspace ID",
						"type": "string"
					}
				},
				"required": ["workspace_id", "content", "social_account_ids"],
				"type": "object"
			},
			"CreatePostingScheduleInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CreatePostingScheduleInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"day_of_week": {
						"description": "Day of week (0=Sunday, 6=Saturday)",
						"format": "int64",
						"type": "integer"
					},
					"label": {
						"description": "Display label",
						"type": "string"
					},
					"local_day_of_week": {
						"description": "Day of week in workspace local time (0=Sunday, 6=Saturday)",
						"format": "int64",
						"type": "integer"
					},
					"local_hour": {
						"description": "Hour in workspace local time (0-23)",
						"format": "int64",
						"type": "integer"
					},
					"local_minute": {
						"description": "Minute in workspace local time (0-59)",
						"format": "int64",
						"type": "integer"
					},
					"set_id": {
						"description": "Optional set ID",
						"type": "string"
					},
					"utc_hour": {
						"description": "Hour in UTC (0-23)",
						"format": "int64",
						"type": "integer"
					},
					"utc_minute": {
						"description": "Minute in UTC (0-59)",
						"format": "int64",
						"type": "integer"
					},
					"workspace_id": {
						"description": "Workspace ID",
						"type": "string"
					}
				},
				"required": ["workspace_id", "utc_hour", "utc_minute", "day_of_week"],
				"type": "object"
			},
			"CreatePromptInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CreatePromptInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"category": {
						"description": "Prompt category",
						"maxLength": 50,
						"minLength": 1,
						"type": "string"
					},
					"text": {
						"description": "Prompt text",
						"maxLength": 500,
						"minLength": 1,
						"type": "string"
					},
					"workspace_id": {
						"description": "Workspace ID (for workspace prompt)",
						"type": "string"
					}
				},
				"required": ["text", "category"],
				"type": "object"
			},
			"CreateSetInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CreateSetInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"account_ids": {
						"description": "Initial account IDs to include in the set",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"is_default": {
						"description": "Set as the default set for this workspace",
						"type": "boolean"
					},
					"name": {
						"description": "Set name",
						"minLength": 1,
						"type": "string"
					},
					"workspace_id": {
						"description": "Target workspace ID",
						"type": "string"
					}
				},
				"required": ["workspace_id", "name", "is_default", "account_ids"],
				"type": "object"
			},
			"CreateThreadInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CreateThreadInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"posts": {
						"description": "Thread posts in order",
						"items": {
							"$ref": "#/components/schemas/ThreadPostInput"
						},
						"minItems": 2,
						"type": ["array", "null"]
					},
					"random_delay_minutes": {
						"description": "Random delay in minutes (±N) to add for natural posting",
						"format": "int64",
						"type": "integer"
					},
					"scheduled_at": {
						"description": "Schedule time (ISO 8601). Omit for draft.",
						"format": "date-time",
						"type": "string"
					},
					"social_account_ids": {
						"description": "Social account IDs to publish to",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"workspace_id": {
						"description": "Target workspace ID",
						"type": "string"
					}
				},
				"required": ["workspace_id", "social_account_ids", "posts"],
				"type": "object"
			},
			"CreateThreadOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CreateThreadOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"post_ids": {
						"description": "Created post IDs in order",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["post_ids"],
				"type": "object"
			},
			"CreateWorkspaceInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CreateWorkspaceInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"name": {
						"description": "Workspace name",
						"maxLength": 100,
						"minLength": 1,
						"type": "string"
					}
				},
				"required": ["name"],
				"type": "object"
			},
			"CreateWorkspaceOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/CreateWorkspaceOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"created_at": {
						"type": "string"
					},
					"id": {
						"type": "string"
					},
					"name": {
						"type": "string"
					}
				},
				"required": ["id", "name", "created_at"],
				"type": "object"
			},
			"DeleteMediaOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/DeleteMediaOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"message": {
						"description": "Success message",
						"type": "string"
					}
				},
				"required": ["message"],
				"type": "object"
			},
			"DeletePostOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/DeletePostOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"message": {
						"description": "Success message",
						"type": "string"
					}
				},
				"required": ["message"],
				"type": "object"
			},
			"DeletePostingScheduleOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/DeletePostingScheduleOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"message": {
						"description": "Success message",
						"type": "string"
					}
				},
				"required": ["message"],
				"type": "object"
			},
			"DeletePromptOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/DeletePromptOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"message": {
						"description": "Success message",
						"type": "string"
					}
				},
				"required": ["message"],
				"type": "object"
			},
			"DeleteSetOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/DeleteSetOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"message": {
						"description": "Success message",
						"type": "string"
					}
				},
				"required": ["message"],
				"type": "object"
			},
			"DeleteVariantsOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/DeleteVariantsOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"message": {
						"description": "Success message",
						"type": "string"
					}
				},
				"required": ["message"],
				"type": "object"
			},
			"DenyCLIAuthInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/DenyCLIAuthInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"device_code": {
						"type": "string"
					},
					"user_code": {
						"type": "string"
					}
				},
				"type": "object"
			},
			"DisableTOTPInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/DisableTOTPInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"current_password": {
						"description": "Current password for re-authentication",
						"type": "string"
					}
				},
				"required": ["current_password"],
				"type": "object"
			},
			"ErrorDetail": {
				"additionalProperties": false,
				"properties": {
					"location": {
						"description": "Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'",
						"type": "string"
					},
					"message": {
						"description": "Error message text",
						"type": "string"
					},
					"value": {
						"description": "The value at the given location"
					}
				},
				"type": "object"
			},
			"ErrorModel": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/ErrorModel.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"detail": {
						"description": "A human-readable explanation specific to this occurrence of the problem.",
						"examples": ["Property foo is required but is missing."],
						"type": "string"
					},
					"errors": {
						"description": "Optional list of individual error details",
						"items": {
							"$ref": "#/components/schemas/ErrorDetail"
						},
						"type": ["array", "null"]
					},
					"instance": {
						"description": "A URI reference that identifies the specific occurrence of the problem.",
						"examples": ["https://example.com/error-log/abc123"],
						"format": "uri",
						"type": "string"
					},
					"status": {
						"description": "HTTP status code",
						"examples": [400],
						"format": "int64",
						"type": "integer"
					},
					"title": {
						"description": "A short, human-readable summary of the problem type. This value should not change between occurrences of the error.",
						"examples": ["Bad Request"],
						"type": "string"
					},
					"type": {
						"default": "about:blank",
						"description": "A URI reference to human-readable documentation for the error.",
						"examples": ["https://example.com/errors/example"],
						"format": "uri",
						"type": "string"
					}
				},
				"type": "object"
			},
			"ExchangeCodeInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/ExchangeCodeInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"code": {
						"description": "Authorization code from OAuth flow",
						"type": "string"
					},
					"server_name": {
						"description": "Mastodon server name from config",
						"type": "string"
					},
					"workspace_id": {
						"description": "Workspace ID",
						"type": "string"
					}
				},
				"required": ["workspace_id", "server_name", "code"],
				"type": "object"
			},
			"FinishPasskeyLoginInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/FinishPasskeyLoginInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"challenge_id": {
						"description": "Passkey challenge ID",
						"type": "string"
					},
					"credential": {
						"description": "WebAuthn assertion response"
					}
				},
				"required": ["challenge_id", "credential"],
				"type": "object"
			},
			"FinishPasskeyRegistrationInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/FinishPasskeyRegistrationInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"challenge_id": {
						"description": "Passkey registration challenge ID",
						"type": "string"
					},
					"credential": {
						"description": "WebAuthn registration response"
					},
					"name": {
						"description": "Optional passkey label",
						"type": "string"
					}
				},
				"required": ["challenge_id", "name", "credential"],
				"type": "object"
			},
			"GetAuthURLOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/GetAuthURLOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"url": {
						"description": "OAuth authorization URL",
						"type": "string"
					}
				},
				"required": ["url"],
				"type": "object"
			},
			"GetCLIAuthSessionOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/GetCLIAuthSessionOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"client_name": {
						"type": "string"
					},
					"client_os": {
						"type": "string"
					},
					"client_version": {
						"type": "string"
					},
					"expires_at": {
						"type": "string"
					},
					"requested_scopes": {
						"type": "string"
					}
				},
				"required": [
					"client_name",
					"client_version",
					"client_os",
					"requested_scopes",
					"expires_at"
				],
				"type": "object"
			},
			"GetMediaUsageOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/GetMediaUsageOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"count": {
						"description": "Number of posts using this media",
						"format": "int64",
						"type": "integer"
					},
					"usage": {
						"description": "Posts using this media",
						"items": {
							"$ref": "#/components/schemas/MediaUsageItem"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["usage", "count"],
				"type": "object"
			},
			"GetPromptCategoriesOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/GetPromptCategoriesOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"categories": {
						"description": "Available prompt categories",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["categories"],
				"type": "object"
			},
			"GetVariantsOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/GetVariantsOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"variants": {
						"description": "Post variants",
						"items": {
							"$ref": "#/components/schemas/VariantResponse"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["variants"],
				"type": "object"
			},
			"GetWorkspaceSettingsOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/GetWorkspaceSettingsOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"draft_gap_minutes": {
						"format": "int64",
						"type": "integer"
					},
					"media_cleanup_days": {
						"format": "int64",
						"type": "integer"
					},
					"random_delay_minutes": {
						"format": "int64",
						"type": "integer"
					},
					"slot_end_hour": {
						"format": "int64",
						"type": "integer"
					},
					"slot_interval_minutes": {
						"format": "int64",
						"type": "integer"
					},
					"slot_start_hour": {
						"format": "int64",
						"type": "integer"
					},
					"timezone": {
						"type": "string"
					},
					"week_start": {
						"format": "int64",
						"type": "integer"
					}
				},
				"required": [
					"timezone",
					"week_start",
					"media_cleanup_days",
					"random_delay_minutes",
					"draft_gap_minutes",
					"slot_start_hour",
					"slot_end_hour",
					"slot_interval_minutes"
				],
				"type": "object"
			},
			"Health-checkResponse": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/Health-checkResponse.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"status": {
						"description": "Health status",
						"type": "string"
					}
				},
				"required": ["status"],
				"type": "object"
			},
			"Item": {
				"additionalProperties": false,
				"properties": {
					"created_at": {
						"type": "string"
					},
					"id": {
						"type": "string"
					},
					"name": {
						"type": "string"
					}
				},
				"required": ["id", "name", "created_at"],
				"type": "object"
			},
			"JobResponse": {
				"additionalProperties": false,
				"properties": {
					"attempts": {
						"description": "Number of attempts",
						"format": "int64",
						"type": "integer"
					},
					"created_at": {
						"description": "Creation time",
						"type": "string"
					},
					"id": {
						"description": "Job ID",
						"type": "string"
					},
					"last_error": {
						"description": "Last error message",
						"type": "string"
					},
					"locked_at": {
						"description": "When job was locked",
						"type": "string"
					},
					"max_attempts": {
						"description": "Maximum attempts",
						"format": "int64",
						"type": "integer"
					},
					"payload": {
						"description": "Job payload",
						"type": "string"
					},
					"run_at": {
						"description": "Scheduled run time",
						"type": "string"
					},
					"status": {
						"description": "Job status",
						"type": "string"
					},
					"type": {
						"description": "Job type",
						"type": "string"
					}
				},
				"required": ["id", "type", "status", "run_at", "attempts", "max_attempts", "created_at"],
				"type": "object"
			},
			"ListMediaOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/ListMediaOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"media": {
						"description": "Media attachments",
						"items": {
							"$ref": "#/components/schemas/MediaListItem"
						},
						"type": ["array", "null"]
					},
					"total": {
						"description": "Total count matching filter",
						"format": "int64",
						"type": "integer"
					}
				},
				"required": ["media", "total"],
				"type": "object"
			},
			"LoginInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/LoginInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"email": {
						"description": "User email address",
						"format": "email",
						"type": "string"
					},
					"password": {
						"description": "User password",
						"type": "string"
					}
				},
				"required": ["email", "password"],
				"type": "object"
			},
			"MastodonServerInfo": {
				"additionalProperties": false,
				"properties": {
					"instance_url": {
						"description": "Mastodon instance URL",
						"type": "string"
					},
					"name": {
						"description": "Server configuration name",
						"type": "string"
					}
				},
				"required": ["name", "instance_url"],
				"type": "object"
			},
			"MediaListItem": {
				"additionalProperties": false,
				"properties": {
					"alt_text": {
						"description": "Alt text",
						"type": "string"
					},
					"can_delete": {
						"description": "Whether media can be deleted",
						"type": "boolean"
					},
					"created_at": {
						"description": "Creation time",
						"type": "string"
					},
					"height": {
						"description": "Image height",
						"format": "int64",
						"type": "integer"
					},
					"id": {
						"description": "Media ID",
						"type": "string"
					},
					"is_favorite": {
						"description": "Whether media is favorited",
						"type": "boolean"
					},
					"mime_type": {
						"description": "MIME type",
						"type": "string"
					},
					"original_filename": {
						"description": "Original filename",
						"type": "string"
					},
					"processing_status": {
						"description": "Processing status",
						"type": "string"
					},
					"size": {
						"description": "File size in bytes",
						"format": "int64",
						"type": "integer"
					},
					"thumbnail_url": {
						"description": "Thumbnail URL for grid view",
						"type": "string"
					},
					"url": {
						"description": "URL to access the media",
						"type": "string"
					},
					"usage_count": {
						"description": "Number of posts using this media",
						"format": "int64",
						"type": "integer"
					},
					"width": {
						"description": "Image width",
						"format": "int64",
						"type": "integer"
					},
					"workspace_id": {
						"description": "Workspace ID",
						"type": "string"
					}
				},
				"required": [
					"id",
					"workspace_id",
					"mime_type",
					"size",
					"original_filename",
					"width",
					"height",
					"alt_text",
					"is_favorite",
					"created_at",
					"url",
					"thumbnail_url",
					"usage_count",
					"can_delete",
					"processing_status"
				],
				"type": "object"
			},
			"MediaUsageItem": {
				"additionalProperties": false,
				"properties": {
					"content": {
						"description": "Post content (truncated)",
						"type": "string"
					},
					"post_id": {
						"description": "Post ID",
						"type": "string"
					},
					"scheduled_at": {
						"description": "Scheduled time",
						"type": "string"
					},
					"status": {
						"description": "Post status",
						"type": "string"
					}
				},
				"required": ["post_id", "content", "status", "scheduled_at"],
				"type": "object"
			},
			"NextAvailableSlotOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/NextAvailableSlotOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"message": {
						"description": "Message about the result",
						"type": "string"
					},
					"slot": {
						"$ref": "#/components/schemas/PostingScheduleResponse",
						"description": "Next available schedule slot"
					},
					"slot_time": {
						"description": "The suggested time in ISO 8601 format",
						"type": "string"
					}
				},
				"required": ["slot_time", "message"],
				"type": "object"
			},
			"PasskeyCeremonyOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/PasskeyCeremonyOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"challenge_id": {
						"type": "string"
					},
					"options": {}
				},
				"required": ["challenge_id", "options"],
				"type": "object"
			},
			"PasskeySummary": {
				"additionalProperties": false,
				"properties": {
					"created_at": {
						"description": "When the passkey was registered",
						"format": "date-time",
						"type": "string"
					},
					"id": {
						"description": "Passkey ID",
						"type": "string"
					},
					"last_used_at": {
						"description": "When the passkey was last used",
						"format": "date-time",
						"type": "string"
					},
					"name": {
						"description": "User-visible passkey label",
						"type": "string"
					}
				},
				"required": ["id", "name", "created_at", "last_used_at"],
				"type": "object"
			},
			"PollCLIAuthInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/PollCLIAuthInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"device_code": {
						"type": "string"
					}
				},
				"required": ["device_code"],
				"type": "object"
			},
			"PollCLIAuthOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/PollCLIAuthOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"expires_in": {
						"format": "int64",
						"type": "integer"
					},
					"interval": {
						"format": "int64",
						"type": "integer"
					},
					"retry_after": {
						"format": "int64",
						"type": "integer"
					},
					"status": {
						"type": "string"
					},
					"token": {
						"type": "string"
					}
				},
				"required": ["status", "expires_in", "interval"],
				"type": "object"
			},
			"PostDestinationResponse": {
				"additionalProperties": false,
				"properties": {
					"error_message": {
						"description": "Error message if publishing failed",
						"type": "string"
					},
					"platform": {
						"description": "Platform name",
						"type": "string"
					},
					"social_account_id": {
						"description": "Social account ID",
						"type": "string"
					},
					"status": {
						"description": "Destination status",
						"type": "string"
					}
				},
				"required": ["social_account_id", "platform", "status"],
				"type": "object"
			},
			"PostDetailResponse": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/PostDetailResponse.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"actual_run_at": {
						"description": "Actual run time after random delay (ISO 8601)",
						"type": "string"
					},
					"content": {
						"description": "Post content",
						"type": "string"
					},
					"created_at": {
						"description": "Creation time (ISO 8601)",
						"type": "string"
					},
					"created_by": {
						"description": "Creator user ID",
						"type": "string"
					},
					"destinations": {
						"description": "Post destinations",
						"items": {
							"$ref": "#/components/schemas/PostDestinationResponse"
						},
						"type": ["array", "null"]
					},
					"id": {
						"description": "Post ID",
						"type": "string"
					},
					"media": {
						"description": "Attached media",
						"items": {
							"$ref": "#/components/schemas/PostMediaResponse"
						},
						"type": ["array", "null"]
					},
					"random_delay_minutes": {
						"description": "Random delay in minutes (±N)",
						"format": "int64",
						"type": "integer"
					},
					"scheduled_at": {
						"description": "Scheduled time (ISO 8601)",
						"type": "string"
					},
					"status": {
						"description": "Post status",
						"type": "string"
					},
					"thread_draft": {
						"description": "Set when this post is a thread-draft parent; contains the encoded thread JSON (with __openpost_thread__: prefix).",
						"type": "string"
					},
					"workspace_id": {
						"description": "Workspace ID",
						"type": "string"
					}
				},
				"required": [
					"id",
					"workspace_id",
					"created_by",
					"content",
					"status",
					"scheduled_at",
					"random_delay_minutes",
					"created_at"
				],
				"type": "object"
			},
			"PostMediaResponse": {
				"additionalProperties": false,
				"properties": {
					"alt_text": {
						"description": "Alt text for accessibility",
						"type": "string"
					},
					"display_order": {
						"description": "Display order",
						"format": "int64",
						"type": "integer"
					},
					"file_path": {
						"description": "File path for media URL",
						"type": "string"
					},
					"media_id": {
						"description": "Media ID",
						"type": "string"
					},
					"mime_type": {
						"description": "Media MIME type",
						"type": "string"
					}
				},
				"required": ["media_id", "display_order", "file_path", "mime_type", "alt_text"],
				"type": "object"
			},
			"PostResponse": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/PostResponse.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"actual_run_at": {
						"description": "Actual run time after random delay (ISO 8601)",
						"type": "string"
					},
					"content": {
						"description": "Post content",
						"type": "string"
					},
					"created_at": {
						"description": "Creation time (ISO 8601)",
						"type": "string"
					},
					"created_by": {
						"description": "Creator user ID",
						"type": "string"
					},
					"destinations": {
						"description": "Post destinations",
						"items": {
							"$ref": "#/components/schemas/PostDestinationResponse"
						},
						"type": ["array", "null"]
					},
					"id": {
						"description": "Post ID",
						"type": "string"
					},
					"media_ids": {
						"description": "Attached media IDs",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"random_delay_minutes": {
						"description": "Random delay in minutes (±N)",
						"format": "int64",
						"type": "integer"
					},
					"scheduled_at": {
						"description": "Scheduled time (ISO 8601)",
						"type": "string"
					},
					"status": {
						"description": "Post status (draft, scheduled, publishing, published, failed)",
						"type": "string"
					},
					"thread_draft": {
						"description": "Set when this post is a thread-draft parent; contains the encoded thread JSON (with __openpost_thread__: prefix).",
						"type": "string"
					},
					"workspace_id": {
						"description": "Workspace ID",
						"type": "string"
					}
				},
				"required": [
					"id",
					"workspace_id",
					"created_by",
					"content",
					"status",
					"scheduled_at",
					"random_delay_minutes",
					"created_at"
				],
				"type": "object"
			},
			"PostingScheduleResponse": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/PostingScheduleResponse.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"created_at": {
						"description": "Creation time (ISO 8601)",
						"type": "string"
					},
					"day_of_week": {
						"description": "Day of week (0=Sunday, 6=Saturday) in UTC",
						"format": "int64",
						"type": "integer"
					},
					"id": {
						"description": "Schedule ID",
						"type": "string"
					},
					"is_active": {
						"description": "Whether this slot is active",
						"type": "boolean"
					},
					"label": {
						"description": "Display label (e.g., Morning, Lunch)",
						"type": "string"
					},
					"local_day_of_week": {
						"description": "Day of week in workspace local time (0=Sunday, 6=Saturday)",
						"format": "int64",
						"type": "integer"
					},
					"local_hour": {
						"description": "Hour in workspace local time (0-23)",
						"format": "int64",
						"type": "integer"
					},
					"local_minute": {
						"description": "Minute in workspace local time (0-59)",
						"format": "int64",
						"type": "integer"
					},
					"set_id": {
						"description": "Optional set ID",
						"type": "string"
					},
					"utc_hour": {
						"description": "Hour in UTC (0-23)",
						"format": "int64",
						"type": "integer"
					},
					"utc_minute": {
						"description": "Minute in UTC (0-59)",
						"format": "int64",
						"type": "integer"
					},
					"workspace_id": {
						"description": "Workspace ID",
						"type": "string"
					}
				},
				"required": [
					"id",
					"workspace_id",
					"utc_hour",
					"utc_minute",
					"day_of_week",
					"local_hour",
					"local_minute",
					"local_day_of_week",
					"is_active",
					"created_at"
				],
				"type": "object"
			},
			"PromptResponse": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/PromptResponse.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"category": {
						"description": "Prompt category",
						"type": "string"
					},
					"created_at": {
						"description": "Creation time (ISO 8601)",
						"type": "string"
					},
					"id": {
						"description": "Prompt ID",
						"type": "string"
					},
					"is_built_in": {
						"description": "Whether this is a built-in prompt",
						"type": "boolean"
					},
					"text": {
						"description": "Prompt text",
						"type": "string"
					},
					"user_id": {
						"description": "User ID (if custom)",
						"type": "string"
					},
					"workspace_id": {
						"description": "Workspace ID (if custom)",
						"type": "string"
					}
				},
				"required": ["id", "text", "category", "is_built_in", "created_at"],
				"type": "object"
			},
			"RegisterInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/RegisterInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"email": {
						"description": "User email address",
						"format": "email",
						"type": "string"
					},
					"password": {
						"description": "User password (min 8 characters)",
						"minLength": 8,
						"type": "string"
					}
				},
				"required": ["email", "password"],
				"type": "object"
			},
			"RemovePasskeyInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/RemovePasskeyInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"current_password": {
						"description": "Current password for re-authentication",
						"type": "string"
					}
				},
				"required": ["current_password"],
				"type": "object"
			},
			"RevokeAPITokenOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/RevokeAPITokenOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"revoked": {
						"type": "boolean"
					}
				},
				"required": ["revoked"],
				"type": "object"
			},
			"ScheduleDay": {
				"additionalProperties": false,
				"properties": {
					"count": {
						"description": "Number of scheduled posts",
						"format": "int64",
						"type": "integer"
					},
					"date": {
						"description": "Date in YYYY-MM-DD format",
						"type": "string"
					},
					"platforms": {
						"description": "Per-platform breakdown",
						"items": {
							"$ref": "#/components/schemas/ScheduleDayPlatform"
						},
						"type": ["array", "null"]
					},
					"workspaces": {
						"description": "Per-workspace breakdown",
						"items": {
							"$ref": "#/components/schemas/ScheduleDayWorkspace"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["date", "count", "platforms", "workspaces"],
				"type": "object"
			},
			"ScheduleDayPlatform": {
				"additionalProperties": false,
				"properties": {
					"count": {
						"description": "Count for this platform on this day",
						"format": "int64",
						"type": "integer"
					},
					"platform": {
						"description": "Platform name",
						"type": "string"
					}
				},
				"required": ["platform", "count"],
				"type": "object"
			},
			"ScheduleDayWorkspace": {
				"additionalProperties": false,
				"properties": {
					"count": {
						"description": "Count for this workspace on this day",
						"format": "int64",
						"type": "integer"
					},
					"workspace_id": {
						"description": "Workspace ID",
						"type": "string"
					}
				},
				"required": ["workspace_id", "count"],
				"type": "object"
			},
			"ScheduleOverviewOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/ScheduleOverviewOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"days": {
						"description": "Daily schedule data",
						"items": {
							"$ref": "#/components/schemas/ScheduleDay"
						},
						"type": ["array", "null"]
					},
					"month": {
						"description": "Month of the overview (1-12)",
						"format": "int64",
						"type": "integer"
					},
					"platforms": {
						"description": "Available platforms",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"selected_platform": {
						"description": "Currently selected platform filter",
						"type": "string"
					},
					"selected_workspace_id": {
						"description": "Currently selected workspace",
						"type": "string"
					},
					"workspaces": {
						"description": "Available workspaces",
						"items": {
							"$ref": "#/components/schemas/WorkspaceResp"
						},
						"type": ["array", "null"]
					},
					"year": {
						"description": "Year of the overview",
						"format": "int64",
						"type": "integer"
					}
				},
				"required": [
					"year",
					"month",
					"selected_workspace_id",
					"selected_platform",
					"workspaces",
					"platforms",
					"days"
				],
				"type": "object"
			},
			"SecurityStatusOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/SecurityStatusOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"methods": {
						"description": "Currently available MFA methods",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"passkeys": {
						"items": {
							"$ref": "#/components/schemas/PasskeySummary"
						},
						"type": ["array", "null"]
					},
					"totp_enabled": {
						"description": "Whether authenticator-based 2FA is enabled",
						"type": "boolean"
					},
					"user": {
						"$ref": "#/components/schemas/UserProfile"
					}
				},
				"required": ["user", "totp_enabled", "passkeys", "methods"],
				"type": "object"
			},
			"SetAccountResponse": {
				"additionalProperties": false,
				"properties": {
					"account_username": {
						"description": "Account username",
						"type": "string"
					},
					"is_main": {
						"description": "Whether this is the main platform in the set",
						"type": "boolean"
					},
					"platform": {
						"description": "Platform name",
						"type": "string"
					},
					"social_account_id": {
						"description": "Social account ID",
						"type": "string"
					}
				},
				"required": ["social_account_id", "platform", "account_username", "is_main"],
				"type": "object"
			},
			"SetResponse": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/SetResponse.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"accounts": {
						"description": "Accounts in this set",
						"items": {
							"$ref": "#/components/schemas/SetAccountResponse"
						},
						"type": ["array", "null"]
					},
					"created_at": {
						"description": "Creation time",
						"type": "string"
					},
					"id": {
						"description": "Set ID",
						"type": "string"
					},
					"is_default": {
						"description": "Is default set",
						"type": "boolean"
					},
					"name": {
						"description": "Set name",
						"type": "string"
					},
					"workspace_id": {
						"description": "Workspace ID",
						"type": "string"
					}
				},
				"required": ["id", "workspace_id", "name", "is_default", "created_at"],
				"type": "object"
			},
			"SetupTOTPInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/SetupTOTPInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"current_password": {
						"description": "Current password for re-authentication",
						"type": "string"
					}
				},
				"required": ["current_password"],
				"type": "object"
			},
			"SetupTOTPOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/SetupTOTPOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"challenge_id": {
						"type": "string"
					},
					"manual_entry_key": {
						"type": "string"
					},
					"otpauth_url": {
						"type": "string"
					},
					"qr_code_data_url": {
						"type": "string"
					}
				},
				"required": ["challenge_id", "manual_entry_key", "otpauth_url", "qr_code_data_url"],
				"type": "object"
			},
			"StartCLIAuthInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/StartCLIAuthInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"client_name": {
						"description": "CLI client name",
						"type": "string"
					},
					"client_os": {
						"description": "CLI host operating system",
						"type": "string"
					},
					"client_version": {
						"description": "CLI client version",
						"type": "string"
					},
					"requested_scopes": {
						"description": "Requested API token scopes",
						"type": "string"
					}
				},
				"required": ["client_name", "client_version", "client_os", "requested_scopes"],
				"type": "object"
			},
			"StartCLIAuthOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/StartCLIAuthOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"device_code": {
						"type": "string"
					},
					"expires_in": {
						"format": "int64",
						"type": "integer"
					},
					"interval": {
						"format": "int64",
						"type": "integer"
					},
					"user_code": {
						"type": "string"
					},
					"verification_url": {
						"type": "string"
					}
				},
				"required": ["device_code", "user_code", "verification_url", "expires_in", "interval"],
				"type": "object"
			},
			"SuggestScheduleInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/SuggestScheduleInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"posts_per_day": {
						"description": "Number of posts per day (1-10)",
						"format": "int64",
						"type": "integer"
					},
					"workspace_id": {
						"description": "Workspace ID",
						"type": "string"
					}
				},
				"required": ["workspace_id", "posts_per_day"],
				"type": "object"
			},
			"SuggestScheduleOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/SuggestScheduleOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"message": {
						"description": "Message about the result",
						"type": "string"
					},
					"schedules": {
						"description": "Created schedule slots",
						"items": {
							"$ref": "#/components/schemas/PostingScheduleResponse"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["schedules", "message"],
				"type": "object"
			},
			"ThreadPostInput": {
				"additionalProperties": false,
				"properties": {
					"content": {
						"description": "Post content",
						"type": "string"
					},
					"media_ids": {
						"description": "Media attachment IDs",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["content"],
				"type": "object"
			},
			"UpdateAccountInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpdateAccountInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"slug": {
						"description": "New account slug. Use lowercase letters, numbers, and hyphens.",
						"type": "string"
					}
				},
				"required": ["slug"],
				"type": "object"
			},
			"UpdateMediaFavoriteOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpdateMediaFavoriteOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"is_favorite": {
						"description": "Updated favorite status",
						"type": "boolean"
					}
				},
				"required": ["is_favorite"],
				"type": "object"
			},
			"UpdateMediaInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpdateMediaInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"alt_text": {
						"description": "Alt text for accessibility",
						"type": "string"
					}
				},
				"required": ["alt_text"],
				"type": "object"
			},
			"UpdateMediaOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpdateMediaOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"message": {
						"description": "Success message",
						"type": "string"
					}
				},
				"required": ["message"],
				"type": "object"
			},
			"UpdatePostInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpdatePostInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"content": {
						"description": "Post content",
						"type": "string"
					},
					"media_ids": {
						"description": "Media attachment IDs to include (replace all)",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"random_delay_minutes": {
						"description": "Random delay in minutes (±N) to add for natural posting",
						"format": "int64",
						"type": "integer"
					},
					"scheduled_at": {
						"description": "Schedule time (ISO 8601). Set to empty string to unschedule (make draft).",
						"type": "string"
					},
					"social_account_ids": {
						"description": "Social account IDs to publish to (replace all)",
						"items": {
							"type": "string"
						},
						"type": ["array", "null"]
					},
					"thread_draft": {
						"description": "Thread draft JSON (encoded with __openpost_thread__: prefix). Send a non-null value to set or replace the draft; send an empty string to clear it and revert to a single post. Send null (or omit) to leave the existing draft unchanged.",
						"type": "string"
					}
				},
				"type": "object"
			},
			"UpdatePostingScheduleInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpdatePostingScheduleInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"day_of_week": {
						"description": "Day of week (0=Sunday, 6=Saturday)",
						"format": "int64",
						"type": "integer"
					},
					"is_active": {
						"description": "Whether this slot is active",
						"type": "boolean"
					},
					"label": {
						"description": "Display label",
						"type": "string"
					},
					"utc_hour": {
						"description": "Hour in UTC (0-23)",
						"format": "int64",
						"type": "integer"
					},
					"utc_minute": {
						"description": "Minute in UTC (0-59)",
						"format": "int64",
						"type": "integer"
					}
				},
				"type": "object"
			},
			"UpdateSetInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpdateSetInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"is_default": {
						"description": "Set as default",
						"type": "boolean"
					},
					"name": {
						"description": "Set name",
						"type": "string"
					}
				},
				"type": "object"
			},
			"UpdateWorkspaceSettingsInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpdateWorkspaceSettingsInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"draft_gap_minutes": {
						"format": "int64",
						"type": "integer"
					},
					"media_cleanup_days": {
						"format": "int64",
						"type": "integer"
					},
					"random_delay_minutes": {
						"format": "int64",
						"type": "integer"
					},
					"slot_end_hour": {
						"format": "int64",
						"type": "integer"
					},
					"slot_interval_minutes": {
						"format": "int64",
						"type": "integer"
					},
					"slot_start_hour": {
						"format": "int64",
						"type": "integer"
					},
					"timezone": {
						"type": "string"
					},
					"week_start": {
						"format": "int64",
						"type": "integer"
					}
				},
				"type": "object"
			},
			"UpdateWorkspaceSettingsOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpdateWorkspaceSettingsOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"draft_gap_minutes": {
						"format": "int64",
						"type": "integer"
					},
					"media_cleanup_days": {
						"format": "int64",
						"type": "integer"
					},
					"random_delay_minutes": {
						"format": "int64",
						"type": "integer"
					},
					"slot_end_hour": {
						"format": "int64",
						"type": "integer"
					},
					"slot_interval_minutes": {
						"format": "int64",
						"type": "integer"
					},
					"slot_start_hour": {
						"format": "int64",
						"type": "integer"
					},
					"timezone": {
						"type": "string"
					},
					"week_start": {
						"format": "int64",
						"type": "integer"
					}
				},
				"required": [
					"timezone",
					"week_start",
					"media_cleanup_days",
					"random_delay_minutes",
					"draft_gap_minutes",
					"slot_start_hour",
					"slot_end_hour",
					"slot_interval_minutes"
				],
				"type": "object"
			},
			"UpsertVariantsInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpsertVariantsInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"variants": {
						"description": "Variant overrides per social account",
						"items": {
							"$ref": "#/components/schemas/VariantInput"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["variants"],
				"type": "object"
			},
			"UpsertVariantsOutputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UpsertVariantsOutputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"variants": {
						"description": "Updated variants",
						"items": {
							"$ref": "#/components/schemas/VariantResponse"
						},
						"type": ["array", "null"]
					}
				},
				"required": ["variants"],
				"type": "object"
			},
			"UserProfile": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/UserProfile.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"created_at": {
						"description": "Account creation time",
						"format": "date-time",
						"type": "string"
					},
					"email": {
						"description": "User email address",
						"type": "string"
					},
					"id": {
						"description": "User ID",
						"type": "string"
					}
				},
				"required": ["id", "email", "created_at"],
				"type": "object"
			},
			"VariantInput": {
				"additionalProperties": false,
				"properties": {
					"content": {
						"description": "Custom content for this platform (empty = use parent content)",
						"type": "string"
					},
					"is_unsynced": {
						"description": "Whether this variant has diverged from parent",
						"type": "boolean"
					},
					"media_ids": {
						"description": "JSON array of media IDs override",
						"type": "string"
					},
					"social_account_id": {
						"description": "Social account ID",
						"type": "string"
					}
				},
				"required": ["social_account_id", "is_unsynced"],
				"type": "object"
			},
			"VariantResponse": {
				"additionalProperties": false,
				"properties": {
					"content": {
						"description": "Variant content (empty = use parent)",
						"type": "string"
					},
					"created_at": {
						"description": "Creation time",
						"type": "string"
					},
					"id": {
						"description": "Variant ID",
						"type": "string"
					},
					"is_unsynced": {
						"description": "Whether this variant has diverged from parent",
						"type": "boolean"
					},
					"media_ids": {
						"description": "JSON array of media IDs override",
						"type": "string"
					},
					"post_id": {
						"description": "Post ID",
						"type": "string"
					},
					"social_account_id": {
						"description": "Social account ID",
						"type": "string"
					},
					"updated_at": {
						"description": "Last update time",
						"type": "string"
					}
				},
				"required": [
					"id",
					"post_id",
					"social_account_id",
					"content",
					"media_ids",
					"is_unsynced",
					"created_at",
					"updated_at"
				],
				"type": "object"
			},
			"VerifyTOTPLoginInputBody": {
				"additionalProperties": false,
				"properties": {
					"$schema": {
						"description": "A URL to the JSON Schema for this object.",
						"examples": ["https://example.com/schemas/VerifyTOTPLoginInputBody.json"],
						"format": "uri",
						"readOnly": true,
						"type": "string"
					},
					"code": {
						"description": "Six digit authenticator code",
						"maxLength": 6,
						"minLength": 6,
						"type": "string"
					},
					"mfa_token": {
						"description": "Pending MFA challenge token",
						"type": "string"
					}
				},
				"required": ["mfa_token", "code"],
				"type": "object"
			},
			"WorkspaceResp": {
				"additionalProperties": false,
				"properties": {
					"created_at": {
						"description": "Creation time (ISO 8601)",
						"type": "string"
					},
					"id": {
						"description": "Workspace ID",
						"type": "string"
					},
					"name": {
						"description": "Workspace name",
						"type": "string"
					}
				},
				"required": ["id", "name", "created_at"],
				"type": "object"
			}
		}
	},
	"info": {
		"title": "OpenPost API",
		"version": "1.0.0"
	},
	"openapi": "3.1.0",
	"paths": {
		"/accounts": {
			"get": {
				"operationId": "list-accounts",
				"parameters": [
					{
						"description": "Filter by workspace ID",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"required": true,
						"schema": {
							"description": "Filter by workspace ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"items": {
										"$ref": "#/components/schemas/AccountResponse"
									},
									"type": ["array", "null"]
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "List connected social accounts for a workspace",
				"tags": ["Accounts"]
			}
		},
		"/accounts/bluesky/login": {
			"post": {
				"operationId": "bluesky-login",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/BlueskyLoginInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"204": {
						"description": "No Content"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Connect Bluesky account using app password",
				"tags": ["Accounts"]
			}
		},
		"/accounts/mastodon/exchange": {
			"post": {
				"operationId": "exchange-mastodon-code",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/ExchangeCodeInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"204": {
						"description": "No Content"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Exchange Mastodon OOB authorization code",
				"tags": ["Accounts"]
			}
		},
		"/accounts/mastodon/servers": {
			"get": {
				"operationId": "list-mastodon-servers",
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"items": {
										"$ref": "#/components/schemas/MastodonServerInfo"
									},
									"type": ["array", "null"]
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "List configured Mastodon servers",
				"tags": ["Accounts"]
			}
		},
		"/accounts/{account_id}": {
			"delete": {
				"operationId": "disconnect-account",
				"parameters": [
					{
						"in": "path",
						"name": "account_id",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"204": {
						"description": "No Content"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Disconnect a social account",
				"tags": ["Accounts"]
			},
			"patch": {
				"operationId": "update-account",
				"parameters": [
					{
						"in": "path",
						"name": "account_id",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/UpdateAccountInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/AccountResponse"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"409": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Conflict"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Update a social account",
				"tags": ["Accounts"]
			}
		},
		"/accounts/{platform}/auth-url": {
			"get": {
				"operationId": "get-auth-url",
				"parameters": [
					{
						"description": "Social platform (x, mastodon, bluesky, linkedin, threads)",
						"in": "path",
						"name": "platform",
						"required": true,
						"schema": {
							"description": "Social platform (x, mastodon, bluesky, linkedin, threads)",
							"type": "string"
						}
					},
					{
						"description": "Workspace ID to link account to",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"required": true,
						"schema": {
							"description": "Workspace ID to link account to",
							"type": "string"
						}
					},
					{
						"description": "Mastodon server name from config (required for mastodon)",
						"explode": false,
						"in": "query",
						"name": "server_name",
						"schema": {
							"description": "Mastodon server name from config (required for mastodon)",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/GetAuthURLOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Get OAuth authorization URL for a platform",
				"tags": ["Accounts"]
			}
		},
		"/api-tokens": {
			"get": {
				"operationId": "list-api-tokens",
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"items": {
										"$ref": "#/components/schemas/APITokenResponse"
									},
									"type": ["array", "null"]
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "List API tokens",
				"tags": ["Auth"]
			},
			"post": {
				"operationId": "create-api-token",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CreateAPITokenInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"201": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CreateAPITokenOutputBody"
								}
							}
						},
						"description": "Created"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Create an API token",
				"tags": ["Auth"]
			}
		},
		"/api-tokens/{id}": {
			"delete": {
				"operationId": "revoke-api-token",
				"parameters": [
					{
						"description": "API token ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "API token ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/RevokeAPITokenOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Revoke an API token",
				"tags": ["Auth"]
			}
		},
		"/auth/login": {
			"post": {
				"operationId": "login",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/LoginInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/AuthOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"401": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unauthorized"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Login with email and password",
				"tags": ["Auth"]
			}
		},
		"/auth/login/passkey/options": {
			"post": {
				"operationId": "begin-login-passkey",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/BeginPasskeyLoginInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PasskeyCeremonyOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"401": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unauthorized"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Begin MFA login with a passkey",
				"tags": ["Auth"]
			}
		},
		"/auth/login/passkey/verify": {
			"post": {
				"operationId": "finish-login-passkey",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/FinishPasskeyLoginInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/AuthOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"401": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unauthorized"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Complete MFA login with a passkey",
				"tags": ["Auth"]
			}
		},
		"/auth/login/totp": {
			"post": {
				"operationId": "verify-login-totp",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/VerifyTOTPLoginInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/AuthOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"401": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unauthorized"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Complete MFA login with a TOTP code",
				"tags": ["Auth"]
			}
		},
		"/auth/me": {
			"get": {
				"operationId": "get-me",
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/UserProfile"
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "Get current authenticated user",
				"tags": ["Auth"]
			}
		},
		"/auth/register": {
			"post": {
				"operationId": "register",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/RegisterInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/AuthOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"409": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Conflict"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Register a new user",
				"tags": ["Auth"]
			}
		},
		"/auth/security": {
			"get": {
				"operationId": "get-security-status",
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SecurityStatusOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "Get account security settings",
				"tags": ["Auth"]
			}
		},
		"/auth/security/passkeys/begin": {
			"post": {
				"operationId": "begin-passkey-registration",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/BeginPasskeyRegistrationInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PasskeyCeremonyOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"401": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unauthorized"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Begin passkey registration for the current user",
				"tags": ["Auth"]
			}
		},
		"/auth/security/passkeys/finish": {
			"post": {
				"operationId": "finish-passkey-registration",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/FinishPasskeyRegistrationInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SecurityStatusOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"401": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unauthorized"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Finish passkey registration for the current user",
				"tags": ["Auth"]
			}
		},
		"/auth/security/passkeys/{passkey_id}/remove": {
			"post": {
				"operationId": "remove-passkey",
				"parameters": [
					{
						"description": "Passkey ID",
						"in": "path",
						"name": "passkey_id",
						"required": true,
						"schema": {
							"description": "Passkey ID",
							"type": "string"
						}
					}
				],
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/RemovePasskeyInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SecurityStatusOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"401": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unauthorized"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Remove a passkey from the current user",
				"tags": ["Auth"]
			}
		},
		"/auth/security/totp/confirm": {
			"post": {
				"operationId": "confirm-totp-setup",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/ConfirmTOTPSetupInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SecurityStatusOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"401": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unauthorized"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Confirm TOTP enrollment with a verification code",
				"tags": ["Auth"]
			}
		},
		"/auth/security/totp/disable": {
			"post": {
				"operationId": "disable-totp",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/DisableTOTPInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SecurityStatusOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"401": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unauthorized"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Disable TOTP for the current user",
				"tags": ["Auth"]
			}
		},
		"/auth/security/totp/setup": {
			"post": {
				"operationId": "begin-totp-setup",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/SetupTOTPInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SetupTOTPOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"401": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unauthorized"
					},
					"409": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Conflict"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Start TOTP enrollment for the current user",
				"tags": ["Auth"]
			}
		},
		"/cli/auth/approve": {
			"post": {
				"operationId": "approve-cli-auth",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/ApproveCLIAuthInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CLIAuthDecisionOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"409": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Conflict"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Approve CLI device authorization",
				"tags": ["Auth"]
			}
		},
		"/cli/auth/deny": {
			"post": {
				"operationId": "deny-cli-auth",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/DenyCLIAuthInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CLIAuthDecisionOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"409": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Conflict"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Deny CLI device authorization",
				"tags": ["Auth"]
			}
		},
		"/cli/auth/poll": {
			"post": {
				"operationId": "poll-cli-auth",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/PollCLIAuthInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PollCLIAuthOutputBody"
								}
							}
						},
						"description": "OK",
						"headers": {
							"Retry-After,omitempty": {
								"schema": {
									"format": "int64",
									"type": "integer"
								}
							}
						}
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"429": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Too Many Requests"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Poll CLI device authorization",
				"tags": ["Auth"]
			}
		},
		"/cli/auth/session": {
			"get": {
				"operationId": "get-cli-auth-session",
				"parameters": [
					{
						"explode": false,
						"in": "query",
						"name": "user_code",
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/GetCLIAuthSessionOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Get pending CLI authorization details",
				"tags": ["Auth"]
			}
		},
		"/cli/auth/start": {
			"post": {
				"operationId": "start-cli-auth",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/StartCLIAuthInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/StartCLIAuthOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"429": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Too Many Requests"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Start CLI device authorization",
				"tags": ["Auth"]
			}
		},
		"/health": {
			"get": {
				"operationId": "health-check",
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Health-checkResponse"
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "Health check",
				"tags": ["System"]
			}
		},
		"/jobs": {
			"get": {
				"operationId": "list-jobs",
				"parameters": [
					{
						"description": "Number of jobs to return (default 50, max 200)",
						"explode": false,
						"in": "query",
						"name": "limit",
						"schema": {
							"description": "Number of jobs to return (default 50, max 200)",
							"format": "int64",
							"type": "integer"
						}
					},
					{
						"description": "Filter by status (pending, processing, completed, failed)",
						"explode": false,
						"in": "query",
						"name": "status",
						"schema": {
							"description": "Filter by status (pending, processing, completed, failed)",
							"type": "string"
						}
					},
					{
						"description": "Filter by workspace ID",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"schema": {
							"description": "Filter by workspace ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"items": {
										"$ref": "#/components/schemas/JobResponse"
									},
									"type": ["array", "null"]
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "List recent background jobs",
				"tags": ["Jobs"]
			}
		},
		"/media": {
			"get": {
				"operationId": "list-media",
				"parameters": [
					{
						"description": "Filter by workspace ID",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"required": true,
						"schema": {
							"description": "Filter by workspace ID",
							"type": "string"
						}
					},
					{
						"description": "Filter: all, used, unused, favorites",
						"explode": false,
						"in": "query",
						"name": "filter",
						"schema": {
							"description": "Filter: all, used, unused, favorites",
							"type": "string"
						}
					},
					{
						"description": "Sort: newest, oldest, size",
						"explode": false,
						"in": "query",
						"name": "sort",
						"schema": {
							"description": "Sort: newest, oldest, size",
							"type": "string"
						}
					},
					{
						"description": "Limit (default 50, max 200)",
						"explode": false,
						"in": "query",
						"name": "limit",
						"schema": {
							"description": "Limit (default 50, max 200)",
							"format": "int64",
							"type": "integer"
						}
					},
					{
						"description": "Offset for pagination",
						"explode": false,
						"in": "query",
						"name": "offset",
						"schema": {
							"description": "Offset for pagination",
							"format": "int64",
							"type": "integer"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ListMediaOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "List media attachments for a workspace",
				"tags": ["Media"]
			}
		},
		"/media/batch-delete": {
			"post": {
				"operationId": "batch-delete-media",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/BatchDeleteMediaInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/BatchDeleteMediaOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Delete multiple media attachments at once",
				"tags": ["Media"]
			}
		},
		"/media/{id}": {
			"delete": {
				"operationId": "delete-media",
				"parameters": [
					{
						"description": "Media ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Media ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/DeleteMediaOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Delete a media attachment (only if not used in any post)",
				"tags": ["Media"]
			},
			"patch": {
				"operationId": "update-media",
				"parameters": [
					{
						"description": "Media ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Media ID",
							"type": "string"
						}
					}
				],
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/UpdateMediaInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/UpdateMediaOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Update media metadata (alt text)",
				"tags": ["Media"]
			}
		},
		"/media/{id}/favorite": {
			"patch": {
				"operationId": "update-media-favorite",
				"parameters": [
					{
						"description": "Media ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Media ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/UpdateMediaFavoriteOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Toggle favorite status of a media attachment",
				"tags": ["Media"]
			}
		},
		"/media/{id}/usage": {
			"get": {
				"operationId": "get-media-usage",
				"parameters": [
					{
						"description": "Media ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Media ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/GetMediaUsageOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Get posts that use a media attachment",
				"tags": ["Media"]
			}
		},
		"/posting-schedules": {
			"get": {
				"operationId": "list-posting-schedules",
				"parameters": [
					{
						"description": "Filter by workspace ID",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"schema": {
							"description": "Filter by workspace ID",
							"type": "string"
						}
					},
					{
						"description": "Filter by set ID (optional)",
						"explode": false,
						"in": "query",
						"name": "set_id",
						"schema": {
							"description": "Filter by set ID (optional)",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"items": {
										"$ref": "#/components/schemas/PostingScheduleResponse"
									},
									"type": ["array", "null"]
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "List posting schedules for a workspace",
				"tags": ["Posting Schedules"]
			},
			"post": {
				"operationId": "create-posting-schedule",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CreatePostingScheduleInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PostingScheduleResponse"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Create a new posting schedule slot",
				"tags": ["Posting Schedules"]
			}
		},
		"/posting-schedules/next-slot": {
			"get": {
				"operationId": "get-next-available-slot",
				"parameters": [
					{
						"description": "Workspace ID",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"schema": {
							"description": "Workspace ID",
							"type": "string"
						}
					},
					{
						"description": "Optional set ID",
						"explode": false,
						"in": "query",
						"name": "set_id",
						"schema": {
							"description": "Optional set ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/NextAvailableSlotOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Get the next available posting time slot",
				"tags": ["Posting Schedules"]
			}
		},
		"/posting-schedules/suggest": {
			"post": {
				"operationId": "suggest-posting-schedule",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/SuggestScheduleInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SuggestScheduleOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Generate a suggested posting schedule",
				"tags": ["Posting Schedules"]
			}
		},
		"/posting-schedules/{id}": {
			"delete": {
				"operationId": "delete-posting-schedule",
				"parameters": [
					{
						"description": "Schedule ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Schedule ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/DeletePostingScheduleOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Delete a posting schedule slot",
				"tags": ["Posting Schedules"]
			},
			"patch": {
				"operationId": "update-posting-schedule",
				"parameters": [
					{
						"description": "Schedule ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Schedule ID",
							"type": "string"
						}
					}
				],
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/UpdatePostingScheduleInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PostingScheduleResponse"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Update a posting schedule slot",
				"tags": ["Posting Schedules"]
			}
		},
		"/posts": {
			"get": {
				"operationId": "list-posts",
				"parameters": [
					{
						"description": "Filter by workspace ID",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"schema": {
							"description": "Filter by workspace ID",
							"type": "string"
						}
					},
					{
						"description": "Filter by date (YYYY-MM-DD)",
						"explode": false,
						"in": "query",
						"name": "date",
						"schema": {
							"description": "Filter by date (YYYY-MM-DD)",
							"type": "string"
						}
					},
					{
						"description": "Filter by status (draft, scheduled, published, failed)",
						"explode": false,
						"in": "query",
						"name": "status",
						"schema": {
							"description": "Filter by status (draft, scheduled, published, failed)",
							"type": "string"
						}
					},
					{
						"description": "Limit number of results (default 50, max 200)",
						"explode": false,
						"in": "query",
						"name": "limit",
						"schema": {
							"description": "Limit number of results (default 50, max 200)",
							"format": "int64",
							"type": "integer"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"items": {
										"$ref": "#/components/schemas/PostResponse"
									},
									"type": ["array", "null"]
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "List posts for a workspace",
				"tags": ["Posts"]
			},
			"post": {
				"operationId": "create-post",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CreatePostInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PostResponse"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Create a new post",
				"tags": ["Posts"]
			}
		},
		"/posts/schedule-overview": {
			"get": {
				"operationId": "get-schedule-overview",
				"parameters": [
					{
						"description": "Filter by workspace ID",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"schema": {
							"description": "Filter by workspace ID",
							"type": "string"
						}
					},
					{
						"description": "Filter by platform",
						"explode": false,
						"in": "query",
						"name": "platform",
						"schema": {
							"description": "Filter by platform",
							"type": "string"
						}
					},
					{
						"description": "Month in YYYY-MM format (defaults to current month)",
						"explode": false,
						"in": "query",
						"name": "month",
						"schema": {
							"description": "Month in YYYY-MM format (defaults to current month)",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ScheduleOverviewOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Get monthly schedule overview",
				"tags": ["Posts"]
			}
		},
		"/posts/thread": {
			"post": {
				"operationId": "create-thread",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CreateThreadInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CreateThreadOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Create a thread of posts",
				"tags": ["Posts"]
			}
		},
		"/posts/{id}": {
			"delete": {
				"operationId": "delete-post",
				"parameters": [
					{
						"description": "Post ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Post ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/DeletePostOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Delete a post",
				"tags": ["Posts"]
			},
			"get": {
				"operationId": "get-post",
				"parameters": [
					{
						"description": "Post ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Post ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PostDetailResponse"
								}
							}
						},
						"description": "OK"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Get a single post",
				"tags": ["Posts"]
			},
			"patch": {
				"operationId": "update-post",
				"parameters": [
					{
						"description": "Post ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Post ID",
							"type": "string"
						}
					}
				],
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/UpdatePostInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PostDetailResponse"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Update a post",
				"tags": ["Posts"]
			}
		},
		"/posts/{id}/variants": {
			"delete": {
				"operationId": "delete-post-variants",
				"parameters": [
					{
						"description": "Post ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Post ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/DeleteVariantsOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Delete all variants for a post (reset to unified content)",
				"tags": ["Posts"]
			},
			"get": {
				"operationId": "get-post-variants",
				"parameters": [
					{
						"description": "Post ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Post ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/GetVariantsOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Get per-platform content variants for a post",
				"tags": ["Posts"]
			},
			"put": {
				"operationId": "upsert-post-variants",
				"parameters": [
					{
						"description": "Post ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Post ID",
							"type": "string"
						}
					}
				],
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/UpsertVariantsInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/UpsertVariantsOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Upsert per-platform content variants for a post",
				"tags": ["Posts"]
			}
		},
		"/prompts": {
			"get": {
				"operationId": "list-prompts",
				"parameters": [
					{
						"description": "Filter by workspace ID",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"schema": {
							"description": "Filter by workspace ID",
							"type": "string"
						}
					},
					{
						"description": "Filter by category",
						"explode": false,
						"in": "query",
						"name": "category",
						"schema": {
							"description": "Filter by category",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"items": {
										"$ref": "#/components/schemas/PromptResponse"
									},
									"type": ["array", "null"]
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "List writing prompts",
				"tags": ["Prompts"]
			},
			"post": {
				"operationId": "create-prompt",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CreatePromptInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PromptResponse"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Create a custom writing prompt",
				"tags": ["Prompts"]
			}
		},
		"/prompts/categories": {
			"get": {
				"operationId": "get-prompt-categories",
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/GetPromptCategoriesOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "Get available prompt categories",
				"tags": ["Prompts"]
			}
		},
		"/prompts/random": {
			"get": {
				"operationId": "get-random-prompt",
				"parameters": [
					{
						"description": "Filter by workspace ID",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"schema": {
							"description": "Filter by workspace ID",
							"type": "string"
						}
					},
					{
						"description": "Filter by category",
						"explode": false,
						"in": "query",
						"name": "category",
						"schema": {
							"description": "Filter by category",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PromptResponse"
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "Get a random writing prompt",
				"tags": ["Prompts"]
			}
		},
		"/prompts/{id}": {
			"delete": {
				"operationId": "delete-prompt",
				"parameters": [
					{
						"description": "Prompt ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Prompt ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/DeletePromptOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Delete a custom prompt",
				"tags": ["Prompts"]
			}
		},
		"/sets": {
			"get": {
				"operationId": "list-sets",
				"parameters": [
					{
						"description": "Filter by workspace ID",
						"explode": false,
						"in": "query",
						"name": "workspace_id",
						"schema": {
							"description": "Filter by workspace ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"items": {
										"$ref": "#/components/schemas/SetResponse"
									},
									"type": ["array", "null"]
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "List social media sets for a workspace",
				"tags": ["Sets"]
			},
			"post": {
				"operationId": "create-set",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CreateSetInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SetResponse"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Create a social media set",
				"tags": ["Sets"]
			}
		},
		"/sets/{id}": {
			"delete": {
				"operationId": "delete-set",
				"parameters": [
					{
						"description": "Set ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Set ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/DeleteSetOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Delete a social media set",
				"tags": ["Sets"]
			},
			"get": {
				"operationId": "get-set",
				"parameters": [
					{
						"description": "Set ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Set ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SetResponse"
								}
							}
						},
						"description": "OK"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Get a single social media set",
				"tags": ["Sets"]
			},
			"patch": {
				"operationId": "update-set",
				"parameters": [
					{
						"description": "Set ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Set ID",
							"type": "string"
						}
					}
				],
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/UpdateSetInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SetResponse"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Update a social media set",
				"tags": ["Sets"]
			}
		},
		"/sets/{id}/accounts": {
			"post": {
				"operationId": "add-set-accounts",
				"parameters": [
					{
						"description": "Set ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Set ID",
							"type": "string"
						}
					}
				],
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/AddSetAccountsInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SetResponse"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Add accounts to a social media set",
				"tags": ["Sets"]
			}
		},
		"/sets/{id}/accounts/{account_id}": {
			"delete": {
				"operationId": "remove-set-account",
				"parameters": [
					{
						"description": "Set ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Set ID",
							"type": "string"
						}
					},
					{
						"description": "Account ID to remove",
						"in": "path",
						"name": "account_id",
						"required": true,
						"schema": {
							"description": "Account ID to remove",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SetResponse"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Remove an account from a social media set",
				"tags": ["Sets"]
			}
		},
		"/workspaces": {
			"get": {
				"operationId": "list-workspaces",
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"items": {
										"$ref": "#/components/schemas/Item"
									},
									"type": ["array", "null"]
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "List workspaces for the current user",
				"tags": ["Workspaces"]
			},
			"post": {
				"operationId": "create-workspace",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CreateWorkspaceInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CreateWorkspaceOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"default": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Error"
					}
				},
				"summary": "Create a new workspace",
				"tags": ["Workspaces"]
			}
		},
		"/workspaces/{id}/settings": {
			"get": {
				"operationId": "get-workspace-settings",
				"parameters": [
					{
						"description": "Workspace ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Workspace ID",
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/GetWorkspaceSettingsOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Get workspace settings",
				"tags": ["Workspaces"]
			},
			"patch": {
				"operationId": "update-workspace-settings",
				"parameters": [
					{
						"description": "Workspace ID",
						"in": "path",
						"name": "id",
						"required": true,
						"schema": {
							"description": "Workspace ID",
							"type": "string"
						}
					}
				],
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/UpdateWorkspaceSettingsInputBody"
							}
						}
					},
					"required": true
				},
				"responses": {
					"200": {
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/UpdateWorkspaceSettingsOutputBody"
								}
							}
						},
						"description": "OK"
					},
					"400": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Bad Request"
					},
					"403": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Forbidden"
					},
					"404": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Not Found"
					},
					"422": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Unprocessable Entity"
					},
					"500": {
						"content": {
							"application/problem+json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorModel"
								}
							}
						},
						"description": "Internal Server Error"
					}
				},
				"summary": "Update workspace settings",
				"tags": ["Workspaces"]
			}
		}
	}
}
