Skip to content

Instantly share code, notes, and snippets.

@ferrata
Created May 28, 2025 20:12
Show Gist options
  • Select an option

  • Save ferrata/d917c96f3f2dfb416f20858b10e6d57d to your computer and use it in GitHub Desktop.

Select an option

Save ferrata/d917c96f3f2dfb416f20858b10e6d57d to your computer and use it in GitHub Desktop.
OpenAPI spec for PR #1411
"openapi: 3.0.0\npaths:\n /v1/sites/{siteId}/locales:\n post:\n operationId: SiteLocaleController_create\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: siteId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreateSiteLocaleV1RequestBodyDto'\n responses:\n '201':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreateSiteLocaleV1ResponseBodyDto'\n tags:\n - Locale\n get:\n operationId: SiteLocaleController_getByLocale\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: code\n required: true\n in: query\n description: Locale of the site locale.\n example: es-ES\n schema:\n type: string\n - name: siteId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n responses:\n '200':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/GetByLocaleSiteLocaleV1ResponseBodyDto'\n tags:\n - Locale\n /v1/locales/{id}:\n delete:\n operationId: SiteLocaleController_delete\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: id\n required: true\n in: path\n schema:\n format: uuid\n type: string\n responses:\n '204':\n description: ''\n tags:\n - Locale\n patch:\n operationId: SiteLocaleController_update\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: id\n required: true\n in: path\n schema:\n format: uuid\n type: string\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/UpdateSiteLocaleV1RequestBodyDto'\n responses:\n '200':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/UpdateSiteLocaleV1ResponseBodyDto'\n tags:\n - Locale\n get:\n operationId: SiteLocaleController_get\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: id\n required: true\n in: path\n schema:\n format: uuid\n type: string\n responses:\n '200':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/ReadSiteLocaleV1ResponseBodyDto'\n tags:\n - Locale\n /v1/workspaces/{workspaceId}/sites:\n post:\n operationId: SiteController_create\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: workspaceId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreateSiteV1RequestBodyDto'\n responses:\n '201':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreateSiteV1ResponseBodyDto'\n tags:\n - Site\n get:\n operationId: SiteController_list\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: workspaceId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: limit\n required: false\n in: query\n schema:\n minimum: 0\n maximum: 100\n default: 20\n type: number\n - name: after\n required: false\n in: query\n schema:\n format: uuid\n type: string\n responses:\n '201':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/ListSiteV1ResponseBodyDto'\n tags:\n - Site\n /v1/sites/{id}:\n get:\n operationId: SiteController_getOne\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: id\n required: true\n in: path\n schema:\n format: uuid\n type: string\n responses:\n '201':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/ReadSiteV1ResponseBodyDto'\n tags:\n - Site\n patch:\n operationId: SiteController_updateOne\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: id\n required: true\n in: path\n schema:\n format: uuid\n type: string\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/UpdateSiteV1RequestBodyDto'\n responses:\n '201':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/UpdateSiteV1ResponseBodyDto'\n tags:\n - Site\n delete:\n operationId: SiteController_delete\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: id\n required: true\n in: path\n schema:\n format: uuid\n type: string\n responses:\n '204':\n description: ''\n tags:\n - Site\n /v1/auth/user-info:\n get:\n operationId: AuthController_getUserInfo\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n responses:\n '200':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/GetUserInfoV1ResponseBodyDto'\n tags:\n - Authentication\n /v1/workspaces:\n post:\n operationId: WorkspaceController_create\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreateWorkspaceV1RequestBodyDto'\n responses:\n '201':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreateWorkspaceV1ResponseBodyDto'\n tags:\n - Workspace\n get:\n operationId: WorkspaceController_list\n parameters:\n - name: limit\n required: false\n in: query\n schema:\n minimum: 0\n maximum: 100\n default: 20\n type: number\n - name: after\n required: false\n in: query\n schema:\n format: uuid\n type: string\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n responses:\n '201':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/ListWorkspaceV1ResponseBodyDto'\n tags:\n - Workspace\n /v1/workspaces/{id}:\n patch:\n operationId: WorkspaceController_updateOne\n parameters:\n - name: id\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/UpdateWorkspaceV1RequestBodyDto'\n responses:\n '201':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/UpdateWorkspaceV1ResponseBodyDto'\n tags:\n - Workspace\n delete:\n operationId: WorkspaceController_delete\n parameters:\n - name: id\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n responses:\n '204':\n description: ''\n tags:\n - Workspace\n /v1/workspaces/{workspaceId}/members/{userId}:\n post:\n operationId: WorkspaceMemberController_create\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: workspaceId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: userId\n required: true\n in: path\n description: The ID of the user\n example: d2ccb4e7-1364-496d-a131-bd996269ab2c\n schema:\n format: uuid\n type: string\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreateWorkspaceMemberV1RequestBodyDto'\n responses:\n '204':\n description: ''\n tags:\n - Workspace Member\n delete:\n operationId: WorkspaceMemberController_delete\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: workspaceId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: userId\n required: true\n in: path\n description: The ID of the user\n example: d2ccb4e7-1364-496d-a131-bd996269ab2c\n schema:\n format: uuid\n type: string\n responses:\n '204':\n description: ''\n tags:\n - Workspace Member\n patch:\n operationId: WorkspaceMemberController_update\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: workspaceId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: userId\n required: true\n in: path\n description: The ID of the user\n example: d2ccb4e7-1364-496d-a131-bd996269ab2c\n schema:\n format: uuid\n type: string\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/UpdateWorkspaceMemberV1RequestBodyDto'\n responses:\n '204':\n description: ''\n tags:\n - Workspace Member\n get:\n operationId: WorkspaceMemberController_getUserRole\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: workspaceId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: userId\n required: true\n in: path\n description: The ID of the user\n example: d2ccb4e7-1364-496d-a131-bd996269ab2c\n schema:\n format: uuid\n type: string\n responses:\n '200':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/GetWorkspaceMemberV1ResponseBodyDto'\n tags:\n - Workspace Member\n /v1/workspaces/{workspaceId}/members:\n get:\n operationId: WorkspaceMemberController_getMembers\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: workspaceId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: limit\n required: false\n in: query\n schema:\n minimum: 0\n maximum: 100\n default: 20\n type: number\n - name: after\n required: false\n in: query\n schema:\n format: uuid\n type: string\n responses:\n '200':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/ListWorkspaceMemberV1ResponseBodyDto'\n tags:\n - Workspace Member\n /v1/sites/{siteId}/pages:\n post:\n operationId: PageController_create\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: siteId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreatePageV1RequestBodyDto'\n responses:\n '201':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreatePageV1ResponseBodyDto'\n tags:\n - Page\n /v1/sites/{siteId}/pages/{pageId}:\n patch:\n operationId: PageController_update\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: siteId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: pageId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/UpdatePageV1RequestBodyDto'\n responses:\n '200':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/UpdatePageV1ResponseBodyDto'\n tags:\n - Page\n get:\n operationId: PageController_getOne\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: siteId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: pageId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n responses:\n '200':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/GetPageV1ResponseBodyDto'\n tags:\n - Page\n delete:\n operationId: PageController_delete\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: siteId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: pageId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n responses:\n '204':\n description: ''\n tags:\n - Page\n /v1/workspaces/{workspaceId}/webhooks:\n post:\n operationId: WebhookController_create\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: workspaceId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n requestBody:\n required: true\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreateWebhookV1RequestBodyDto'\n responses:\n '201':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/CreateWebhookV1ResponseBodyDto'\n tags:\n - Webhook Management\n get:\n operationId: WebhookController_list\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: workspaceId\n required: true\n in: path\n schema:\n format: uuid\n type: string\n - name: limit\n required: false\n in: query\n schema:\n minimum: 0\n maximum: 100\n default: 20\n type: number\n - name: after\n required: false\n in: query\n schema:\n format: uuid\n type: string\n responses:\n '200':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/ListWebhookV1ResponseBodyDto'\n tags:\n - Webhook Management\n /v1/webhooks/{id}:\n get:\n operationId: WebhookController_get\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: id\n required: true\n in: path\n schema:\n format: uuid\n type: string\n responses:\n '200':\n description: ''\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/GetWebhookV1ResponseBodyDto'\n tags:\n - Webhook Management\n delete:\n operationId: WebhookController_delete\n parameters:\n - name: Authorization\n in: header\n description: User bearer token\n schema:\n type: string\n - name: x-api-key\n in: header\n description: Franchise key\n schema:\n type: string\n format: uuid\n - name: id\n required: true\n in: path\n schema:\n format: uuid\n type: string\n responses:\n '204':\n description: ''\n tags:\n - Webhook Management\ninfo:\n title: Makeswift API\n description: Documentation for the Makeswift public REST API.\n version: '1.0'\n contact: {}\ntags: []\nservers: []\ncomponents:\n schemas:\n CreateSiteLocaleV1RequestBodyDto:\n type: object\n properties:\n locale:\n type: string\n description: Locale of the site locale.\n example: es-ES\n domain:\n type: string\n description: >-\n Domain of the site locale if using domain-based localization. Domain\n URL must include the protocol.\n example: https://es.example.com\n required:\n - locale\n CreateSiteLocaleV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n locale:\n type: string\n description: Locale of the site locale.\n example: es-ES\n domain:\n type: 'null'\n description: >-\n Domain of the site locale if using domain-based localization. Domain\n URL must include the protocol.\n example: https://es.example.com\n required:\n - id\n - locale\n - domain\n UpdateSiteLocaleV1RequestBodyDto:\n type: object\n properties:\n locale:\n type: string\n description: Locale of the site locale.\n example: es-ES\n domain:\n type: string\n description: >-\n Domain of the site locale if using domain-based localization. Domain\n URL must include the protocol.\n example: https://es.example.com\n UpdateSiteLocaleV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n locale:\n type: string\n description: Locale of the site locale.\n example: es-ES\n domain:\n type: 'null'\n description: >-\n Domain of the site locale if using domain-based localization. Domain\n URL must include the protocol.\n example: https://es.example.com\n required:\n - id\n - locale\n - domain\n ReadSiteLocaleV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n locale:\n type: string\n description: Locale of the site locale.\n example: es-ES\n domain:\n type: 'null'\n description: >-\n Domain of the site locale if using domain-based localization. Domain\n URL must include the protocol.\n example: https://es.example.com\n required:\n - id\n - locale\n - domain\n GetByLocaleSiteLocaleV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n locale:\n type: string\n description: Locale of the site locale.\n example: es-ES\n domain:\n type: 'null'\n description: >-\n Domain of the site locale if using domain-based localization. Domain\n URL must include the protocol.\n example: https://es.example.com\n required:\n - id\n - locale\n - domain\n CreateSiteV1RequestBodyDto:\n type: object\n properties:\n name:\n type: string\n description: The name of the site\n example: Acme Co.\n hostUrl:\n type: string\n format: uri\n description: The host URL of the site. The URL should consist of only the origin.\n example: https://example.com\n templateId:\n type: string\n format: uuid\n description: The ID of the template to import.\n templateSiteId:\n type: string\n format: uuid\n description: The site ID of the template to import. Use templateId instead.\n deprecated: true\n locale:\n type: string\n description: Locale of the site locale.\n example: es-ES\n required:\n - name\n CreateSiteV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n name:\n type: string\n description: The name of the site\n example: Acme Co.\n hostUrl:\n type: 'null'\n format: uri\n description: The host URL of the site. The URL should consist of only the origin.\n example: https://example.com\n apiKey:\n type: string\n format: uuid\n required:\n - id\n - name\n - hostUrl\n - apiKey\n ReadSiteV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n name:\n type: string\n description: The name of the site\n example: Acme Co.\n hostUrl:\n type: 'null'\n format: uri\n description: The host URL of the site. The URL should consist of only the origin.\n example: https://example.com\n apiKey:\n type: string\n format: uuid\n required:\n - id\n - name\n - hostUrl\n - apiKey\n UpdateSiteV1RequestBodyDto:\n type: object\n properties:\n name:\n type: string\n description: The name of the site\n example: Acme Co.\n hostUrl:\n type: string\n format: uri\n description: The host URL of the site. The URL should consist of only the origin.\n example: https://example.com\n UpdateSiteV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n name:\n type: string\n description: The name of the site\n example: Acme Co.\n hostUrl:\n type: 'null'\n format: uri\n description: The host URL of the site. The URL should consist of only the origin.\n example: https://example.com\n apiKey:\n type: string\n format: uuid\n required:\n - id\n - name\n - hostUrl\n - apiKey\n ListSiteV1ResponseBodyDto:\n type: object\n properties:\n data:\n type: array\n items:\n type: object\n properties:\n id:\n type: string\n format: uuid\n name:\n type: string\n description: The name of the site\n example: Acme Co.\n hostUrl:\n type: 'null'\n format: uri\n description: >-\n The host URL of the site. The URL should consist of only the\n origin.\n example: https://example.com\n apiKey:\n type: string\n format: uuid\n required:\n - id\n - name\n - hostUrl\n - apiKey\n hasMore:\n type: boolean\n required:\n - data\n - hasMore\n GetUserInfoV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n description: The ID of the user\n example: d2ccb4e7-1364-496d-a131-bd996269ab2c\n required:\n - id\n CreateWorkspaceV1RequestBodyDto:\n type: object\n properties:\n ownerId:\n type: string\n format: uuid\n example: a2914010-c1d7-4a03-9c22-cb91313a4f25\n name:\n type: string\n description: The name of the workspace\n example: Acme Workspace\n required:\n - name\n CreateWorkspaceV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n name:\n type: string\n description: The name of the workspace\n example: Acme Workspace\n required:\n - id\n - name\n ListWorkspaceV1ResponseBodyDto:\n type: object\n properties:\n data:\n type: array\n items:\n type: object\n properties:\n id:\n type: string\n format: uuid\n name:\n type: string\n description: The name of the workspace\n example: Acme Workspace\n required:\n - id\n - name\n hasMore:\n type: boolean\n required:\n - data\n - hasMore\n UpdateWorkspaceV1RequestBodyDto:\n type: object\n properties:\n name:\n type: string\n description: The name of the workspace\n example: Acme Workspace\n UpdateWorkspaceV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n name:\n type: string\n description: The name of the workspace\n example: Acme Workspace\n required:\n - id\n - name\n CreateWorkspaceMemberV1RequestBodyDto:\n type: object\n properties:\n role:\n type: string\n enum:\n - OWNER\n - ADMIN\n - PUBLISHER\n - EDITOR\n - GUEST\n required:\n - role\n UpdateWorkspaceMemberV1RequestBodyDto:\n type: object\n properties:\n role:\n type: string\n enum:\n - OWNER\n - ADMIN\n - PUBLISHER\n - EDITOR\n - GUEST\n required:\n - role\n GetWorkspaceMemberV1ResponseBodyDto:\n type: object\n properties:\n role:\n type: string\n enum:\n - OWNER\n - ADMIN\n - PUBLISHER\n - EDITOR\n - GUEST\n required:\n - role\n ListWorkspaceMemberV1ResponseBodyDto:\n type: object\n properties:\n data:\n type: array\n items:\n type: object\n properties:\n userId:\n type: string\n format: uuid\n description: The ID of the user\n example: d2ccb4e7-1364-496d-a131-bd996269ab2c\n role:\n type: string\n enum:\n - OWNER\n - ADMIN\n - PUBLISHER\n - EDITOR\n - GUEST\n required:\n - userId\n - role\n hasMore:\n type: boolean\n required:\n - data\n - hasMore\n CreatePageV1RequestBodyDto:\n type: object\n properties:\n pathname:\n type: 'null'\n description: The pathname of the page\n name:\n type: 'null'\n description: The name of the page\n required:\n - pathname\n - name\n CreatePageV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n pathname:\n type: string\n description: The pathname of the page\n example: about\n name:\n type: string\n description: The name of the page\n example: About\n seoCanonicalUrl:\n type: 'null'\n description: The canonical URL of the page\n seoIsIndexingBlocked:\n type: 'null'\n description: Whether the page is blocked from indexing\n seoSitemapPriority:\n type: 'null'\n description: The priority of the page in the sitemap\n seoSitemapFrequency:\n type: 'null'\n description: The frequency with which the page is updated in the sitemap\n metaTitle:\n type: 'null'\n description: The title of the page\n metaDescription:\n type: 'null'\n description: The description of the page\n metaKeywords:\n type: 'null'\n description: The keywords of the page\n isOnline:\n type: boolean\n description: Whether the page is online\n required:\n - id\n - pathname\n - name\n - seoCanonicalUrl\n - seoIsIndexingBlocked\n - seoSitemapPriority\n - seoSitemapFrequency\n - metaTitle\n - metaDescription\n - metaKeywords\n - isOnline\n UpdatePageV1RequestBodyDto:\n type: object\n properties:\n pathname:\n type: string\n description: The pathname of the page\n name:\n type: string\n description: The name of the page\n UpdatePageV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n pathname:\n type: string\n description: The pathname of the page\n example: about\n name:\n type: string\n description: The name of the page\n example: About\n seoCanonicalUrl:\n type: 'null'\n description: The canonical URL of the page\n seoIsIndexingBlocked:\n type: 'null'\n description: Whether the page is blocked from indexing\n seoSitemapPriority:\n type: 'null'\n description: The priority of the page in the sitemap\n seoSitemapFrequency:\n type: 'null'\n description: The frequency with which the page is updated in the sitemap\n metaTitle:\n type: 'null'\n description: The title of the page\n metaDescription:\n type: 'null'\n description: The description of the page\n metaKeywords:\n type: 'null'\n description: The keywords of the page\n isOnline:\n type: boolean\n description: Whether the page is online\n required:\n - id\n - pathname\n - name\n - seoCanonicalUrl\n - seoIsIndexingBlocked\n - seoSitemapPriority\n - seoSitemapFrequency\n - metaTitle\n - metaDescription\n - metaKeywords\n - isOnline\n GetPageV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n pathname:\n type: string\n description: The pathname of the page\n example: about\n name:\n type: string\n description: The name of the page\n example: About\n seoCanonicalUrl:\n type: 'null'\n description: The canonical URL of the page\n seoIsIndexingBlocked:\n type: 'null'\n description: Whether the page is blocked from indexing\n seoSitemapPriority:\n type: 'null'\n description: The priority of the page in the sitemap\n seoSitemapFrequency:\n type: 'null'\n description: The frequency with which the page is updated in the sitemap\n metaTitle:\n type: 'null'\n description: The title of the page\n metaDescription:\n type: 'null'\n description: The description of the page\n metaKeywords:\n type: 'null'\n description: The keywords of the page\n isOnline:\n type: boolean\n description: Whether the page is online\n required:\n - id\n - pathname\n - name\n - seoCanonicalUrl\n - seoIsIndexingBlocked\n - seoSitemapPriority\n - seoSitemapFrequency\n - metaTitle\n - metaDescription\n - metaKeywords\n - isOnline\n CreateWebhookV1RequestBodyDto:\n type: object\n properties:\n url:\n type: string\n format: uri\n example: https://example.com/webhook\n eventType:\n type: string\n enum:\n - page.created\n - page.deleted\n - page.updated\n - page.restored\n - site.published\n required:\n - url\n - eventType\n CreateWebhookV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n workspaceId:\n type: string\n format: uuid\n url:\n type: string\n format: uri\n example: https://example.com/webhook\n eventType:\n type: string\n enum:\n - page.created\n - page.deleted\n - page.updated\n - page.restored\n - site.published\n required:\n - id\n - workspaceId\n - url\n - eventType\n ListWebhookV1ResponseBodyDto:\n type: object\n properties:\n data:\n type: array\n items:\n type: object\n properties:\n id:\n type: string\n format: uuid\n workspaceId:\n type: string\n format: uuid\n url:\n type: string\n format: uri\n example: https://example.com/webhook\n eventType:\n type: string\n enum:\n - page.created\n - page.deleted\n - page.updated\n - page.restored\n - site.published\n required:\n - id\n - workspaceId\n - url\n - eventType\n hasMore:\n type: boolean\n required:\n - data\n - hasMore\n GetWebhookV1ResponseBodyDto:\n type: object\n properties:\n id:\n type: string\n format: uuid\n workspaceId:\n type: string\n format: uuid\n url:\n type: string\n format: uri\n example: https://example.com/webhook\n eventType:\n type: string\n enum:\n - page.created\n - page.deleted\n - page.updated\n - page.restored\n - site.published\n required:\n - id\n - workspaceId\n - url\n - eventType\nwebhooks:\n page.created:\n post:\n description: A page was created\n requestBody:\n content:\n application/json:\n schema:\n type: object\n properties:\n type:\n type: string\n enum:\n - page.created\n page:\n type: object\n properties:\n id:\n type: string\n format: uuid\n pathname:\n type: string\n description: The pathname of the page\n example: about\n name:\n type: string\n description: The name of the page\n example: About\n seoCanonicalUrl:\n type: 'null'\n description: The canonical URL of the page\n seoIsIndexingBlocked:\n type: 'null'\n description: Whether the page is blocked from indexing\n seoSitemapPriority:\n type: 'null'\n description: The priority of the page in the sitemap\n seoSitemapFrequency:\n type: 'null'\n description: >-\n The frequency with which the page is updated in the\n sitemap\n metaTitle:\n type: 'null'\n description: The title of the page\n metaDescription:\n type: 'null'\n description: The description of the page\n metaKeywords:\n type: 'null'\n description: The keywords of the page\n isOnline:\n type: boolean\n description: Whether the page is online\n required:\n - id\n - pathname\n - name\n - seoCanonicalUrl\n - seoIsIndexingBlocked\n - seoSitemapPriority\n - seoSitemapFrequency\n - metaTitle\n - metaDescription\n - metaKeywords\n - isOnline\n required:\n - type\n - page\n responses:\n '200':\n description: >-\n Return a 200 status to indicate that the data was received\n successfully\n page.updated:\n post:\n description: A page was updated\n requestBody:\n content:\n application/json:\n schema:\n type: object\n properties:\n type:\n type: string\n enum:\n - page.updated\n page:\n type: object\n properties:\n id:\n type: string\n format: uuid\n pathname:\n type: string\n description: The pathname of the page\n example: about\n name:\n type: string\n description: The name of the page\n example: About\n seoCanonicalUrl:\n type: 'null'\n description: The canonical URL of the page\n seoIsIndexingBlocked:\n type: 'null'\n description: Whether the page is blocked from indexing\n seoSitemapPriority:\n type: 'null'\n description: The priority of the page in the sitemap\n seoSitemapFrequency:\n type: 'null'\n description: >-\n The frequency with which the page is updated in the\n sitemap\n metaTitle:\n type: 'null'\n description: The title of the page\n metaDescription:\n type: 'null'\n description: The description of the page\n metaKeywords:\n type: 'null'\n description: The keywords of the page\n isOnline:\n type: boolean\n description: Whether the page is online\n required:\n - id\n - pathname\n - name\n - seoCanonicalUrl\n - seoIsIndexingBlocked\n - seoSitemapPriority\n - seoSitemapFrequency\n - metaTitle\n - metaDescription\n - metaKeywords\n - isOnline\n required:\n - type\n - page\n responses:\n '200':\n description: >-\n Return a 200 status to indicate that the data was received\n successfully\n page.deleted:\n post:\n description: A page was deleted\n requestBody:\n content:\n application/json:\n schema:\n type: object\n properties:\n type:\n type: string\n enum:\n - page.deleted\n page:\n type: object\n properties:\n id:\n type: string\n format: uuid\n pathname:\n type: string\n description: The pathname of the page\n example: about\n name:\n type: string\n description: The name of the page\n example: About\n seoCanonicalUrl:\n type: 'null'\n description: The canonical URL of the page\n seoIsIndexingBlocked:\n type: 'null'\n description: Whether the page is blocked from indexing\n seoSitemapPriority:\n type: 'null'\n description: The priority of the page in the sitemap\n seoSitemapFrequency:\n type: 'null'\n description: >-\n The frequency with which the page is updated in the\n sitemap\n metaTitle:\n type: 'null'\n description: The title of the page\n metaDescription:\n type: 'null'\n description: The description of the page\n metaKeywords:\n type: 'null'\n description: The keywords of the page\n isOnline:\n type: boolean\n description: Whether the page is online\n required:\n - id\n - pathname\n - name\n - seoCanonicalUrl\n - seoIsIndexingBlocked\n - seoSitemapPriority\n - seoSitemapFrequency\n - metaTitle\n - metaDescription\n - metaKeywords\n - isOnline\n required:\n - type\n - page\n responses:\n '200':\n description: >-\n Return a 200 status to indicate that the data was received\n successfully\n page.restored:\n post:\n description: A page was restored\n requestBody:\n content:\n application/json:\n schema:\n type: object\n properties:\n type:\n type: string\n enum:\n - page.restored\n page:\n type: object\n properties:\n id:\n type: string\n format: uuid\n pathname:\n type: string\n description: The pathname of the page\n example: about\n name:\n type: string\n description: The name of the page\n example: About\n seoCanonicalUrl:\n type: 'null'\n description: The canonical URL of the page\n seoIsIndexingBlocked:\n type: 'null'\n description: Whether the page is blocked from indexing\n seoSitemapPriority:\n type: 'null'\n description: The priority of the page in the sitemap\n seoSitemapFrequency:\n type: 'null'\n description: >-\n The frequency with which the page is updated in the\n sitemap\n metaTitle:\n type: 'null'\n description: The title of the page\n metaDescription:\n type: 'null'\n description: The description of the page\n metaKeywords:\n type: 'null'\n description: The keywords of the page\n isOnline:\n type: boolean\n description: Whether the page is online\n required:\n - id\n - pathname\n - name\n - seoCanonicalUrl\n - seoIsIndexingBlocked\n - seoSitemapPriority\n - seoSitemapFrequency\n - metaTitle\n - metaDescription\n - metaKeywords\n - isOnline\n required:\n - type\n - page\n responses:\n '200':\n description: >-\n Return a 200 status to indicate that the data was received\n successfully\n site.published:\n post:\n description: A site was published\n requestBody:\n content:\n application/json:\n schema:\n type: object\n properties:\n type:\n type: string\n enum:\n - site.published\n data:\n type: object\n properties:\n siteId:\n type: string\n format: uuid\n publish:\n type: object\n properties:\n from:\n type: 'null'\n format: uuid\n to:\n type: string\n format: uuid\n required:\n - from\n - to\n at:\n type: number\n required:\n - siteId\n - publish\n - at\n required:\n - type\n - data\n responses:\n '200':\n description: >-\n Return a 200 status to indicate that the data was received\n successfully\n"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment