@cognigy/rest-api-client 2025.22.0 → 2025.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/build/apigroups/SimulationAPIGroup_2_0.js +2 -1
  3. package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/azureOpenAIProviderOauth2Connection.js +3 -1
  4. package/build/shared/charts/descriptors/index.js +1 -0
  5. package/build/shared/charts/descriptors/service/agentTools/knowledgeTool.js +340 -0
  6. package/build/shared/charts/descriptors/service/aiAgent/aiAgentJob.js +3 -2
  7. package/build/shared/charts/descriptors/service/aiAgent/helpers/createToolDefinitions.js +28 -29
  8. package/build/shared/charts/descriptors/service/index.js +3 -1
  9. package/build/shared/charts/descriptors/service/llmPrompt/LLMPromptV2.js +3 -2
  10. package/build/shared/interfaces/IProfile.js +5 -1
  11. package/build/shared/interfaces/resources/INodeDescriptorSet.js +11 -1
  12. package/build/shared/interfaces/resources/settings/IAgentSettings.js +12 -7
  13. package/build/shared/interfaces/resources/settings/IPiiDataRedactionSettings.js +142 -0
  14. package/build/shared/interfaces/resources/settings/index.js +4 -1
  15. package/build/shared/interfaces/restAPI/resources/project/v2.0/settings/IAgentSettings_2_0.js +104 -0
  16. package/build/shared/interfaces/restAPI/simulation/persona/IGeneratePersonaFromTranscriptRest_2_0.js +20 -0
  17. package/dist/esm/apigroups/SimulationAPIGroup_2_0.js +2 -1
  18. package/dist/esm/shared/charts/descriptors/connectionNodes/generativeAIProviders/azureOpenAIProviderOauth2Connection.js +3 -1
  19. package/dist/esm/shared/charts/descriptors/index.js +2 -1
  20. package/dist/esm/shared/charts/descriptors/service/agentTools/knowledgeTool.js +338 -0
  21. package/dist/esm/shared/charts/descriptors/service/aiAgent/aiAgentJob.js +3 -2
  22. package/dist/esm/shared/charts/descriptors/service/aiAgent/helpers/createToolDefinitions.js +28 -29
  23. package/dist/esm/shared/charts/descriptors/service/index.js +1 -0
  24. package/dist/esm/shared/charts/descriptors/service/llmPrompt/LLMPromptV2.js +3 -2
  25. package/dist/esm/shared/interfaces/IProfile.js +4 -0
  26. package/dist/esm/shared/interfaces/resources/INodeDescriptorSet.js +11 -1
  27. package/dist/esm/shared/interfaces/resources/settings/IAgentSettings.js +16 -11
  28. package/dist/esm/shared/interfaces/resources/settings/IPiiDataRedactionSettings.js +139 -0
  29. package/dist/esm/shared/interfaces/resources/settings/index.js +5 -4
  30. package/dist/esm/shared/interfaces/restAPI/resources/project/v2.0/settings/IAgentSettings_2_0.js +103 -1
  31. package/dist/esm/shared/interfaces/restAPI/simulation/persona/IGeneratePersonaFromTranscriptRest_2_0.js +19 -0
  32. package/package.json +1 -1
  33. package/types/index.d.ts +241 -15
package/types/index.d.ts CHANGED
@@ -4137,6 +4137,23 @@ export interface IWebchat3EndpointLayoutSettings {
4137
4137
  * Configure the width of the Webchat in px
4138
4138
  */
4139
4139
  chatWindowWidth: number;
4140
+ /**
4141
+ * The URL that links to the logo
4142
+ * we display as the chatbot icon when using bottom right position
4143
+ */
4144
+ iconUrl: string;
4145
+ /**
4146
+ * The animation to apply to the chatbot icon
4147
+ */
4148
+ iconAnimation: string;
4149
+ /**
4150
+ * The interval to apply to the chatbot icon animation when using bottom right position
4151
+ */
4152
+ iconAnimationInterval: number;
4153
+ /**
4154
+ * The speed to apply to the chatbot icon animation when using bottom right position
4155
+ */
4156
+ iconAnimationSpeed: number;
4140
4157
  }
