@cognigy/rest-api-client
Version:
Cognigy REST-Client
88 lines • 3.84 kB
JavaScript
/* Custom Modules */
import { createQuerySchema } from "../helper/createQuerySchema";
export const organisationDataPrivacySettingsSchema = {
title: "organisationDataPrivacySettingsSchema",
type: "object",
additionalProperties: false,
properties: {
enabled: { type: "boolean" },
useAnalytics: { type: "boolean" },
storeDataPayload: { type: "boolean" },
useContactProfiles: { type: "boolean" },
useConversations: { type: "boolean" },
maskIPAddress: { type: "boolean" },
maskAnalytics: { type: "boolean" },
maskLogging: { type: "boolean" },
ignoreList: {
type: "array",
items: { type: "string" },
additionalItems: false,
minItems: 0
}
}
};
export const organisationPasswordPolicySchema = {
title: "organisationPasswordPolicySchema",
type: "object",
additionalProperties: false,
properties: {
maxAmountIdenticalCharacters: {
type: "integer",
minimum: 0,
maximum: 999
},
maxLength: { type: "integer", minimum: 0, maximum: 999 },
minAmountFailedAttemptsAutoDisable: {
type: "integer",
minimum: 0,
maximum: 999
},
minAmountLowerCase: { type: "integer", minimum: 0, maximum: 999 },
minAmountNumbers: { type: "integer", minimum: 0, maximum: 999 },
minAmountSpecialCharacters: { type: "integer", minimum: 0, maximum: 999 },
minAmountUpperCase: { type: "integer", minimum: 0, maximum: 999 },
minLength: { type: "integer", minimum: 0, maximum: 999 }
}
};
export const organisationDataSchema = {
title: "organisationDataSchema",
type: "object",
additionalProperties: false,
properties: {
contactProfileTTLInMinutes: { type: "integer", minimum: 0 },
conversationTTLInMinutes: { type: "integer", minimum: 0 },
analyticsTTLInMinutes: { type: "integer", minimum: 0 },
sessionsTTLInMinutes: { type: "integer", minimum: 0 },
stepEventsTTLInMinutes: { type: "integer", minimum: 0 },
disabled: { type: "boolean" },
name: { type: "string", minLength: 1, format: "resource-name" },
passwordPolicy: organisationPasswordPolicySchema,
quotaMaxChannelsPerProject: { type: "integer", minimum: 0 },
quotaMaxMessagesPerDay: { type: "integer", minimum: 0 },
quotaMaxProjects: { type: "integer", minimum: 0 },
quotaMaxUsers: { type: "integer", minimum: 0 },
quotaMaxKnowledgeChunks: { type: "integer", minimum: 0 },
sessionStateTTLInMinutes: { type: "integer", minimum: 0 },
billingTimezone: { type: "string", format: "timezone" },
dataPrivacySettings: organisationDataPrivacySettingsSchema,
maxTTLValues: {
type: "object",
properties: {
contactProfileTTLInMinutes: { type: "integer", minimum: 0 },
conversationTTLInMinutes: { type: "integer", minimum: 0 },
analyticsTTLInMinutes: { type: "integer", minimum: 0 },
sessionsTTLInMinutes: { type: "integer", minimum: 0 },
stepEventsTTLInMinutes: { type: "integer", minimum: 0 },
sessionStateTTLInMinutes: { type: "integer", minimum: 0 }
}
}
}
};
export const organisationSchema = {
title: "organisationSchema",
type: "object",
additionalProperties: false,
properties: Object.assign(Object.assign({ _id: { format: "mongo-id" } }, organisationDataSchema.properties), { liveAgentAccount: { type: "number" }, voiceGatewayAccount: { type: "string" } })
};
export const organisationQuerySchema = createQuerySchema("organisationQuerySchema", organisationSchema);
//# sourceMappingURL=IOrganisation.js.map