Pryon Knowledge Collection Service API
The KnowledgeCollectionService API from Pryon — 11 operation(s) for knowledgecollectionservice.
The KnowledgeCollectionService API from Pryon — 11 operation(s) for knowledgecollectionservice.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/pryon-knowledgecollectionservice-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Pryon Knowledge Collection Service API
x-refined-note:
- x-logo differs across the merged source definitions and was not carried
version: '1.0'
description: 'Operations tagged KnowledgeCollectionService across 3 of this provider''s published API definitions: pryon-admin-openapi.json, pryon-knowledge-collections-may2025-openapi.json, pryon-knowledgecollectionservice-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.pryon.net
description: Pryon Cloud
tags:
- name: KnowledgeCollectionService
paths:
/api/knowledge/v1/active-domains:
get:
operationId: KnowledgeCollectionService_ListActiveDomains
parameters:
- description: Optionally, filter Active Domains where the calling user has one of these team roles, otherwise return the full set.
explode: true
in: query
name: roles
schema:
items:
enum:
- MEMBER
- EXPERT
- AUTHORITY
type: string
type: array
style: form
- 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
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/collectionListActiveDomainsResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: ListActiveDomains
tags:
- KnowledgeCollectionService
description: 'An ORG_ADMIN can list all active domains corresponding to the collections in their Org.
An ORG_WORKER can list the active domains their team memberships allow.'
servers:
- url: https://api.pryon.net
description: Pryon Cloud
/api/knowledge/v1/collections:
get:
operationId: KnowledgeCollectionService_ListCollections
parameters:
- description: Filters output to only include the collections authorized to the given team_id. The REST query parameter is 'team_id'.
in: query
name: team_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: Filters output to only include the collections assigned to the given solution_id. The REST query parameter is 'solution_id'. Cannot be combined with the 'team_id' filter which it disables when both specified.
in: query
name: solution_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/collectionListCollectionsResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: ListCollections
tags:
- KnowledgeCollectionService
description: List all Knowledge Collections configured for an Org
servers:
- url: https://api.pryon.net
description: Pryon Cloud
/api/knowledge/v1/collections/{collection_id}:
delete:
operationId: KnowledgeCollectionService_DeleteCollection
parameters:
- description: Required. Id of a valid Knowledge Collection.
in: path
name: collection_id
required: true
schema:
type: string
- description: 'Use this flag to force delete the collection when it is set as an Org or User Default. The default value is false.
In REST it is expressed as a query parameter "force=true".'
in: query
name: force
schema:
type: boolean
- 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: DeleteCollection
tags:
- KnowledgeCollectionService
description: 'Deleting a Collection removes the item from the system. It will also locate and decommission all Knowledge Domain versions still associated with this record.
If a collection is already set as an Org or User default the delete operation will fail. ORG_ADMIN may use the force flag to delete anyway.'
get:
operationId: KnowledgeCollectionService_GetCollection
parameters:
- description: Required. Id of a valid Knowledge Collection.
in: path
name: collection_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/collectionGetCollectionResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: GetCollection
tags:
- KnowledgeCollectionService
description: 'Retrieve an existing Knowledge Collection.
Collections cannot be user created but are automatically generated with Knowledge Domains.'
servers:
- url: https://api.pryon.net
description: Pryon Cloud
/api/knowledge/v1/collections/{collection_id}/domain:
get:
operationId: KnowledgeCollectionService_GetCollectionActiveDomain
parameters:
- description: Required. Id of a valid Knowledge Collection.
in: path
name: collection_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: GetCollectionActiveDomain
tags:
- KnowledgeCollectionService
description: 'Retrieve a Knowledge Collection''s active domain. A Collection always has an active domain.
An ORG_ADMIN can always get an active domain.
An ORG_WORKER can only get an active domain if their team memberships allow it.'
servers:
- url: https://api.pryon.net
description: Pryon Cloud
/api/knowledge/v1/collections/{collection_id}/domain:restoreActive:
patch:
operationId: KnowledgeCollectionService_RestoreCollectionActiveDomain
parameters:
- description: Required. Id of a valid Knowledge Collection.
in: path
name: collection_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/collectionRestoreActiveDomainRequest'
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: RestoreCollectionActiveDomain
tags:
- KnowledgeCollectionService
x-codegen-request-body-name: body
description: Revert the collection to its previous version. Reverting is immediate. The active version will not be automatically removed from the system. The ORG_ADMIN may decommission it via the Knowledge Domain API.
servers:
- url: https://api.pryon.net
description: Pryon Cloud
/api/knowledge/v1/collections/{collection_id}/domain:setActive:
patch:
operationId: KnowledgeCollectionService_UpdateCollectionActiveDomain
parameters:
- description: Required. Id of a valid Knowledge Collection.
in: path
name: collection_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/collectionUpdateActiveDomainRequest'
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: UpdateCollectionActiveDomain
tags:
- KnowledgeCollectionService
x-codegen-request-body-name: body
description: Updating a collection's active domain triggers the collection versioning process. The collection will remember its former version id and can return to its previous version on demand. Before promoting a Knowledge Domain to the active version, the ORG_ADMIN should ensure that the Knowledge Domain functions to their expectations. Once set, the active version becomes immediately available to Org users for exchange and feedback operations.
servers:
- url: https://api.pryon.net
description: Pryon Cloud
/api/knowledge/v1/collections/{data.collection_id}:
patch:
operationId: KnowledgeCollectionService_UpdateCollection
parameters:
- description: Required. The Knowledge Collection unique identifier. Immutable after create.
in: path
name: data.collection_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/collectionUpdateCollectionRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/collectionGetCollectionResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: UpdateCollection
tags:
- KnowledgeCollectionService
x-codegen-request-body-name: body
description: Updating a collection allows for changing of team assignments.
servers:
- url: https://api.pryon.net
description: Pryon Cloud
/api/knowledge/v1/default-domains:
get:
operationId: KnowledgeCollectionService_ListDefaultActiveDomains
parameters:
- description: Optionally, filter Active Domains where the calling user has one of these team roles, otherwise return the full set.
explode: true
in: query
name: roles
schema:
items:
enum:
- MEMBER
- EXPERT
- AUTHORITY
type: string
type: array
style: form
- 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
- name: Authentication
in: header
required: true
schema:
type: string
example: 'Authorization: Bearer {base64-encoded-token}'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/collectionListActiveDomainsResponse'
description: A successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/googlerpcStatus'
description: An unexpected error response.
summary: ListDefaultActiveDomains
tags:
- KnowledgeCollectionService
description: List the Active Domains an authorized user can implicitly access in absence of any team assignments(defaults).
servers:
- url: https://api.pryon.net
description: Pryon Cloud
/api/knowledge/v1alpha1/collections:
post:
tags:
- KnowledgeCollectionService
summary: Create Knowledge Collections
operationId: KnowledgeCollectionService_CreateCollectionWithSources
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCollectionWithSourcesRequest'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetCollectionResponse'
default:
description: Default error response
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
/api/knowledge/v1alpha1/collections/{collection_id}:
delete:
tags:
- KnowledgeCollectionService
summary: Delete Knowledge Collections
description: Delete collections from an organization while also locating and decommissioning all knowledge domain versions associated with the record.
operationId: KnowledgeCollectionService_DeleteCollection
parameters:
- name: collection_id
in: path
description: Unique identifier of the knowledge collection.
required: true
schema:
type: string
- name: force
in: query
description: Flag used to force delete a collection when it is set as an organizational or user default; default is false.
schema:
type: boolean
responses:
'200':
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
/api/knowledge/v1alpha1/collections/{collection_id}/domains/{knowledge_domain_id}:
get:
tags:
- KnowledgeCollectionService
summary: Get Knowledge Collections
description: Retrieve all knowledge collections for an organization.
operationId: KnowledgeCollectionService_GetCollectionDomain
parameters:
- name: collection_id
in: path
description: Unique identifier of the knowledge collection.
required: true
schema:
type: string
- name: knowledge_domain_id
in: path
description: Unique ID of the knowledge domain.
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetCollectionDomainResponse'
default:
description: Default error response
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
components:
schemas:
googlerpcStatus:
properties:
code:
format: int32
type: integer
message:
type: string
details:
items:
$ref: '#/components/schemas/protobufAny'
type: array
type: object
protobufAny:
properties:
type_url:
type: string
value:
format: byte
pattern: ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$
type: string
type: object
v1CollectionMetadata:
properties:
uuid:
description: Random UUID returned in the resource response to represent the unique interaction with the API. This can be thought of as a response id.
type: string
response_time_millis:
description: Time difference in milliseconds between when the request was received and when the response was generated, that is, the latency.
format: int64
type: integer
title: Metadata that will be returned with each collection-level GET
type: object
domainKnowledgeDomainEntityStatus:
default: UNKNOWN
description: "Output only. An indicator of readiness of the KD to support conversation exchanges.\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."
enum:
- UNKNOWN
- CONTENT_AWAIT
- CONTENT_IDENTIFIED
- CONTENT_READY
- CONTENT_NOT_SUPPORTED
- DECOMMISSIONED
type: string
domainGetDomainResponse:
properties:
metadata:
$ref: '#/components/schemas/v1ResourceMetadata'
data:
$ref: '#/components/schemas/domainKnowledgeDomainEntity'
type: object
collectionListCollectionItem:
properties:
metadata:
$ref: '#/components/schemas/v1ResourceMetadata'
data:
$ref: '#/components/schemas/collectionKnowledgeCollection'
type: object
collectionUpdateCollectionRequest:
properties:
data:
$ref: '#/components/schemas/collectionKnowledgeCollection'
update_mask:
items:
type: string
title: "Required. The data path corresponding to the fields being updated in this request.\nThe following fields are updatable:\n data.team_ids\n data.solution_id\nExample mask declaration in JSON format:\n updateMask: \"data.teamIds\"\nsee https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask"
type: array
type: object
collectionGetCollectionResponse:
properties:
metadata:
$ref: '#/components/schemas/v1ResourceMetadata'
data:
$ref: '#/components/schemas/collectionKnowledgeCollection'
type: object
domainListDomainItem:
properties:
data:
$ref: '#/components/schemas/domainKnowledgeDomainEntity'
metadata:
$ref: '#/components/schemas/v1ResourceMetadata'
type: object
domainKnowledgeDomainEntity:
description: The top-level message sent by the client for the CreateDomain method.
properties:
knowledge_domain_id:
description: Optional. When specified, it must be a UUID that is unique in the system. When not specified, a UUID will be generated.
type: string
display_name:
description: Required. Friendly display name of this KD.
type: string
description:
description: Optional. A more elaborate explanation of this KD.
type: string
status:
$ref: '#/components/schemas/domainKnowledgeDomainEntityStatus'
labels:
additionalProperties:
type: string
description: "Optional. Knowledge domain specific key/value pair labels.\nLabels can be used to organize and select subsets of objects.\nReserved Pryon labels:\n code_name - Only use this label as directed by Pryon personnel.\n include_user_criteria - true/false."
type: object
kd_succession_id:
description: Optional. This is a uuidv4 stable identifier of the versioned KnowledgeCollection parent to this KnowledgeDomain. A KnowledgeCollection is automatically created with every new KnowledgeDomain. This identifier is autogenerated when not supplied and cannot be subsequently updated.
type: string
status_reason:
description: Reason that KD was transitioned to its current status value. Generally only relevant when the status is CONTENT_NOT_SUPPORTED.
type: string
team_ids:
description: 'DEPRECATED. Teams are now specified at the collection level.
IDs of the teams allowed access to this KD.'
items:
type: string
type: array
created_by:
description: Automatically assigned and immutable after creation. The user identity that created this knowledge domain.
type: string
type: object
collectionListActiveDomainsResponse:
properties:
metadata:
$ref: '#/components/schemas/v1CollectionMetadata'
items:
items:
$ref: '#/components/schemas/domainListDomainItem'
type: array
next_page_token:
title: 'If there are multiple pages, this will be returned and must be specified in each request for pages 2-N using the "page_token" query param. However, the only reliable way to know if more pages exist is to request the next page when a full page of items is returned.
see https://cloud.google.com/apis/design/design_patterns#list_pagination'
type: string
total_size:
format: int32
title: 'This is the total number of items in the collection across all the pages. It is returned with every page and may change during page traversal.
see https://cloud.google.com/apis/design/design_patterns#list_pagination'
type: integer
page_size:
description: Returned for convenience and clarity - same as page_size in request.
format: int32
type: integer
type: object
v1ResourceMetadata:
properties:
uuid:
description: UUID returned in the resource response, which represents the unique interaction with the API, that is, the response id.
type: string
create_time:
description: Time of the initial request.
format: date-time
type: string
update_time:
description: 'Time of the last update.
A value of 0 indicates it has never been updated.'
format: date-time
type: string
response_time_millis:
format: int64
title: Time difference in milliseconds between when the request was received and when the response was generated
type: integer
type: object
collectionKnowledgeCollection:
properties:
collection_id:
description: Required. The Knowledge Collection unique identifier. Immutable after create.
type: string
active_domain_id:
description: Unique identifier of the current version Domain.
type: string
active_domain_history:
description: Autogenerated. An ordered list of version identifiers that were active at some point in the Collection's lifetime. The oldest version is the first item in the list.
items:
type: string
type: array
team_ids:
description: Unique identifiers of the teams authorized to this Knowledge Collection.
items:
type: string
type: array
solution_id:
description: Required. The licensed solution this collection belongs to.
type: string
title: A versioned collection of documents authorized users can interact with
type: object
collectionUpdateActiveDomainRequest:
properties:
collection_id:
description: Required. Id of a valid Knowledge Collection.
type: string
knowledge_domain_id:
title: The ID of the Knowledge Domain to serve as the active version
type: string
type: object
collectionListCollectionsResponse:
properties:
metadata:
$ref: '#/components/schemas/v1CollectionMetadata'
items:
items:
$ref: '#/components/schemas/collectionListCollectionItem'
type: array
next_page_token:
title: 'If there are multiple pages, this will be returned and must be specified in each request for pages 2-N using the "page_token" query param. However, the only reliable way to know if more pages exist is to request the next page when a full page of items is returned.
see https://cloud.google.com/apis/design/design_patterns#list_pagination'
type: string
total_size:
format: int32
title: 'This is the total number of items in the collection across all the pages. It is returned with every page and may change during page traversal.
see https://cloud.google.com/apis/design/design_patterns#list_pagination'
type: integer
page_size:
description: Returned for convenience and clarity - same as page_size in request.
format: int32
type: integer
type: object
collectionRestoreActiveDomainRequest:
properties:
collection_id:
description: Required. Id of a valid Knowledge Collection.
type: string
type: object
GetCollectionResponse:
type: object
properties:
metadata:
$ref: '#/components/schemas/ResourceMetadata'
data:
$ref: '#/components/schemas/KnowledgeCollection'
ContentGroupSource:
type: object
properties:
source_location:
type: string
description: URL of the content to be ingested; see Collections for information on valid sources.
display_name:
type: string
description: Display name for the source.
service_id:
type: string
description: Third-party service connect; if not specified, the oldest service connect with an authority and type matching the source location is assigned.
content_ids:
type: array
items:
type: string
description: Unique identifierof the content items to use during domain creation; only used with CreateNextVersionWithSourcesRequest when CreateNextVersionRequest.Mode == INGEST_SELECTED_CONTENTS; content record must already exist within the Content Group or an error is returned.
Status:
type: object
properties:
code:
type: integer
description: The status code; enum value of google.rpc.Code.
format: int32
message:
type: string
description: Developer-facing error message.
details:
type: array
items:
$ref: '#/components/schemas/GoogleProtobufAny'
description: List of messages that carry the error details.
description: 'The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).'
CreateCollectionWithSourcesRequest:
type: object
properties:
data:
$ref: '#/components/schemas/CollectionEntityWithSources'
description: The top-level request to create a collection with sources
GoogleProtobufAny:
type: object
properties:
'@type':
type: string
description: The type of the serialized message.
additionalProperties: true
description: Contains an arbitrary serialized message along with a @type that describes the ty
# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/pryon/refs/heads/main/openapi/pryon-knowledgecollectionservice-api-openapi.yml