Skip to main content

Perfection.Oversite.Delivery.Api (1.0)

Download OpenAPI specification:Download

Comments

Get all the comments related to a specific site

This API is used to get all comments for a specific site. If a page ID is provided, the API will only return comments for that page. The response includes author details, subcomments and component or selector details.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

query Parameters
pageId
string

The Page ID (optional)

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": [
    ]
}

Create a new comment related to a specific page

This API is used to create a new comment. This comment will be linked to a specific site and page. The request can optionally contain a node selector or component ID.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

query Parameters
pageId
string

The Page ID

Request Body schema: application/json
message
required
string
images
Array of strings or null
required
object (CommentNodeModel)
required
object (CommentPageModel)
required
object (CommentWindowModel)
userAgent
required
string

Responses

Request samples

Content type
application/json
{
  • "message": "string",
  • "images": [
    ],
  • "node": {
    },
  • "page": {
    },
  • "window": {
    },
  • "userAgent": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Create a new sub-comment related to a specific comment

This API is used to create a new sub-comment. This sub-comment will be linked to a specific site and comment.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

commentId
required
string <uuid>

The parrent comment ID

Request Body schema: application/json
message
required
string
images
Array of strings or null

Responses

Request samples

Content type
application/json
{
  • "message": "string",
  • "images": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Update an existing comment

This API is used to update an existing comment.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

commentId
required
string <uuid>

The comment ID

Request Body schema: application/json
id
required
string <uuid>
subscriptionId
required
string <uuid>
siteId
required
string <uuid>
status
required
integer <int32> (CommentStatusEnum)
Enum: 0 1
authorId
required
string <uuid>
required
object (IdentityModel)
message
required
string
images
Array of strings or null
mentions
Array of strings or null <uuid>
createdDateTime
required
string <date-time>
required
object (CommentNodeModel)
required
object (CommentPageModel)
required
object (CommentWindowModel)
Array of objects or null (SubCommentModel)
userAgent
required
string

Responses

Request samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
  • "siteId": "60189e9c-7d12-438c-b9ca-6998d9c364b1",
  • "status": 0,
  • "authorId": "ee6f7132-bd0a-4fcd-83b3-a8022377067b",
  • "author": {
    },
  • "message": "string",
  • "images": [
    ],
  • "mentions": [
    ],
  • "createdDateTime": "2019-08-24T14:15:22Z",
  • "node": {
    },
  • "page": {
    },
  • "window": {
    },
  • "thread": [
    ],
  • "userAgent": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Delete an existing comment

This API is used to delete an existing comment. Incrementally deletes any related sub-comments.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

commentId
required
string <uuid>

The comment ID

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Update an existing sub-comment

This API is used to update an existing sub-comment.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

commentId
required
string <uuid>

The parrent comment ID

subCommentId
required
string <uuid>

The sub-comment ID

Request Body schema: application/json
id
required
string <uuid>
commentId
required
string <uuid>
authorId
required
string <uuid>
required
object (IdentityModel)
message
required
string
images
Array of strings or null
mentions
Array of strings or null <uuid>
createdDateTime
required
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "commentId": "ee0469af-2fa1-4b7e-b5f1-8e711a95821b",
  • "authorId": "ee6f7132-bd0a-4fcd-83b3-a8022377067b",
  • "author": {
    },
  • "message": "string",
  • "images": [
    ],
  • "mentions": [
    ],
  • "createdDateTime": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Delete an existing sub-comment

This API is used to delete an existing sub-comment.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

commentId
required
string <uuid>

The parrent comment ID

subCommentId
required
string <uuid>

The sub-comment ID

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Components

Create or update a component instance

This API is used to create or update a component instance.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

Request Body schema: application/json

The component instance

groupId
required
string
componentKey
required
string
presetKey
string or null
id
string or null
pageId
string or null
required
Array of objects (CreateOrUpdateComponentInstanceElementModel)

Responses

Request samples

Content type
application/json
{
  • "groupId": "string",
  • "componentKey": "string",
  • "presetKey": "string",
  • "id": "string",
  • "pageId": "string",
  • "elements": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Delete an existing component instance

This API is used to delete an existing component instance.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

groupId
required
string

The group ID

query Parameters
pageId
string

The page ID

componentId
string

The component instance ID

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Mark an existing component instance for deletion

This API is used to mark an existing component instance for deletion.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

groupId
required
string

The group ID

query Parameters
pageId
string

The page ID

componentId
string

The component instance ID

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Configuration

Get site configuration

This API is used to get the full configuration of an existing site.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Get layout designer options

This API is used to get a model containing available designer options for a layout.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Identity

Get all roles assigned to the context user in the Subscription

This API is used to get all roles assigned to the context user within a Subscription.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": [
    ]
}

Get the profile of the context user in the Subscription

This API is used to get the profile of the logged in user

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Get all profiles in the Subscription

This API is used to get the profiles of the users in the Subscription

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": [
    ]
}

Generates new access and refresh tokens based on the current refresh token provided.

This API is used to get new access token by refresh token when current access token expires.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>
Request Body schema: application/json

The TokensRefreshRequest model

refreshToken
string or null

Responses

Request samples

Content type
application/json
{
  • "refreshToken": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Instances

Get all section and component instances used on a page

This API is used to get all sections and component instances that have been registered for a page.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

query Parameters
preview
boolean

Setting to retrieve preview vs published instances

pageId
string

The Page ID

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Publishing

Publish sections and/or components

This API is used to publish the given sections and/or components.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

Request Body schema: application/json

Object referencing sections and/or components that will be published

pageId
required
string
sections
required
Array of strings
required
Array of objects (PublishComponentModel)

Responses

Request samples

Content type
application/json
{
  • "pageId": "string",
  • "sections": [
    ],
  • "components": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Sections

Create or update a section

This API is used to create or update a section.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

Request Body schema: application/json

The section object

id
required
string
pageId
string or null
inner
required
string
outer
string or null

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "pageId": "string",
  • "inner": "string",
  • "outer": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Delete an existing section

This API is used to delete an existing section.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

componentId
required
string

The component instance ID

query Parameters
pageId
string

The page ID

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}

Mark an existing section for deletion

This API is used to mark an existing section for deletion.

Authorizations:
ApiKey
path Parameters
subscriptionId
required
string <uuid>

The Subscription ID

siteName
required
string

The name of the site

componentId
required
string

The component instance ID

query Parameters
pageId
string

The page ID

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "result": {
    }
}