4141
4158
  export interface IWebchat3EndpointColorsSettings {
4142
4159
  /**
@@ -5638,6 +5655,8 @@ export interface ISharedSettings_2_0 {
5638
5655
  * example: "USD"
5639
5656
  * knowledgeAISettings:
5640
5657
  * $ref: '#/components/schemas/IKnowledgeAISettings_2_0'
5658
+ * piiDataRedactionSettings:
5659
+ * $ref: '#/components/schemas/IPiiDataRedactionSettings_2_0'
5641
5660
  *
5642
5661
  * IAgentSettings_2_0:
5643
5662
  * allOf:
@@ -5666,6 +5685,7 @@ export interface IAgentSettings_2_0 extends ISharedSettings_2_0 {
5666
5685
  currency: string;
5667
5686
  };
5668
5687
  knowledgeAISettings: IKnowledgeAISettings_2_0;
5688
+ piiDataRedactionSettings?: IPiiDataRedactionSettings_2_0;
5669
5689
  }
5670
5690
  /**
5671
5691
  * @openapi
@@ -5784,7 +5804,7 @@ export declare type TAudioPreviewProvider_2_0 = "microsoft" | "google" | "aws" |
5784
5804
  /**
5785
5805
  * The supporting optional fields are not shown in Open API documentation
5786
5806
  * as those are just place holders and not supported in iteration 1
5787
- */
5807
+ */
5788
5808
  export interface IAudioPreviewSettings_2_0 {
5789
5809
  provider: TAudioPreviewProvider_2_0;
5790
5810
  connections: {
@@ -5887,6 +5907,39 @@ export interface IKnowledgeAISettings_2_0 {
5887
5907
  fileExtractor: TFileExtractorOptions_2_0;
5888
5908
  azureDIConnectionId?: string;
5889
5909
  }
5910
+ declare enum EPiiBehaviorType {
5911
+ PREDEFINED_ALIAS = "predefined-alias",
5912
+ CUSTOM_ALIAS = "custom-alias"
5913
+ }
5914
+ export declare type IRedactionBehavior = {
5915
+ type: EPiiBehaviorType.PREDEFINED_ALIAS;
5916
+ customAlias: null;
5917
+ } | {
5918
+ type: EPiiBehaviorType.CUSTOM_ALIAS;
5919
+ customAlias: string;
5920
+ };
5921
+ export declare type IRedactionScope = {
5922
+ logs: boolean;
5923
+ analytics: boolean;
5924
+ };
5925
+ export interface IPiiFieldSettings {
5926
+ enabled: boolean;
5927
+ behavior: IRedactionBehavior;
5928
+ scope: IRedactionScope;
5929
+ name: string;
5930
+ }
5931
+ export interface ICustomPatternSettings extends Omit<IPiiFieldSettings, "enabled"> {
5932
+ regex: string;
5933
+ }
5934
+ export interface IPiiDataRedactionSettings_2_0 {
5935
+ emailAddress: IPiiFieldSettings;
5936
+ phoneNumber: IPiiFieldSettings;
5937
+ creditCard: IPiiFieldSettings;
5938
+ ssn: IPiiFieldSettings;
5939
+ ipAddressV4: IPiiFieldSettings;
5940
+ ipAddressV6: IPiiFieldSettings;
5941
+ customTypes?: Record<string, ICustomPatternSettings>;
5942
+ }
5890
5943
  /**
5891
5944
  * @openapi
5892
5945
  *
@@ -6017,12 +6070,12 @@ export interface IMongoosePaginationPluginReturnValue<T = any> {
6017
6070
  * total:
6018
6071
  * type: integer
6019
6072
  * example: 1
6020
- * next:
6073
+ * nextCursor:
6021
6074
  * allOf:
6022
6075
  * - $ref: '#/components/schemas/TMongoId'
6023
6076
  * nullable: true
6024
6077
  * example: 5ce7c2d833ea1e04d7e6c432
6025
- * previous:
6078
+ * previousCursor:
6026
6079
  * allOf:
6027
6080
  * - $ref: '#/components/schemas/TMongoId'
6028
6081
  * nullable: true
@@ -10148,6 +10201,7 @@ export declare type ValueOf<T> = T[keyof T];
10148
10201
  * @param excludeDataOnlyMessagesFilter: (optional) the roles for which data only messages (emtpy text field) will be excluded if type is input/output
10149
10202
  * @param useTextAlternativeForLLM: (optional) if true, graphical outputs will be included in the transcript, either using the value from the graphical description / fallbackText field, or by converting the data where possible
10150
10203
  * @param includeTextAlternativeInTranscript: (optional) if true, the text alternative for LLM will be included in the transcript
10204
+ * @param excludeUserEventMessages: (optional) if true, user event messages will be excluded from the transcript
10151
10205
  */
10152
10206
  export declare type TReadTranscriptOptions = {
10153
10207
  limit: number;
@@ -10155,6 +10209,7 @@ export declare type TReadTranscriptOptions = {
10155
10209
  excludeDataOnlyMessagesFilter?: (TranscriptRole.USER | TranscriptRole.AGENT | TranscriptRole.ASSISTANT)[];
10156
10210
  useTextAlternativeForLLM?: boolean;
10157
10211
  includeTextAlternativeInTranscript?: boolean;
10212
+ excludeUserEventMessages?: boolean;
10158
10213
  };
10159
10214
  declare enum TranscriptRole {
10160
10215
  ASSISTANT = "assistant",
@@ -10435,6 +10490,8 @@ export interface IAzureOpenAIProviderOauth2Fields {
10435
10490
  clientSecret: string;
10436
10491
  oauthUrl: string;
10437
10492
  scope: string;
10493
+ additionalHeaderName?: string;
10494
+ additionalHeaderValue?: string;
10438
10495
  }
10439
10496
  export interface IAlephAlphaProviderFields {
10440
10497
  token: string;
@@ -11752,7 +11809,7 @@ export declare type TNodeTagType = TCognigyNodeTagType | string;
11752
11809
  export interface INodeDescriptor<T extends INodeFunctionBaseParams = any, U extends string = string, FunctionParams extends INodeFunctionBaseParams = any> {
11753
11810
  _id?: TMongoId;
11754
11811
  type: U;
11755
- parentType?: string | null;
11812
+ parentType?: string | string[] | null;
11756
11813
  defaultLabel: string | INodeFieldTranslations;
11757
11814
  summary?: string | INodeFieldTranslations;
11758
11815
  appearance: INodeAppearance;
@@ -13292,14 +13349,6 @@ export interface IChart_2_0 {
13292
13349
  * extension:
13293
13350
  * type: string
13294
13351
  * example: "@cognigy/basic-nodes"
13295
- * enum:
13296
- * - "@cognigy/basic-nodes"
13297
- * - "@cognigy/mongodb"
13298
- * - "@cognigy/mssql"
13299
- * - "@cognigy/smtp"
13300
- * - "@cognigy/voicegateway"
13301
- * - "@cognigy/microsoft"
13302
- * - "@cognigy/voiceGateway2"
13303
13352
  * label:
13304
13353
  * type: string
13305
13354
  * example: A new Node
@@ -13361,6 +13410,7 @@ declare enum ConvertActionType {
13361
13410
  UPDATED = "updated"
13362
13411
  }
13363
13412
  export declare type TConvertAction = (typeof ConvertActionType)[keyof typeof ConvertActionType];
13413
+ export declare type TNodeConversionMetadata = Record<string, TConvertAction>;
13364
13414
  export interface IChartNodeBase {
13365
13415
  _id: TMongoId;
13366
13416
  referenceId: string;
@@ -13408,7 +13458,7 @@ export interface IChartNodeInDB extends Omit<IChartNode, "config" | "preview" |
13408
13458
  }
13409
13459
  export interface IReadChartNodeRestDataQuery_2_0 {
13410
13460
  preferredLocaleId?: string;
13411
- includeConversionMetadata?: boolean;
13461
+ includeConversionMetadata?: string;
13412
13462
  }
13413
13463
  export declare type IReadChartNodeRestDataParams_2_0<P extends string = "resourceId"> = {
13414
13464
  [key in P]: string;
@@ -13419,7 +13469,7 @@ export interface IReadChartNodeRestData_2_0 extends IReadChartNodeRestDataParams
13419
13469
  resourceType: TChartableResourceType;
13420
13470
  }
13421
13471
  export interface IReadChartNodeRestReturnValue_2_0<T extends INodeFunctionBaseParams = any> extends IChartNode_2_0<T> {
13422
- conversionMetadata?: Record<TNodeFieldType, TConvertAction>;
13472
+ conversionMetadata?: TNodeConversionMetadata;
13423
13473
  }
13424
13474
  export interface IReadChartRestData_2_0 extends IReadChartNodeRestDataQuery_2_0 {
13425
13475
  resourceId: string;
@@ -14270,7 +14320,7 @@ export declare type IGetAiAgentJobAndToolsRestReturnValue_2_0 = IAiAgentJobNodeW
14270
14320
  */
14271
14321
  export interface INodeDescriptor_2_0 {
14272
14322
  type: string;
14273
- parentType?: string;
14323
+ parentType?: string | string[];
14274
14324
  defaultLabel: string | INodeFieldTranslations;
14275
14325
  summary: string | INodeFieldTranslations;
14276
14326
  extension: string;
@@ -19966,6 +20016,10 @@ export interface IMemory {
19966
20016
  timestamp: string;
19967
20017
  text: string;
19968
20018
  }
20019
+ declare const profileTypes: readonly [
20020
+ "simulator"
20021
+ ];
20022
+ export declare type TProfileTypes = (typeof profileTypes)[number];
19969
20023
  /**
19970
20024
  * @openapi
19971
20025
  *
@@ -20079,6 +20133,10 @@ export interface IFlattenedProfile_2_0 {
20079
20133
  * $ref: '#/components/schemas/IFlattenedProfile_2_0'
20080
20134
  * active:
20081
20135
  * type: boolean
20136
+ * type:
20137
+ * type: string
20138
+ * enum:
20139
+ * - simulator
20082
20140
  * contactIds:
20083
20141
  * type: array
20084
20142
  * items:
@@ -20091,6 +20149,7 @@ export interface IFlattenedProfile_2_0 {
20091
20149
  export interface IProfileIndexItem_2_0 {
20092
20150
  _id: TMongoId;
20093
20151
  active: boolean;
20152
+ type?: TProfileTypes;
20094
20153
  profile: Partial<IFlattenedProfile_2_0>;
20095
20154
  projectId: TMongoId;
20096
20155
  lastChanged: number;
@@ -20946,10 +21005,14 @@ export interface IGetConversationCounterOrganisationRestReturnValue_3_0 {
20946
21005
  * type: number
20947
21006
  * processedCalls:
20948
21007
  * type: number
21008
+ * billableCalls:
21009
+ * type: number
20949
21010
  */
20950
21011
  export interface ICallCounterPreAggregatedValue_3_0 {
20951
21012
  /** The number of calls in the time-span */
20952
21013
  processedCalls: number;
21014
+ /** The number of billable calls in the time-span */
21015
+ billableCalls: number;
20953
21016
  /** The day, e.g., 1 for the first day in the month */
20954
21017
  day: number;
20955
21018
  /** The month of the year, e.g., 1 for January */
@@ -23492,6 +23555,7 @@ export interface IScheduleSimulationRestDataBody_2_0 {
23492
23555
  largeLanguageModelReferenceId?: string;
23493
23556
  userId?: string;
23494
23557
  finalPing?: number;
23558
+ data?: Record<string, unknown>;
23495
23559
  };
23496
23560
  projectReference: string;
23497
23561
  numberOfExecutions: number;
@@ -23787,6 +23851,167 @@ export interface IGenerateBulkPersonaRestReturnValue_2_0 {
23787
23851
  missionTypesCount: number;
23788
23852
  };
23789
23853
  }
23854
+ /**
23855
+ * POST /testing/beta/personas/from-transcript
23856
+ *
23857
+ * Create a scenario draft by analyzing a conversation transcript. The system uses LLM to extract user intent,
23858
+ * conversation goals, and user characteristics from the transcript, then generates an appropriate persona package.
23859
+ *
23860
+ * The endpoint supports:
23861
+ * - Fetching transcript via sessionId from analytics service (RPC call)
23862
+ * - Direct transcript content via transcriptContent
23863
+ * - Optional flow context for enhanced persona generation
23864
+ * - Content safety validation (warnings only, non-blocking)
23865
+ *
23866
+ * Priority: If both sessionId and transcriptContent are provided, sessionId takes precedence.
23867
+ *
23868
+ * operationId: createScenarioFromTranscript
23869
+ * tags: Personas
23870
+ */
23871
+ export interface IGeneratePersonaFromTranscriptRestData_2_0 {
23872
+ /**
23873
+ * Project reference for context identification (alternative to projectId query parameter)
23874
+ */
23875
+ projectReference?: string;
23876
+ /**
23877
+ * Session identifier to retrieve transcript from analytics service.
23878
+ * If provided, takes precedence over transcriptContent.
23879
+ */
23880
+ sessionId?: string;
23881
+ /**
23882
+ * Direct transcript content. Optional if sessionId is provided.
23883
+ */
23884
+ transcriptContent?: {
23885
+ /**
23886
+ * Array of conversation messages
23887
+ */
23888
+ messages: Array<{
23889
+ /**
23890
+ * Message source type:
23891
+ * - 'user' (customer)
23892
+ * - 'bot' (AI agent)
23893
+ * - 'agent' (live human agent)
23894
+ * - 'suggestion' (system suggestion)
23895
+ */
23896
+ source: "user" | "bot" | "agent" | "suggestion";
23897
+ /**
23898
+ * Message content
23899
+ */
23900
+ content: string;
23901
+ /**
23902
+ * Message timestamp (ISO 8601 format)
23903
+ */
23904
+ timestamp: string;
23905
+ }>;
23906
+ };
23907
+ /**
23908
+ * Optional: Flow ID to associate with and extract agent context for enhanced generation
23909
+ */
23910
+ flowId?: string;
23911
+ /**
23912
+ * Optional: Number of success criteria to generate
23913
+ * @default 3
23914
+ * @minimum 1
23915
+ * @maximum 10
23916
+ */
23917
+ numberOfSuccessCriteria?: number;
23918
+ /**
23919
+ * Optional analysis configuration
23920
+ */
23921
+ analysisOptions?: {
23922
+ /**
23923
+ * Limit transcript to first N turns (default: no limit)
23924
+ * @minimum 1
23925
+ */
23926
+ maxTurns?: number;
23927
+ /**
23928
+ * Focus analysis on extracting user goals (default: true)
23929
+ */
23930
+ focusOnUserGoals?: boolean;
23931
+ };
23932
+ }
23933
+ export interface IGeneratePersonaFromTranscriptRestReturnValue_2_0 {
23934
+ /**
23935
+ * Whether the generation was successful
23936
+ */
23937
+ success: boolean;
23938
+ /**
23939
+ * Generated persona package
23940
+ */
23941
+ personaPackage: {
23942
+ /**
23943
+ * Generated simulation name
23944
+ */
23945
+ simulationName: string;
23946
+ /**
23947
+ * Generated persona name
23948
+ */
23949
+ personaName: string;
23950
+ /**
23951
+ * Generated persona description capturing user characteristics
23952
+ */
23953
+ personaDescription: string;
23954
+ /**
23955
+ * Generated mission based on user goals
23956
+ */
23957
+ mission: string;
23958
+ /**
23959
+ * Generated success criteria
23960
+ */
23961
+ successCriteria: Array<{
23962
+ /**
23963
+ * Success criterion name
23964
+ */
23965
+ name: string;
23966
+ /**
23967
+ * Success criterion description
23968
+ */
23969
+ text: string;
23970
+ }>;
23971
+ };
23972
+ /**
23973
+ * Analysis metadata
23974
+ */
23975
+ metadata: {
23976
+ /**
23977
+ * Brief summary of the analyzed transcript
23978
+ */
23979
+ transcriptSummary: string;
23980
+ /**
23981
+ * When the analysis was performed (ISO 8601 format)
23982
+ */
23983
+ analysisTimestamp: string;
23984
+ /**
23985
+ * Content safety warnings (if any)
23986
+ */
23987
+ warnings?: string[];
23988
+ /**
23989
+ * Number of turns in the transcript
23990
+ */
23991
+ turnCount: number;
23992
+ /**
23993
+ * User intents/goals extracted from transcript
23994
+ */
23995
+ extractedIntents: string[];
23996
+ /**
23997
+ * Original transcript messages
23998
+ */
23999
+ messages: Array<{
24000
+ /**
24001
+ * Message source: 'user', 'bot', 'agent', or 'suggestion'
24002
+ */
24003
+ source: "user" | "bot" | "agent" | "suggestion";
24004
+ /**
24005
+ * Message content
24006
+ */
24007
+ content: string;
24008
+ /**
24009
+ * Message timestamp (ISO 8601 format)
24010
+ */
24011
+ timestamp: string;
24012
+ }>;
24013
+ };
24014
+ }
23790
24015
  export interface IStopSimulationRunBatchRestDataQuery_2_0 {
23791
24016
  projectId: string;
23792
24017
  }
@@ -23815,6 +24040,7 @@ export interface SimulationAPIGroup_2_0 {
23815
24040
  generatePersona: TRestAPIOperation<IGeneratePersonaRestData_2_0, IGeneratePersonaRestReturnValue_2_0>;
23816
24041
  regeneratePersonaField: TRestAPIOperation<IRegeneratePersonaFieldRestData_2_0, IRegeneratePersonaFieldRestReturnValue_2_0>;
23817
24042
  generateBulkPersona: TRestAPIOperation<IGenerateBulkPersonaRestData_2_0, IGenerateBulkPersonaRestReturnValue_2_0>;
24043
+ generatePersonaFromTranscript: TRestAPIOperation<IGeneratePersonaFromTranscriptRestData_2_0, IGeneratePersonaFromTranscriptRestReturnValue_2_0>;
23818
24044
  }
23819
24045
  declare function SimulationAPIGroup_2_0(instance: Base): SimulationAPIGroup_2_0;
23820
24046
  export declare type TRestAPIGroupsTypeByConfiguration<T extends IRestAPIClientConfig> = TResourceAPIVersionType<T> & TJWTAuthAPIVersionType<T> & TInsightsAPIVersionType<T> & TMetricsAPIVersionType<T> & TSessionAPIVersionType<T> & TExternalAPIVersionType<T> & TAdministrationAPIVersionType<T> & TManagementAPIVersionType<T> & TAnalyticsAPIVersionType<T> & TAIOpsCenterAPIVersionType<T> & TSimulationAPIVersionType<T>;