Skip to content

Knowledge Portal Manager APIs

License

The following licenses are required to use the Knowledge Access APIs:

  • If the user is an agent, then the Knowledge + AI license is required.
  • If the user is a customer, the Self-Service and Advanced Self-Service licenses must be available.

Tiers

TierTier NameNamed UsersDescription
Tier 1StarterUp to 10Designed for small-scale implementations or pilot environments
Tier 2GrowthUp to 1000Suitable for mid-scale deployments requiring moderate scalability
Tier 3EnterpriseGreater than 1000Supports large-scale environments with extended configuration options

API Resource Limits

The following Resources have predefined limits for specific access attributes for Starter, Growth and Enterprise use.

ResourceLimitsStarterGrowthEnterprise
Article ReferenceNumber of attachments used in any article255050
Number of custom attributes in an article102550
Number of publish views used in an article version202020
Topic ReferenceUser-defined topics in a department1000500050000
Depth of topics52020
Topics at any level50025002500
Number of custom attributes in a topic101010
Portal ReferenceTag categories in a portal151515
Topics to be included in a portal1005005000
Number of articles to display in announcements102525
Usage links and link groups setup for a portal51025
Download OpenAPI description
Languages
Servers
Production Server
https://api.egain.cloud/knowledge/portalmgr/v4

Article

Article APIs

Operations

Article Lists

Article List APIs

Operations

Bookmark

Bookmark APIs

Operations

Guided Help

Guided Help APIs

Operations

Portal

Portal API

Operations

Suggestion

Suggestion APIs

Operations

Make a Suggestion

Request

Overview

The Make a Suggestion API allows users to create an Article Suggestion from within a knowledge portal.

Prerequisites

  • Enable the setting "Manage a Suggestion" for the portal specified in the URL.
  • If the user is a Customer, enable the setting "Allow Customer Access" for the portal.
  • If you want to add an attachment to a Suggestion, first call the Generate Signed URL to Upload API to add an attachment using the provided returned altID in attachment request.
