Pryon Knowledge Domain API
The KnowledgeDomain API from Pryon — 17 operation(s) for knowledgedomain.
The KnowledgeDomain API from Pryon — 17 operation(s) for knowledgedomain.
openapi: 3.2.0
info:
title: Pryon Knowledge Domain API
version: '1.0'
description: 'Operations tagged KnowledgeDomain across 2 of this provider''s published API definitions: pryon-admin-openapi.json, pryon-domains-swagger-may2025-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.pryon.net
description: Pryon Cloud
- url: /
tags:
- name: KnowledgeDomain
paths:
/api/knowledge/v1/content-groups/{content_group_id}/subjects:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
get:
operationId: KnowledgeDomain_ListContentGroupSubjects
parameters:
- description: Content Group that subjects must be found in
in: path
name: content_group_id
required: true
schema:
type: string
- description: 'The default page size is 100, which is also the maximum page size. The REST query parameter is "page_size". If page size is default, this param can be omitted; otherwise it must be specified on every page request.
see https://cloud.google.com/apis/design/design_patterns#list_pagination.'
in: query
name: page_size
schema:
format: int32
type: integer
- description: 'If there are multiple pages, pages 2-N must specify this parameter using the value of next_page_token provided in the previous page''s response. The REST query parameter is "page_token".
see https://cloud.google.com/apis/design/design_patterns#list_pagination.'
in: query
name: page_token
schema:
type: string
- description: 'If there are multiple pages, a sort-order can be used and is applicable to the pages but not to the items in a page. If this parameter is provided on a multi-page request, it must be provided on all subsequent page requests. Supported options are: "reference_count desc" (default) and "reference_count asc".
see https://cloud.google.com/apis/design/design_patterns#sorting_order.'
in: query
name: order_by
schema:
type: string
- description: If specified, the list will be filtered to subjects of the specified category.
in: query
name: subject_category_id
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/subjectsListSubjectsResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: ListContentGroupSubjects
tags:
- KnowledgeDomain
description: List subjects associated with a Content Group.
/api/knowledge/v1/domains:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
get:
operationId: KnowledgeDomain_ListDomains
parameters:
- description: Filter returned knowledge domains to those that match this Display Name. The REST query parameter is "display_name".
in: query
name: display_name
schema:
type: string
- description: "Filter returned knowledge domains to those that match this Status. The REST query parameter is \"status\" and the value can be a string or integer representation. The only way to see DECOMMISSIONED KD's is to specify that status value here - please be aware that those KD's can and will disappear so do not expect them to be there on subsequent requests.\n\n - CONTENT_AWAIT: CONTENT_AWAIT: Initial value for a newly created KD. If KD was created with data.uri or data.contents then asynchronous status transition will occur to CONTENT_IDENTIFIED after constituent Content Group and Contents are created. If KD was created without either of these then it will remain in this status until an explicit PATCH with CONTENT_IDENTIFIED status is received.\n - CONTENT_IDENTIFIED: CONTENT_IDENTIFIED: When a KD enters this state, our automation will begin the process of readying the content for Conversation Exchanges by ingesting each constituent Content.\n - CONTENT_READY: CONTENT_READY: The KD's content is ready and able to support conversation exchanges. Each Content in the KD's Content Groups has been successfully ingested.\n - CONTENT_NOT_SUPPORTED: CONTENT_NOT_SUPPORTED: Unable to support conversation exchanges on this KD's content due to some problem readying its Contents. You can look for constituent Contents that have INGESTION_FAILED status to find out more details. To retry, update KD status to CONTENT_IDENTIFIED using PATCH. If the problem persists then remove the INGESTION_FAILED contents from the KD's Content Group(s) and try again.\n - DECOMMISSIONED: DECOMMISSIONED: KD is no longer needed, is not going to be used for conversation exchanges, and should be removed from the system. The KD is going to be removed from the system ASAP by ongoing housekeeping operations. Any KD can transition to DECOMMISSIONED status."
in: query
name: status
schema:
default: UNKNOWN
enum:
- UNKNOWN
- CONTENT_AWAIT
- CONTENT_IDENTIFIED
- CONTENT_READY
- CONTENT_NOT_SUPPORTED
- DECOMMISSIONED
type: string
- description: Filter list to all KD's that are in a line of succession. A versioned Collection represents such a KD succession where some of the KDs may have served as the active version. If this list is sorted by metadata.create_time then it shows the succession history.
in: query
name: kd_succession_id
schema:
type: string
- description: 'The default page size is 100, which is also the maximum page size. The REST query parameter is "page_size". If page_size is set to the default, this param can be omitted; otherwise, it must be specified on every page request.
see https://cloud.google.com/apis/design/design_patterns#list_pagination.'
in: query
name: page_size
schema:
format: int32
type: integer
- description: 'If there are multiple pages, pages 2-N must specify this parameter using the value of next_page_token provided in the previous page''s response. The REST query parameter is "page_token".
see https://cloud.google.com/apis/design/design_patterns#list_pagination.'
in: query
name: page_token
schema:
type: string
- description: 'If there are multiple pages, a sort-order can be used and is applicable to the pages but not to the items in a page. If this parameter is provided on a multi-page request, it must be provided on all subsequent page requests. Supported options are: "status asc, update_time desc" (default), "status asc, update_time asc" and "status asc, create_time desc".
see https://cloud.google.com/apis/design/design_patterns#sorting_order.'
in: query
name: order_by
schema:
type: string
- description: Filter list to all KD's that are associated with a team. The REST query parameter is "team" and the value is the unique id of a team to filter on. Filtering is subject to internal authorization rules.
in: query
name: team_id
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/domainListDomainsResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: ListDomains
tags:
- KnowledgeDomain
description: 'List all Knowledge Domains that the user has access to and which do not have a status of DECOMMISSIONED. To see KD''s that are DECOMMISSIONED, use a status filter.
ORG_WORKER users can list the domains that their team assignments allow.'
/api/knowledge/v1/domains/{data.knowledge_domain_id}:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
patch:
operationId: KnowledgeDomain_UpdateDomain
parameters:
- description: Optional. When specified, it must be a UUID that is unique in the system. When not specified, a UUID will be generated.
in: path
name: data.knowledge_domain_id
required: true
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/domainUpdateDomainRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/domainGetDomainResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: UpdateDomain
tags:
- KnowledgeDomain
x-codegen-request-body-name: body
description: Update a single Knowledge Domain (KD) that the user has access to. This is primarily used to mark a KD for decommissioning when it is no longer needed. Decommissioning a KD that serves as the Active Domain of a Knowledge Collection isn't allowed. Please use the collection API to either promote/demote an active domain or delete the parent collection first.
/api/knowledge/v1/domains/{data.knowledge_domain_id}/content-groups:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
post:
operationId: KnowledgeDomain_CreateDomainContentGroup
parameters:
- description: id of a valid Knowledge Domain from /api/knowledge/v1/domains
in: path
name: data.knowledge_domain_id
required: true
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/domainDomainContentGroupRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/domainGetDomainContentGroupResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: CreateDomainContentGroup
tags:
- KnowledgeDomain
x-codegen-request-body-name: body
description: Create a Knowledge Domain (KD) to Content Group (CG) relationship.
/api/knowledge/v1/domains/{data.knowledge_domain_id}/content-groups/{data.content_group_id}:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
get:
operationId: KnowledgeDomain_GetDomainContentGroup
parameters:
- description: id of a valid Knowledge Domain from /api/knowledge/v1/domains
in: path
name: data.knowledge_domain_id
required: true
schema:
type: string
- description: id of a valid Content Group from /api/knowledge/v1/content-groups
in: path
name: data.content_group_id
required: true
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/domainGetDomainContentGroupResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: GetDomainContentGroup
tags:
- KnowledgeDomain
description: Get a single Content Group associated with a Knowledge Domain that the user has access to.
/api/knowledge/v1/domains/{knowledge_domain_id}:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
get:
operationId: KnowledgeDomain_GetDomain
parameters:
- description: id of a valid Knowledge Domain from /api/knowledge/v1/domains
in: path
name: knowledge_domain_id
required: true
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/domainGetDomainResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: GetDomain
tags:
- KnowledgeDomain
description: Get a single Knowledge Domain (KD) that the user has access to. This API can be used to monitor the status transitions of a KD being prepared for Q&A exchanges.
/api/knowledge/v1/domains/{knowledge_domain_id}/content-group:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
get:
operationId: KnowledgeDomain_GetDomainContentGroupByContent
parameters:
- description: Required. Knowledge Domain associated with the Content Group version.
in: path
name: knowledge_domain_id
required: true
schema:
type: string
- description: Required. Content ID to retrieve Content Group for.
in: query
name: content_id
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/domainGetDomainContentGroupByContentResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: GetDomainContentGroupByContent
tags:
- KnowledgeDomain
description: Get a single Content Group associated with a Knowledge Domain and a for a specific Content Item.
/api/knowledge/v1/domains/{knowledge_domain_id}/content-groups:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
delete:
operationId: KnowledgeDomain_DeleteDomainContentGroups
parameters:
- description: id of a valid Knowledge Domain from /api/knowledge/v1/domains
in: path
name: knowledge_domain_id
required: true
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
type: object
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: DeleteDomainContentGroups
tags:
- KnowledgeDomain
description: Delete all child Content Group associations with the parent Knowledge Domain. This does not alter the Content Groups resources.
get:
operationId: KnowledgeDomain_ListDomainContentGroups
parameters:
- description: 'Required: the identifier of a valid Knowledge Domain to retrieve the domain content groups from.'
in: path
name: knowledge_domain_id
required: true
schema:
type: string
- description: 'Optional: if caller only needs the item ID''s, set this to true.'
in: query
name: return_only_id
schema:
type: boolean
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/domainListDomainContentGroupsResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: ListDomainContentGroups
tags:
- KnowledgeDomain
description: List all Content Groups associated with a Knowledge Domain that the user has access to.
/api/knowledge/v1/domains/{knowledge_domain_id}/content-groups/{content_group_id}:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
delete:
operationId: KnowledgeDomain_DeleteDomainContentGroup
parameters:
- description: id of a valid Knowledge Domain from /api/knowledge/v1/domains
in: path
name: knowledge_domain_id
required: true
schema:
type: string
- description: id of a valid Content Group from /api/knowledge/v1/content-groups
in: path
name: content_group_id
required: true
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
type: object
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: DeleteDomainContentGroup
tags:
- KnowledgeDomain
description: Delete a Knowledge Domain to Content Group relationship that the user has access to remove. This does not alter the Content Group resource.
/api/knowledge/v1/domains/{knowledge_domain_id}/content-groups:updateContentPermission:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
post:
operationId: KnowledgeDomain_UpdateDomainContentGroupsContentPermission
parameters:
- description: Required. The identifier of the knowledge domain asscociated with this update method.
in: path
name: knowledge_domain_id
required: true
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/domainUpdateDomainContentGroupsContentPermissionRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/contentListContentGroupsResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: UpdateDomainContentGroupsContentPermission
tags:
- KnowledgeDomain
x-codegen-request-body-name: body
description: This utility POST method is used to update the content permission of content groups in the knowledge domain.
/api/knowledge/v1/domains/{knowledge_domain_id}/content-groups:updateGroupPermission:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
post:
operationId: KnowledgeDomain_UpdateDomainContentGroupsGroupPermission
parameters:
- description: Required. The identifier of the knowledge domain asscociated with this update method.
in: path
name: knowledge_domain_id
required: true
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/domainUpdateDomainContentGroupsGroupPermissionRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/contentListContentGroupsResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: UpdateDomainContentGroupsGroupPermission
tags:
- KnowledgeDomain
x-codegen-request-body-name: body
description: This utility POST method is used to update the group permission of content groups in the knowledge domain.
/api/knowledge/v1/domains/{knowledge_domain_id}/subjects:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
get:
operationId: KnowledgeDomain_ListDomainSubjects
parameters:
- description: Knowledge Domain that subjects must be found in
in: path
name: knowledge_domain_id
required: true
schema:
type: string
- description: 'The default page size is 100, which is also the maximum page size. The REST query parameter is "page_size". If page size is default, this param can be omitted; otherwise it must be specified on every page request.
see https://cloud.google.com/apis/design/design_patterns#list_pagination.'
in: query
name: page_size
schema:
format: int32
type: integer
- description: 'If there are multiple pages, pages 2-N must specify this parameter using the value of next_page_token provided in the previous page''s response. The REST query parameter is "page_token".
see https://cloud.google.com/apis/design/design_patterns#list_pagination.'
in: query
name: page_token
schema:
type: string
- description: 'If there are multiple pages, a sort-order can be used and is applicable to the pages but not to the items in a page. If this parameter is provided on a multi-page request, it must be provided on all subsequent page requests. Supported options are: "reference_count desc" (default) and "reference_count asc".
see https://cloud.google.com/apis/design/design_patterns#sorting_order.'
in: query
name: order_by
schema:
type: string
- description: If specified, the list will be filtered to subjects of the specified category.
in: query
name: subject_category_id
schema:
type: string
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/subjectsListSubjectsResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: ListDomainSubjects
tags:
- KnowledgeDomain
description: List subjects associated with a Knowledge Domain.
/api/knowledge/v1/domains/{knowledge_domain_id}/tags:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
get:
operationId: KnowledgeDomain_ListDomainTags
parameters:
- description: Required. Knowledge Domain to list tags for.
in: path
name: knowledge_domain_id
required: true
schema:
type: string
- description: 'The default page size is 100, which is also the maximum page size. The REST query parameter is "page_size". If page size is default, this param can be omitted; otherwise it must be specified on every page request.
see https://cloud.google.com/apis/design/design_patterns#list_pagination.'
in: query
name: page_size
schema:
format: int32
type: integer
- description: 'If there are multiple pages, pages 2-N must specify this parameter using the value of next_page_token provided in the previous page''s response. The REST query parameter is "page_token".
see https://cloud.google.com/apis/design/design_patterns#list_pagination.'
in: query
name: page_token
schema:
type: string
- description: 'If there are multiple pages, a sort-order can be used and is applicable to the pages but not to the items in a page. If this parameter is provided on a multi-page request, it must be provided on all subsequent page requests. Supported options are: "reference_count desc" (default) and "reference_count asc".
see https://cloud.google.com/apis/design/design_patterns#sorting_order.'
in: query
name: order_by
schema:
type: string
- description: "Required. Filter on tag source.\nIf TAG_SOURCE_TYPE_UNSPECIFIED, an error response will be returned.\n\n - TAG_SOURCE_TYPE_UNSPECIFIED: Default. No tags can be created with this source.\n - SYSTEM_DEFINED: Tags created by the Pryon Cloud Services system.\n - USER_DEFINED: Tags defined by users if the system and created via user input.\n - QUERY_ATTRIBUTE: Tags associated to a content which can be used to improve Exchange response ranking quality based on the context specified in ExchangeInputOption.\nSee \"documentation about improving ranking quality\" link for more details."
in: query
name: tag_source_type
schema:
default: TAG_SOURCE_TYPE_UNSPECIFIED
enum:
- TAG_SOURCE_TYPE_UNSPECIFIED
- SYSTEM_DEFINED
- USER_DEFINED
- QUERY_ATTRIBUTE
type: string
- description: 'Include counts for every tag of a given type.
Counts are calculated over contents belonging to the KD.'
in: query
name: include_counts
schema:
type: boolean
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/domainListTagsResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: ListDomainTags
tags:
- KnowledgeDomain
description: List tags for the Knowledge Domain.
/api/knowledge/v1/domains:createNextVersionWithSources:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
post:
operationId: KnowledgeDomain_CreateDomainNextVersionWithSources
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/domainCreateDomainNextVersionWithSourcesRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/domainGetDomainResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: CreateDomainNextVersionWithSources
tags:
- KnowledgeDomain
x-codegen-request-body-name: body
description: 'Create a new version of a Knowledge Domain (KD) with Sources
If TeamIds are not specified with the request, the team assignments will carry forward from the previous domain version.'
parameters:
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
/api/knowledge/v1/domains:createWithSources:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
post:
operationId: KnowledgeDomain_CreateDomainWithSources
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/domainCreateDomainWithSourcesRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/domainGetDomainResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: CreateDomainWithSources
tags:
- KnowledgeDomain
x-codegen-request-body-name: body
description: 'Create a Knowledge Domain (KD)
When data.sources are specified KD create will inspect them and determine if they are supported. If any of the sources are invalid, an error response will be returned with a 400
HTTP status code. If there are supported Contents, a KD will be created with status a of CONTENT_AWAIT and a success response will be returned with a 200 http status code.
Asynchronously, a single Content Group with the appropriate number of Contents will be created with each Content status being CONFIGURED. When that is complete, the KD will be
transitioned to CONTENT_IDENTIFIED status. After that, asynchronous ingestion of the Contents will be run transitioning each to INGESTING status and eventually to INGESTED.
When content ingestion is completed successfully, the KD status will be transitioned to CONTENT_READY. If the KD is unable to be ingested successfully, its status will be set to
CONTENT_NOT_SUPPORTED.'
parameters:
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
/api/knowledge/v1/domains:default:
servers:
- url: https://api.pryon.net
description: Pryon Cloud
get:
operationId: KnowledgeDomain_ListDefaultDomains
responses:
'200':
content:
application/json:
schema:
# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/pryon/refs/heads/main/openapi/pryon-knowledgedomain-api-openapi.yml