Security
oAuthUser(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthOnBehalfOfUser(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthCustomer(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthOnBehalfOfCustomer(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthAnonymousCustomer(Required scopes:
https://api.egain.cloud/auth/kno...
)
Path
portalIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

The ID of the portal being accessed.

A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

Example: PROD-1000
Headers
x-egain-activity-idstring[ 4 .. 9 ] characters^[0-9]{4,9}$

A unique numeric interaction identifier from eGain.

Example: 59237
x-ext-integration-idstring<= 40 characters^[\w\W]+$

The unique numeric identifier for a tenant, used in self-service functionality as well as third-party integrations.

Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

Examples:
3155180e-0c13-43e9-9c38-e9045bcbf176
00Dbn00000IxGnx
x-ext-interaction-idstring<= 40 characters^[\w\W]+$

A unique interaction identifier from other CRM applications.

Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

Examples:
3155180e-0c13-43e9-9c38-e9045bcbf176
00Dbn00000IxGnx
Content-Typestringrequired

The media type sent by the client.

Default application/json
Value"application/json"
Accept-Languagestringrequired

The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses).

Enum"en-US""es-ES""fr-FR""it-IT""de-DE""nl-NL""pt-BR""pt-PT""da-DK""ru-RU"
Example: en-US
Bodyapplication/json
namestring[ 1 .. 255 ] characters^[\s\S]*\S[\s\S]*$required

The name of the Suggestion.

descriptionstring[ 0 .. 255 ] characters^[\w\W]*$

The description of the Suggestion.

contentstring[ 1 .. 4000 ] characters^[\s\S]*\S[\s\S]*$required

The content of the Suggestion.

feedbackArticleobject(RelatedArticleForCreateUpdateDeleteSuggestion)

The Article that the Suggestion was created for.

attachmentsobject(attachments)

Details of Attachments for the Suggestion.

languageobject(Language)required

The knowledge base language in which the Suggestion is created.

language.​codestringrequired

The code of the language.

Enum"en-US""fr-FR""en-GB""es-ES""it-IT""nl-NL""da-DA""sv-SE""pt-PT""fi-FI"
customAttributesArray of objects(CustomAttribute)[ 0 .. 15 ] items

The Custom Attributes of the Suggestion.

curl -i -X POST \
  https://api.egain.cloud/knowledge/portalmgr/v4/portals/PROD-1000/suggestions \
  -H 'Accept-Language: en-US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'x-egain-activity-id: 59237' \
  -H 'x-ext-integration-id: string' \
  -H 'x-ext-interaction-id: string' \
  -d '{
    "name": "Proposed Store Phone Number",
    "content": "You should update your website with the new phone number.",
    "language": {
      "code": "en-US"
    }
  }'

Responses

Created

Response
No content

Modify Suggestion

Request

Overview

The Modify Suggestion API allows authenticated users to modify their own Suggestion.

Prerequisites

  • Enable the setting "Manage a Suggestion" for the portal specified in the URL.
  • If the user is a Customer, enable the setting "Allow Customer Access" for the portal.
  • The "Suggestion ID" specified in the request body must exist and belong to the user.
  • The status of this Suggestion as returned by the Get Suggestion by ID API must be "pending".
  • At least one of the optional request body attributes must be provided.
Security
oAuthUser(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthOnBehalfOfUser(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthCustomer(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthOnBehalfOfCustomer(Required scopes:
https://api.egain.cloud/auth/kno...
)
Path
portalIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

The ID of the portal being accessed.

A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

Example: PROD-1000
Headers
x-egain-activity-idstring[ 4 .. 9 ] characters^[0-9]{4,9}$

A unique numeric interaction identifier from eGain.

Example: 59237
x-ext-integration-idstring<= 40 characters^[\w\W]+$

The unique numeric identifier for a tenant, used in self-service functionality as well as third-party integrations.

Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

Examples:
3155180e-0c13-43e9-9c38-e9045bcbf176
00Dbn00000IxGnx
x-ext-interaction-idstring<= 40 characters^[\w\W]+$

A unique interaction identifier from other CRM applications.

Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

Examples:
3155180e-0c13-43e9-9c38-e9045bcbf176
00Dbn00000IxGnx
Content-Typestringrequired

The media type sent by the client.

Default application/json
Value"application/json"
Accept-Languagestringrequired

The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses).

Enum"en-US""es-ES""fr-FR""it-IT""de-DE""nl-NL""pt-BR""pt-PT""da-DK""ru-RU"
Example: en-US
Bodyapplication/json
idstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

The ID of the Suggestion. A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

Example: "PROD-3259"
namestring[ 1 .. 255 ] characters^[\s\S]*\S[\s\S]*$

The name of the Suggestion.

descriptionstring[ 0 .. 255 ] characters^[\w\W]*$

The description of the Suggestion.

contentstring[ 1 .. 4000 ] characters^[\s\S]*\S[\s\S]*$

The content of the Suggestion.

modifiedDatestring(DateAndTime)[ 20 .. 25 ] characters^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{3})...required

The date on which the Suggestion was last modified.

attachmentsobject(attachments)

Details of Attachments for the Suggestion.

customAttributesArray of objects(CustomAttribute)[ 0 .. 15 ] items

Custom Attributes of the Suggestion.

curl -i -X PUT \
  https://api.egain.cloud/knowledge/portalmgr/v4/portals/PROD-1000/suggestions \
  -H 'Accept-Language: en-US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'x-egain-activity-id: 59237' \
  -H 'x-ext-integration-id: string' \
  -H 'x-ext-interaction-id: string' \
  -d '{
    "id": "PROD-5722",
    "name": "Improving Telecommunication Services",
    "modifiedDate": "2024-07-31T14:10:19Z"
  }'

Responses

No Content

Response
No content

Get Suggestion by Status

Request

Overview

The Get Suggestion by Status API allows authenticated users to retrieve their own suggestions based on Suggestion status.

Prerequisites

  • Enable the setting "My Suggestions" for the portal specified in the URL.
  • If the user is a customer, enable the setting "Allow Customer Access" for the portal.
Security
oAuthUser(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthOnBehalfOfUser(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthCustomer(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthOnBehalfOfCustomer(Required scopes:
https://api.egain.cloud/auth/kno...
)
Path
portalIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

The ID of the portal being accessed.

A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

Example: PROD-1000
Query
filter[status]stringrequired

The search filter applied to the list of suggestions by a user.

Enum"suggested""pending""declined""approved"
Example: filter[status]=suggested
$sortstring

Objects returned in server response are sorted based on the attribute supplied under $sort.

Enum"id""name"
Example: $sort=id
$orderstring

Common query parameter $order.
Default value: asc

Enum"asc""desc"
Example: $order=asc
$pagenuminteger(int64)[ 1 .. 999 ]

Pagination parameter that specifies the page number of results to be returned. Used in conjunction with $pagesize.

Default 1
$pagesizeinteger(int64)[ 1 .. 75 ]

Pagination parameter that specifies the number of results per page. Used in conjunction with $pagenum.
Valid range of 5-75
Default value: 25

Default 25
Headers
x-egain-activity-idstring[ 4 .. 9 ] characters^[0-9]{4,9}$

A unique numeric interaction identifier from eGain.

Example: 59237
x-ext-integration-idstring<= 40 characters^[\w\W]+$

The unique numeric identifier for a tenant, used in self-service functionality as well as third-party integrations.

Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

Examples:
3155180e-0c13-43e9-9c38-e9045bcbf176
00Dbn00000IxGnx
x-ext-interaction-idstring<= 40 characters^[\w\W]+$

A unique interaction identifier from other CRM applications.

Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

Examples:
3155180e-0c13-43e9-9c38-e9045bcbf176
00Dbn00000IxGnx
Accept-Languagestringrequired

The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses).

Enum"en-US""es-ES""fr-FR""it-IT""de-DE""nl-NL""pt-BR""pt-PT""da-DK""ru-RU"
Example: en-US
curl -i -X GET \
  'https://api.egain.cloud/knowledge/portalmgr/v4/portals/PROD-1000/suggestions?filter%5Bstatus%5D=suggested&%24sort=id&%24order=asc&%24pagenum=1&%24pagesize=25' \
  -H 'Accept-Language: en-US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-egain-activity-id: 59237' \
  -H 'x-ext-integration-id: string' \
  -H 'x-ext-interaction-id: string'

Responses

Success

Bodyapplication/json
SuggestionArray of objects(suggestion)
paginationInfoobject(PaginationInfo)
Response
application/json
{ "suggestion": [ {} ], "paginationInfo": { "count": 1, "pagenum": 1, "pagesize": 25 } }

Get Suggestion by ID

Request

Overview

The Get Suggestion by ID API allows authenticated users to retrieve their own suggestions.

Prerequisites

  • Enable the setting "My Suggestions" for the portal specified in the URL.
  • If the user is a customer, enable the setting "Allow Customer Access" for the portal.
  • The "Suggestion for the ID" specified in the URL must belong to the user.
Security
oAuthUser(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthOnBehalfOfUser(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthCustomer(Required scopes:
https://api.egain.cloud/auth/kno...
)
or oAuthOnBehalfOfCustomer(Required scopes:
https://api.egain.cloud/auth/kno...
)
Path
portalIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

The ID of the portal being accessed.

A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

Example: PROD-1000
suggestionIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

The ID of the Suggestion.

A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

Example: PROD-11829
Query
suggestionAdditionalAttributesArray of strings

The attributes of a Suggestion to be returned in addition to the default list of attributes, listed below. Multiple additional attributes can be specified using a comma-separated list. Passing 'all' returns all attributes.

Default Attributes

These Suggestion attributes are always returned:

NameDescription
idThe ID of the Suggestion.
nameThe name of the Suggestion.
statusThe status of the Suggestion.
descriptionThe description of the Suggestion.
languageDetails about the language of the Suggestion.
modifiedBy.idThe ID of the user that last modified the Suggestion.
modifiedBy.firstNameThe Suggestion's last modified user's first name.
modifiedBy.middleNameThe Suggestion's last modified user's middle name.
modifiedBy.lastNameThe Suggestion's last modified user's last name.
modifiedDateThe Suggestion's last modified date and information about the user that last modified the Suggestion.
linkThe link object, used to retrieve the details of the Suggestion.
hasCommentsThe Suggestion has one or more comments
hasAttachmentsThe Suggestion has one or more attachments
hasRelatedArticlesThe Suggestion has related articles
Items Enum"content""modifiedBy.userName""all"
Examples:

An additional attribute to be returned.

suggestionAdditionalAttributes=content

Additional attributes to be returned.

suggestionAdditionalAttributes=content,modifiedBy.userName

All additional attributes to be returned.

suggestionAdditionalAttributes=all
$customAdditionalAttributesstring[ 1 .. 4000 ] characters^([a-zA-Z0-9_-]+)(?:,[a-zA-Z0-9_-]+)*$

One or more comma-separated names for custom attributes defined by the user to be returned.

Examples:

A user-defined custom attribute.

$customAdditionalAttributes=country_name

Multiple user-defined custom attributes.

$customAdditionalAttributes=internalScore,performance-rating_dept_923
Headers
x-egain-activity-idstring[ 4 .. 9 ] characters^[0-9]{4,9}$

A unique numeric interaction identifier from eGain.

Example: 59237
x-ext-integration-idstring<= 40 characters^[\w\W]+$

The unique numeric identifier for a tenant, used in self-service functionality as well as third-party integrations.

Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

Examples:
3155180e-0c13-43e9-9c38-e9045bcbf176
00Dbn00000IxGnx
x-ext-interaction-idstring<= 40 characters^[\w\W]+$

A unique interaction identifier from other CRM applications.

Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

Examples:
3155180e-0c13-43e9-9c38-e9045bcbf176
00Dbn00000IxGnx
Accept-Languagestringrequired

The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses).

Enum"en-US""es-ES""fr-FR""it-IT""de-DE""nl-NL""pt-BR""pt-PT""da-DK""ru-RU"
Example: en-US
curl -i -X GET \
  'https://api.egain.cloud/knowledge/portalmgr/v4/portals/PROD-1000/suggestions/PROD-11829?suggestionAdditionalAttributes=content&%24customAdditionalAttributes=string' \
  -H 'Accept-Language: en-US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-egain-activity-id: 59237' \
  -H 'x-ext-integration-id: string' \
  -H 'x-ext-interaction-id: string'

Responses

Success

Bodyapplication/json
idstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

The ID of the Suggestion. A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

Example: "PROD-0623"
linkobject(Link)

Defines the relationship between this resource and another object.

namestring[ 1 .. 255 ] characters^[\s\S]*\S[\s\S]*$required

The name of the Suggestion.

descriptionstring[ 0 .. 255 ] characters^[\w\W]*$

The description of the Suggestion.

contentstring[ 1 .. 4000 ] characters^[\s\S]*\S[\s\S]*$

The content of the Suggestion.

hasRelatedArticlesboolean

If true, the Suggestion has one or more Related Articles.

statusobject(L10NString)= 1 characters^[1-4]$

The status of the Suggestion.

  • 1 : suggested.
  • 2 : pending
  • 3 : declined
  • 4 : approved
  • modifiedByobject(modifiedBy)
    modifiedDatestring(date-time)[ 20 .. 25 ] characters^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{3})...

    The last modified date and last modifying user of the Suggestion.

    hasAttachmentsboolean

    Indicates whether the Suggestion has any Attachments.

    hasCommentsboolean

    Indicates whether the Suggestion has any comments.

    languageobject(Language)

    The knowledge base language in which the Suggestion was created.

    customAttributesArray of objects(CustomAttribute)[ 0 .. 15 ] items

    Custom Attributes of the Suggestion.

    Response
    application/json
    { "link": { "rel": "self", "href": "/knowledge/portalmgr/v4/portals/PROD-1000/suggestions/PROD-3259" }, "name": "Missing Article Information", "description": "Missing Account Type Information", "content": "<p>There should be an article that explains the account types offered. That would be very helpful.<br /></p>", "status": { "value": "suggested", "displayValue": "Suggested" }, "modifiedBy": { "firstName": "John", "middleName": "", "lastName": "Smith", "id": "1067" }, "modifiedDate": "2025-01-23T04:16:17.000Z", "language": { "code": "en-US", "label": "English" }, "hasRelatedArticles": false, "hasAttachments": false, "hasComments": true, "customAttribute": [], "id": "PROD-3259" }

    Delete a Suggestion

    Request

    Overview

    The Delete a Suggestion API allows authenticated users to delete their own Suggestion.

    Prerequisites

    • Enable the setting "Manage a Suggestion" for the portal specified in the URL.
    • If the user is a customer, enable the setting "Allow Customer Access" for the portal.
    • The Suggestion must belong to the user.
    • The status of the Suggestion must not be "approved".
    Security
    oAuthUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    Path
    portalIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the portal being accessed.

    A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-1000
    suggestionIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the Suggestion.

    A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-11829
    Headers
    x-egain-activity-idstring[ 4 .. 9 ] characters^[0-9]{4,9}$

    A unique numeric interaction identifier from eGain.

    Example: 59237
    x-ext-integration-idstring<= 40 characters^[\w\W]+$

    The unique numeric identifier for a tenant, used in self-service functionality as well as third-party integrations.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    x-ext-interaction-idstring<= 40 characters^[\w\W]+$

    A unique interaction identifier from other CRM applications.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    Accept-Languagestringrequired

    The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses).

    Enum"en-US""es-ES""fr-FR""it-IT""de-DE""nl-NL""pt-BR""pt-PT""da-DK""ru-RU"
    Example: en-US
    curl -i -X DELETE \
      https://api.egain.cloud/knowledge/portalmgr/v4/portals/PROD-1000/suggestions/PROD-11829 \
      -H 'Accept-Language: en-US' \
      -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
      -H 'x-egain-activity-id: 59237' \
      -H 'x-ext-integration-id: string' \
      -H 'x-ext-interaction-id: string'

    Responses

    No Content

    Response
    No content

    Get Related Articles for Suggestion

    Request

    Overview

    The Get Related Articles for Suggestion API allows authenticated users to retrieve related articles for a Suggestion.

    Prerequisites

    • Enable the setting "My Suggestions" for the portal specified in the URL.
    • If the user is a customer, enable the setting "Allow Customer Access" for the portal.
    • The Suggestion specified in the URL must belong to the user.
    Security
    oAuthUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    Path
    portalIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the portal being accessed.

    A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-1000
    suggestionIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the Suggestion.

    A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-11829
    Query
    articleResultAdditionalAttributesArray of strings

    The attributes of an Article to be returned in addition to the default list of attributes, listed below. Multiple additional attributes can be specified using a comma-separated list. Passing 'all' will return all attributes.

    Default Attributes

    These Article attributes are always returned:

    NameDescription
    idThe ID of the Article.
    nameThe name of the Article.
    articleTypeThe Article Type and its attributes.
    createdByThe ID, first name, middle name and last name of the user that created the Article.
    createdDateThe date that the Article was created.
    hasAttachmentsTrue: The Article has one or more attachments.
    False: The Article does not have any attachments.
    languageCodeThe language code of the Article language.
    modifiedByThe ID, first name, middle name and last name of the user that last modified the Article.
    modifiedDateThe date that the Article was last modified on.
    linkThe link object, used to retrieve the details of the Article.
    versionIdThe ID of the Article version that is returned.
    Items Enum"averageRating""customAttributes""description""articleSummary""imageURL""isSubscribed""timesRated""topicBreadcrumb""ownedBy""ownedBy.userName"
    Examples:

    An additional attribute to be returned.

    articleResultAdditionalAttributes=averageRating

    Additional attributes to be returned.

    articleResultAdditionalAttributes=ownedBy,ownedBy.userName

    All additional attributes to be returned.

    articleResultAdditionalAttributes=all
    Headers
    x-egain-activity-idstring[ 4 .. 9 ] characters^[0-9]{4,9}$

    A unique numeric interaction identifier from eGain.

    Example: 59237
    x-ext-integration-idstring<= 40 characters^[\w\W]+$

    The unique numeric identifier for a tenant, used in self-service functionality as well as third-party integrations.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    x-ext-interaction-idstring<= 40 characters^[\w\W]+$

    A unique interaction identifier from other CRM applications.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    Accept-Languagestringrequired

    The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses).

    Enum"en-US""es-ES""fr-FR""it-IT""de-DE""nl-NL""pt-BR""pt-PT""da-DK""ru-RU"
    Example: en-US
    curl -i -X GET \
      'https://api.egain.cloud/knowledge/portalmgr/v4/portals/PROD-1000/suggestions/PROD-11829/relatedArticles?articleResultAdditionalAttributes=averageRating' \
      -H 'Accept-Language: en-US' \
      -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
      -H 'x-egain-activity-id: 59237' \
      -H 'x-ext-integration-id: string' \
      -H 'x-ext-interaction-id: string'

    Responses

    Success

    Bodyapplication/json
    idstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$

    The ID of the Suggestion. A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: "PROD-3259"
    namestring[ 1 .. 255 ] characters^[\s\S]*\S[\s\S]*$

    The name of the Suggestion.

    relatedArticlesArray of objects(ArticleResult)

    Related Articles for the Suggestion.

    Response
    application/json
    { "name": "Feedback", "id": "PROD-3259", "relatedArticles": [ {} ] }

    Get Suggestion Comments

    Request

    Overview

    The Get Suggestion Comments API allows authenticated users to retrieve all comments for a Suggestion.

    Prerequisites

    • Enable the setting "My Suggestions" for the portal specified in the URL.
    • If the user is a customer, enable the setting "Allow Customer Access" for the portal.
    • The Suggestion specified in the URL must belong to the user.
    Security
    oAuthUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    Path
    portalIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the portal being accessed.

    A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-1000
    suggestionIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the Suggestion.

    A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-11829
    Headers
    x-egain-activity-idstring[ 4 .. 9 ] characters^[0-9]{4,9}$

    A unique numeric interaction identifier from eGain.

    Example: 59237
    x-ext-integration-idstring<= 40 characters^[\w\W]+$

    The unique numeric identifier for a tenant, used in self-service functionality as well as third-party integrations.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    x-ext-interaction-idstring<= 40 characters^[\w\W]+$

    A unique interaction identifier from other CRM applications.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    Accept-Languagestringrequired

    The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses).

    Enum"en-US""es-ES""fr-FR""it-IT""de-DE""nl-NL""pt-BR""pt-PT""da-DK""ru-RU"
    Example: en-US
    curl -i -X GET \
      https://api.egain.cloud/knowledge/portalmgr/v4/portals/PROD-1000/suggestions/PROD-11829/comments \
      -H 'Accept-Language: en-US' \
      -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
      -H 'x-egain-activity-id: 59237' \
      -H 'x-ext-integration-id: string' \
      -H 'x-ext-interaction-id: string'

    Responses

    Success

    Bodyapplication/json
    countinteger(int32)[ 0 .. 75 ]

    The number of comments.

    commentsArray of objects(Comment)[ 1 .. 75 ] items

    The list of comments.

    Response
    application/json
    { "count": 1, "comments": [ {} ] }

    Add a Suggestion Comment

    Request

    Overview

    The Add Suggestion Comment API allows authenticated users and agents to add a new comment to a Suggestion.

    Prerequisites

    • Enable the setting "My Suggestions" for the portal specified in the URL.
    • If the user is a customer, enable the setting "Allow Customer Access" for the portal.
    • The Suggestion specified in the URL must belong to the user, or the user must have appropriate administrative permissions to comment on it.
    • The Suggestion must be in Suggested or Pending status, otherwise no comments can be added.
    Security
    oAuthUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    Path
    portalIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the portal being accessed.

    A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-1000
    suggestionIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the Suggestion.

    A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-11829
    Headers
    x-egain-activity-idstring[ 4 .. 9 ] characters^[0-9]{4,9}$

    A unique numeric interaction identifier from eGain.

    Example: 59237
    x-ext-integration-idstring<= 40 characters^[\w\W]+$

    The unique numeric identifier for a tenant, used in self-service functionality as well as third-party integrations.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    x-ext-interaction-idstring<= 40 characters^[\w\W]+$

    A unique interaction identifier from other CRM applications.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    Content-Typestringrequired

    The media type sent by the client.

    Default application/json
    Value"application/json"
    Accept-Languagestringrequired

    The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses).

    Enum"en-US""es-ES""fr-FR""it-IT""de-DE""nl-NL""pt-BR""pt-PT""da-DK""ru-RU"
    Example: en-US
    Bodyapplication/jsonrequired
    contentstring[ 1 .. 2000 ] characters^[\s\S]*\S[\s\S]*$

    Content of the Comment

    curl -i -X POST \
      https://api.egain.cloud/knowledge/portalmgr/v4/portals/PROD-1000/suggestions/PROD-11829/comments \
      -H 'Accept-Language: en-US' \
      -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
      -H 'Content-Type: application/json' \
      -H 'x-egain-activity-id: 59237' \
      -H 'x-ext-integration-id: string' \
      -H 'x-ext-interaction-id: string' \
      -d '{
        "content": "I have uploaded the requested documents regarding the new phone numbers. Please review."
      }'

    Responses

    Created. The comment was successfully added.

    Response
    No content

    Get Suggestion Attachments

    Request

    Overview

    The Get Suggestion Attachments API allows authenticated users to retrieve attachments for a Suggestion.

    Prerequisites

    • Enable the setting "My Suggestions" for the portal specified in the URL
    • If the user is a customer, enable the setting "Allow Customer Access" for the portal.
    • The Suggestion specified in the URL must belong to the user.
    Security
    oAuthUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    Path
    portalIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the portal being accessed.

    A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-1000
    suggestionIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the Suggestion.

    A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-11829
    Headers
    x-egain-activity-idstring[ 4 .. 9 ] characters^[0-9]{4,9}$

    A unique numeric interaction identifier from eGain.

    Example: 59237
    x-ext-integration-idstring<= 40 characters^[\w\W]+$

    The unique numeric identifier for a tenant, used in self-service functionality as well as third-party integrations.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    x-ext-interaction-idstring<= 40 characters^[\w\W]+$

    A unique interaction identifier from other CRM applications.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    Accept-Languagestringrequired

    The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses).

    Enum"en-US""es-ES""fr-FR""it-IT""de-DE""nl-NL""pt-BR""pt-PT""da-DK""ru-RU"
    Example: en-US
    curl -i -X GET \
      https://api.egain.cloud/knowledge/portalmgr/v4/portals/PROD-1000/suggestions/PROD-11829/attachments \
      -H 'Accept-Language: en-US' \
      -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
      -H 'x-egain-activity-id: 59237' \
      -H 'x-ext-integration-id: string' \
      -H 'x-ext-interaction-id: string'

    Responses

    Success

    Bodyapplication/json
    countinteger(int32)[ 1 .. 25 ]

    The number of Attachments in the list.

    linkobject(Link)

    Defines the relationship between this resource and another object.

    AttachmentsArray of objects(attachment)[ 1 .. 25 ] items

    The list of Attachments.

    Response
    application/json
    { "attachments": [ {} ] }

    Get Suggestion Attachment by ID

    Request

    Overview

    The Get Suggestion Attachment by ID API allows authenticated users to get the details of an attachment that belongs to their own Suggestion. It also allows the download of attachment content.

    Prerequisites

    • Enable the setting "My Suggestions" for the portal specified in the URL
    • If the user is a customer, enable the setting "Allow Customer Access" for the portal.
    • The Suggestion specified in the URL must belong to the user.
    Security
    oAuthUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfUser(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    or oAuthOnBehalfOfCustomer(Required scopes:
    https://api.egain.cloud/auth/kno...
    )
    Path
    portalIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the portal being accessed.

    A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-1000
    attachmentIDstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$required

    The ID of the attachment.

    An attachment ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits.

    Example: PROD-1000
    Query
    attachmentAdditionalAttributesArray of strings

    The attributes of an attachment to be returned, along with the default attachment details.

    AttributeDescription
    idUnique identifier for the attachment
    fileNameName of the file
    contentTypeContent type of the file
    sizeSize of the file in bytes
    linkLink to the attachment
    Items Enum"contentUrl""all"
    Examples:

    An additional attribute to be returned.

    attachmentAdditionalAttributes=contentUrl
    Headers
    x-egain-activity-idstring[ 4 .. 9 ] characters^[0-9]{4,9}$

    A unique numeric interaction identifier from eGain.

    Example: 59237
    x-ext-integration-idstring<= 40 characters^[\w\W]+$

    The unique numeric identifier for a tenant, used in self-service functionality as well as third-party integrations.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    x-ext-interaction-idstring<= 40 characters^[\w\W]+$

    A unique interaction identifier from other CRM applications.

    Note: The x-ext-integration-id and x-ext-interaction-id headers must always be provided together and cannot be supplied independently.

    The x-egain-activity-id may be provided on its own, or it may be provided along with both x-ext-integration-id and x-ext-interaction-id.

    Examples:
    3155180e-0c13-43e9-9c38-e9045bcbf176
    00Dbn00000IxGnx
    Accept-Languagestringrequired

    The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses).

    Enum"en-US""es-ES""fr-FR""it-IT""de-DE""nl-NL""pt-BR""pt-PT""da-DK""ru-RU"
    Example: en-US
    curl -i -X GET \
      'https://api.egain.cloud/knowledge/portalmgr/v4/portals/PROD-1000/suggestions/attachments/PROD-1000?attachmentAdditionalAttributes=contentUrl' \
      -H 'Accept-Language: en-US' \
      -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
      -H 'x-egain-activity-id: 59237' \
      -H 'x-ext-integration-id: string' \
      -H 'x-ext-interaction-id: string'

    Responses

    Success

    Bodyapplication/json
    idstring[ 7 .. 20 ] characters^[a-zA-Z0-9]{2,4}-\d{4,15}$

    The ID of the Attachment.

    Example: "PROD-1001"
    linkobject(Link)

    Defines the relationship between this resource and another object.

    fileNamestring[ 1 .. 255 ] characters

    The name of the Attachment file.

  • This must not exceed 255 characters.
  • sizeinteger(int32)[ 1 .. 26214400 ]

    The size of the Attachment.

  • Limited to 25MB.
  • contentUrlstring[ 1 .. 1024 ] characters

    The content URL of the Attachment. Download immediately, as this unique URL exists temporarily and can only be retrieved once before deletion.

    Response
    application/json
    { "link": { "rel": "self", "href": "/knowledge/portalmgr/v4/portals/PROD-1000/suggestions/attachments/PROD-1001" }, "fileName": "eightbank.png", "size": 45152, "id": "PROD-1001" }

    Topic

    Topic APIs

    Operations

    User Details

    User Details APIs

    Operations

    User Milestones

    User Milestones APIs

    Operations

    User Profile

    UserProfile APIs

    Operations

    Federated Search Event

    Federated Search Event API

    Operations

    Connectors Search Events

    Connectors Search Event APIs

    Operations

    Attachment

    Attachment Upload API

    Operations

    Export

    Content Export APIs

    Operations