openapi: 3.2.0 info: title: Communications Template APIs API description: Unified Communications APIs version: '1.0' servers: - url: https://api.everbridge.net/managerapps/communications/v1 tags: - name: Template APIs paths: /templates/: get: tags: - Template APIs operationId: getTemplates summary: List templates description: List available Comms templates. parameters: - in: query name: name schema: type: string description: Filters by the name of the template. Returns any category that contains any word provided in `name` by default. - in: query name: exactName schema: type: boolean description: Filters by the name of the template.Returns the template exact match the name. - in: query name: status schema: type: string enum: - DRAFT - LIVE description: Filter the record set by the status of the template. If `status` is not provided, then the record set will include all templates. - in: query name: category schema: type: array items: type: string description: Filter the records returned by the categories. If `categories` is not specified, then the record set will include all categories of templates. - in: query name: eventType schema: type: array items: type: string description: Filter the records returned by the event types. If `eventTypes` is not specified, then the record set will include all eventTypes of templates. - in: query name: messageType schema: type: array items: type: string enum: - Conference - Quota - Polling - Standard description: Filter the records returned by the message types. If `messageType` is not specified, then the record set will include all messageType of templates. - in: query name: automatable schema: type: boolean description: Filters templates by whether they are automatable. A template is automatable when its status is `LIVE`, it has a non-empty message, and it has either public messages or recipients. - in: query name: responseId schema: type: string description: Filters templates by response management ID, which is resolved through the crisis event service before querying templates. - in: query name: sortBy schema: type: string enum: - created - updated - category - name - lastUsed description: 'The field to sort the result set by. See `sortDirection` for adjusting the order in which the result set is sorted. Defaults to `CREATED`.' - in: query name: sortDirection schema: type: string enum: - ASC - ASCENDING - DESC - DESCENDING description: 'The order by which to sort the result set by. `ASC` and `ASCENDING` have the same effect of ordering the values in ascending order; additionally, `DESC` and `DESCENDING` also have the same effect of ordering the values in descending order. See `sortBy` for details on changing which field is used in sorting. Defaults to `DESCENDING`.' - in: query name: pageSize schema: type: integer format: int32 minimum: 1 maximum: 100 description: The size of each page of search results. Defaults to ten records. - in: query name: pageNumber schema: type: integer format: int32 minimum: 1 description: The requested page number out of the total number of pages. Defaults to the first page, which is page number 1. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ApiPaginatedResponse' '400': description: 'Invalid value for: header Authorization, Invalid value for: body' content: text/plain: schema: type: string security: - API_Authorizer: [] x-amazon-apigateway-integration: type: http_proxy connectionId: 11ofco httpMethod: GET uri: https://prod-us-us-east-1-0-os-nginx.ue1-0.prod-us.prod.us-east-1.evbg.io/cem-comms/communications/templates responses: default: statusCode: '200' passthroughBehavior: when_no_match connectionType: VPC_LINK head: tags: - Template APIs operationId: Check matched templates exist or not summary: query templates description: Check matched templates exist or not. parameters: - in: query name: name schema: type: string description: Filters by the name of the template. If there is any record match the value ,will return 200. - in: query name: exactName schema: type: boolean description: Filters by the name of the template. If there is any record exact match the name ,will return 200. - in: query name: status schema: type: string enum: - DRAFT - LIVE description: Filter the record set by the status of template. If there is any record exact match the status ,will return 200 - in: query name: category schema: type: array items: type: string description: Filter the records returned by the categories. If there is any record exact match the category ,will return 200. - in: query name: eventType schema: type: array items: type: string description: Filter the records returned by the event types. If there is any record exact match the status ,will return 200 - in: query name: messageType schema: type: array items: type: string enum: - Conference - Quota - Polling - Standard description: Filter the records returned by the message types. If `messageTypes` is not specified, then the record set will include all messageType of templates. - in: query name: responseId schema: type: string description: Filters templates by response management ID, which is resolved through the crisis event service before querying templates. responses: '200': description: '' content: application/json: schema: type: string '400': description: 'Invalid value for: header Authorization, Invalid value for: parameters' content: text/plain: schema: type: string '404': description: There are not matched templates content: text/plain: schema: type: string security: - API_Authorizer: [] x-amazon-apigateway-integration: type: http_proxy connectionId: 11ofco httpMethod: HEAD uri: https://prod-us-us-east-1-0-os-nginx.ue1-0.prod-us.prod.us-east-1.evbg.io/cem-comms/communications/templates responses: default: statusCode: '200' passthroughBehavior: when_no_match connectionType: VPC_LINK post: tags: - Template APIs operationId: createTemplate summary: Create Template description: Create a new Comms template. requestBody: content: application/json: schema: $ref: '#/components/schemas/TemplateCreateRequest' examples: Creating a Draft Template without Permissions and Variables: summary: Create a Draft template without permissions and variables. value: name: May 2nd, 2015 - Earthquake - Galesburg, Michigan description: Earthquake in Michigan. priority: Normal eventTypes: - Earthquake status: DRAFT category: Disaster publicSafety: true message: contents: - type: Textual contentType: text/plain title: Earthquake in Galesburg, Michigan content: An earthquake was reported in Galesburg, Michigan. Assess the situation and await further communication. paths: - CATEGORY:EMAIL recipients: contacts: - type: ExternalId externalId: jsmith1 - type: Id id: '873461568734615' - type: Name firstName: Jimi lastName: Hendrix publicUsers: - type: SemanticQuery command: type: SemanticQuery subscribedToIds: - 6858fdb7d988820e9d08db7b Creating a Live Template with Permissions and Variables: summary: Create a Live template. value: name: May 2nd, 2015 - Earthquake - Galesburg, Michigan description: Earthquake in Michigan. priority: Normal eventTypes: - Earthquake status: LIVE category: Disaster publicSafety: true message: contents: - type: Textual contentType: text/plain title: Earthquake in Galesburg, Michigan content: An earthquake was reported in Galesburg, Michigan. Assess the situation and await further communication. paths: - CATEGORY:EMAIL recipients: contacts: - type: ExternalId externalId: jsmith1 - type: Id id: '873461568734615' - type: Name firstName: Jimi lastName: Hendrix permissions: message: EDIT settings: VIEW recipients: ADD_REMOVE publicMessage: webWidget: VIEW alertUs: NONE genericOneWay: EDIT audioBulletinBoard: VIEW memberPortal: EDIT network: VIEW socialMedia: ADD_REMOVE variables: - variableId: location value: Galesburg, Michigan permission: EDIT required: true type: CUSTOM - variableId: severity value: High permission: VIEW required: false type: CUSTOM required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/CommsResponse' '400': description: 'Invalid value for: header Authorization, Invalid value for: body' content: text/plain: schema: type: string security: - API_Authorizer: [] x-amazon-apigateway-integration: type: http_proxy connectionId: 11ofco httpMethod: POST uri: https://prod-us-us-east-1-0-os-nginx.ue1-0.prod-us.prod.us-east-1.evbg.io/cem-comms/communications/templates responses: default: statusCode: '200' passthroughBehavior: when_no_match connectionType: VPC_LINK /templates/{templateId}: get: tags: - Template APIs operationId: getTemplate summary: Get template description: Retrieves the details of an existing Comms template parameters: - name: templateId in: path required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/TemplateDetail' '400': description: Invalid templateId content: text/plain: schema: type: string '404': description: resource could not be found content: text/plain: schema: type: string security: - API_Authorizer: [] x-amazon-apigateway-integration: type: http_proxy connectionId: 11ofco httpMethod: GET uri: https://prod-us-us-east-1-0-os-nginx.ue1-0.prod-us.prod.us-east-1.evbg.io/cem-comms/communications/templates/{templateId} responses: default: statusCode: '202' requestParameters: integration.request.path.templateId: method.request.path.templateId passthroughBehavior: when_no_match connectionType: VPC_LINK patch: tags: - Template APIs operationId: partial update Template summary: Partial Update Template description: partial Updates an existing Comms template. requestBody: content: application/json: schema: $ref: '#/components/schemas/TemplateUpdateRequest' examples: Update Template Status: summary: Update the status of a template to LIVE. value: status: LIVE Update Recipients of the template: summary: Update the recipients of a template. value: recipients: contacts: - type: ExternalId externalId: newuser123 - type: Id id: '987654321' Update Name and Description of the template: summary: Update the name and description of a template. value: name: Updated Template Name description: Updated description for the template. required: true parameters: - name: templateId in: path required: true schema: type: string responses: '202': description: '' content: application/json: schema: $ref: '#/components/schemas/CommsResponse' '400': description: 'Invalid value for: header Authorization, Invalid value for templateId, Invalid value for : body' content: text/plain: schema: type: string '404': description: Resource could not be found content: text/plain: schema: type: string security: - API_Authorizer: [] x-amazon-apigateway-integration: type: http_proxy connectionId: 11ofco httpMethod: PATCH uri: https://prod-us-us-east-1-0-os-nginx.ue1-0.prod-us.prod.us-east-1.evbg.io/cem-comms/communications/templates/{templateId} responses: default: statusCode: '202' requestParameters: integration.request.path.templateId: method.request.path.templateId passthroughBehavior: when_no_match connectionType: VPC_LINK delete: tags: - Template APIs operationId: deleteTemplate summary: Delete Template description: Delete an existing Comms template. parameters: - name: templateId in: path required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/CommsResponse' '400': description: 'Invalid value for: header Authorization, Invalid value for templateId' content: text/plain: schema: type: string '404': description: Resource could not be found content: text/plain: schema: type: string security: - API_Authorizer: [] x-amazon-apigateway-integration: type: http_proxy connectionId: 11ofco httpMethod: DELETE uri: https://prod-us-us-east-1-0-os-nginx.ue1-0.prod-us.prod.us-east-1.evbg.io/cem-comms/communications/templates/{templateId} responses: default: statusCode: '200' requestParameters: integration.request.path.templateId: method.request.path.templateId passthroughBehavior: when_no_match connectionType: VPC_LINK /templates/{templateId}/{representationId}: patch: tags: - Template APIs operationId: updateTemplateRepresentation summary: Update template representation description: Updates an existing template representation in an existing Comms template. parameters: - name: templateId in: path required: true schema: type: string - name: representationId in: path required: true schema: type: string responses: '202': description: '' content: application/json: schema: $ref: '#/components/schemas/CommsResponse' '400': description: 'Invalid value for: header Authorization, Invalid value for: query parameter action' content: text/plain: schema: type: string security: - API_Authorizer: [] x-amazon-apigateway-integration: type: http_proxy connectionId: 11ofco httpMethod: PATCH uri: https://prod-us-us-east-1-0-os-nginx.ue1-0.prod-us.prod.us-east-1.evbg.io/cem-comms/communications/templates/{templateId}/{representationId} responses: default: statusCode: '202' requestParameters: integration.request.path.templateId: method.request.path.templateId integration.request.path.representationId: method.request.path.representationId passthroughBehavior: when_no_match connectionType: VPC_LINK /templates/convert: post: tags: - Template APIs operationId: convert legacyTemplate summary: Convert legacyTemplate description: Convert a legacy template (including templates of type IC and MN) into a new Comms template structure. This API accepts the identifier of a legacy template and transforms its data into the standardized Comms template format, preserving relevant fields and content. The conversion process ensures compatibility with the Comms Template APIs, enabling legacy templates to be managed, updated, and used within the new system. Use this endpoint to migrate existing legacy templates to the Comms template. requestBody: content: application/json: schema: $ref: '#/components/schemas/TemplateConvertRequest' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/TemplateDetail' '400': description: Invalid legacy type or id content: text/plain: schema: type: string '404': description: resource could not be found content: text/plain: schema: type: string security: - API_Authorizer: [] x-amazon-apigateway-integration: type: http_proxy connectionId: 11ofco httpMethod: POST uri: https://prod-us-us-east-1-0-os-nginx.ue1-0.prod-us.prod.us-east-1.evbg.io/cem-comms/communications/templates/convert responses: default: statusCode: '200' passthroughBehavior: when_no_match connectionType: VPC_LINK /templates/{templateId}/plans: get: tags: - Template APIs operationId: get-template-plans summary: Get template plans description: Retrieve a list of plans using the template parameters: - name: templateId in: path required: true schema: type: string description: The identifier of the communication template responses: '200': description: An array of communication plans using the template. content: application/json: schema: $ref: '#/components/schemas/PlanList' examples: plans: value: - id: 4e274d1d-c714-4a58-ac50-e28e424656f9 nane: plan 1 description: plan 1 for earthquake phases: - NEW - id: 5f274d1d-c714-4a58-ac50-e28e424656f9 nane: plan 2 '404': description: The communication could not be found. content: application/json: schema: $ref: '#/components/schemas/CommsResponse' examples: templateNotFound: value: errorCode: '404' message: The specified template does not exist. '500': description: An internal error has occurred. content: application/json: schema: $ref: '#/components/schemas/CommsResponse' security: - API_Authorizer: [] x-amazon-apigateway-integration: type: http_proxy connectionId: 11ofco httpMethod: GET uri: https://prod-us-us-east-1-0-os-nginx.ue1-0.prod-us.prod.us-east-1.evbg.io/cem-comms/communications/templates/{templateId}/plans responses: default: statusCode: '200' requestParameters: integration.request.path.templateId: method.request.path.templateId passthroughBehavior: when_no_match connectionType: VPC_LINK /templates/lookup: post: tags: - Template APIs operationId: lookupTemplates summary: Lookup templates by IDs description: Returns a list of templates matching the provided IDs. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TemplateLookupRequest' responses: '200': description: A list of matching templates. content: application/json: schema: type: array items: $ref: '#/components/schemas/TemplateBase' '400': description: Invalid request. content: application/json: schema: $ref: '#/components/schemas/CommsResponse' '500': description: An internal error has occurred. content: application/json: schema: $ref: '#/components/schemas/CommsResponse' security: - API_Authorizer: [] x-amazon-apigateway-integration: type: http_proxy connectionId: 11ofco httpMethod: POST uri: https://prod-us-us-east-1-0-os-nginx.ue1-0.prod-us.prod.us-east-1.evbg.io/cem-comms/communications/templates/lookup responses: default: statusCode: '200' passthroughBehavior: when_no_match connectionType: VPC_LINK components: schemas: MessageContent: required: - contents type: object description: Notification message content that is included within the communication. If a `templateId` is present, this value becomes optional and will override the template's message content if provided. properties: conferenceBridgeId: type: string description: The ID of a conference bridge for recipients to join. Retrieve conference bridge IDs from the [Everbridge List Conference Bridges API](https://developers.everbridge.net/internal/reference/ebs-list-conference-bridges). Note that this property is mutually exclusive with `questionnaire`; both may not be set in the same communication. questionnaire: type: object description: A list of answers to a provided question for recipients to respond with during confirmation. Note that this property is mutually exclusive with `conferenceBridgeId`; both may not be set in the same communication. required: - answers properties: answers: type: array items: type: object required: - name properties: name: type: string description: The user-friendly text of the questionnaire answer. responseQuota: type: integer description: Defines a minimum number of recipients that must respond with this questionnaire answer. questionText: type: string description: The text prompt to display to recipients when they are responding to the questionnaire. contents: type: array description: The bodies of the notification message shown to recipients. There may be multiple `Textual` message bodies but at most one `Audio` message body and/or at most one `WebPage` message body. items: anyOf: - $ref: '#/components/schemas/AudioMessageBody' - $ref: '#/components/schemas/TextualMessageBody' - $ref: '#/components/schemas/WebPageMessageBody' AudioBulletinBoardPublicMessage: type: object description: The ABB public message content. required: - title - body - settingId properties: title: type: string description: The title of abb. body: type: string description: The core content of abb. settingId: type: string description: The setting id of abb that defined in setting page. audioKey: type: string description: 'The system-generated audio Key referring to the audio file for this message. ' expires: type: string description: How long the message expires. This is in formatted in the ISO 8601 "duration" format. example: PT5H AlertUsSetting: type: object description: The rest alert us setting content required: - id - profileId properties: id: type: string description: The identity of alert us rest setting that pre-defined on alert us setting page. profileId: type: string description: The profile identity of alert us rest setting that pre-defined on alert us setting page.. duration: type: string description: The duration of the message,This is in formatted in the ISO 8601 "duration" format. example: PT5H groupNames: type: array description: The group name of alert us. items: type: string ApiSettings: type: object description: Settings that adjust how the communication is sent to the recipients. properties: id: type: string description: An optional ID of a preexisting set of settings. If provided along with any other settings in this object, the settings are merged so that any settings defined in this request override those stored in the settings at the given ID. defaultLanguage: $ref: '#/components/schemas/SupportedLanguages' sender: $ref: '#/components/schemas/SenderSettings' delivery: $ref: '#/components/schemas/DeliverySettings' recipientInteraction: $ref: '#/components/schemas/RecipientSettings' ContactRecipientId: type: object description: Refers to a contact recipient by its contact ID. required: - type - id properties: type: type: string description: Must be set to exactly `Id`. enum: - Id id: type: string description: The contact ID from the [Everbridge Contacts API](https://developers.everbridge.net/internal/reference/ebs-list-contacts). TextOnlyPathCategory: type: string description: A group of contact path types that only support textual messaging. enum: - CATEGORY:BUSINESSMESSAGINGAPPS - CATEGORY:COMMON - CATEGORY:EMAIL - CATEGORY:MOBILEAPP - CATEGORY:PLAINTEXT - CATEGORY:SMS ApiDeliveryPathPrompt: type: object description: The unique description, provided by the organization, for the delivery path. required: - type - prompt properties: type: type: string description: Must be set to exactly `Prompt`. enum: - Prompt prompt: type: string description: The unique description, provided by the organization, for the delivery path. WebPageMessageBody: allOf: - $ref: '#/components/schemas/LaunchMessageBody' - type: object description: '' required: - type - content - paths properties: attachments: type: array description: A set of system-generated IDs representing previously uploaded attachments. Note that attachments are aggregated across all message bodies (i.e. every message body gets the same attachments). items: type: string type: type: string description: A generic classifier of the message body, further refined by `contentType`. Must be set to exactly `WebPage`. enum: - WebPage content: type: string description: Text content to use as the body of the web page. paths: type: array description: A set of contact delivery path types or path categories that this message body should be sent to. items: type: string enum: - CATEGORY:SMS usePrefix: type: boolean description: If set to true, will prefix the message with organization-specific text prior to including the web page URL. Defaults to false. additionalContent: type: string description: Optional additional plain text content to send with the initial message. Not included in the web page. PlanList: type: array items: $ref: '#/components/schemas/Plan' TemplateDetail: type: object properties: id: type: string name: type: string organizationId: type: string description: type: string status: type: string priority: type: string publicSafety: type: boolean category: type: string eventType: type: string type: type: string created: type: string createdBy: type: string createdByName: type: string updated: type: string updatedBy: type: string updatedByName: type: string createdRoleId: type: string updatedRoleId: type: string lastUsed: type: string automatable: type: boolean description: Whether the template is automatable. A template is automatable when its status is `LIVE`, it has a non-empty message, and it has either public messages or recipients. automationBlockingReasons: type: array description: Reasons the template is not automatable. items: type: string enum: - MISSING_RECIPIENT - MISSING_MESSAGE - STATUS_NOT_LIVE variables: type: array items: type: object properties: variableId: type: string description: The ID of the variable. value: description: The template-specific default value of the variable. Must be valid based on the variable's definition in the Variable Library. oneOf: - type: string - type: array items: type: string permission: type: string enum: - VIEW - EDIT - ADD_REMOVE description: "Permission level for users launching a communication for this template:\n\n * `VIEW`: The variable is read-only to users.\n * `EDIT`: The variable value may be changed prior to launching a communication but the variable may not be removed from the communication.\n * `ADD_REMOVE`: The variable may be removed from the communication prior to launch." required: type: boolean description: If true, then the variable must have a value set to be used in a communication. The value may be set just prior to launch, on the template itself, or within the Variable Library; the value used depends on the `permission` setting. type: type: string enum: - CUSTOM - CONTEXT deprecated: true description: "Determines whether or not a variable is from the Variable Library (`CUSTOM`) or from a context (`CONTEXT`).\n\n This field is deprecated and will be removed in a later version of this API." settings: $ref: '#/components/schemas/ApiSettings' message: $ref: '#/components/schemas/MessageContent' recipients: $ref: '#/components/schemas/LaunchRecipients' publicMessages: type: array description: The bodies of the public message. Each type at most has one body. items: anyOf: - $ref: '#/components/schemas/WebWidgetPublicMessage' - $ref: '#/components/schemas/AlertUsPublicMessage' - $ref: '#/components/schemas/GenericOneWayPublicMessage' - $ref: '#/components/schemas/AudioBulletinBoardPublicMessage' - $ref: '#/components/schemas/SocialMediaPublicMessage' - $ref: '#/components/schemas/MemberPortalPublicMessage' - $ref: '#/components/schemas/NetworkPublicMessage' - $ref: '#/components/schemas/CAPPublicMessage' permissions: $ref: '#/components/schemas/TemplatePermission' phase: type: string description: Optional template phase. The valid values are NEW, UPDATE, CLOSE if defined. planCount: type: integer format: int64 description: The number of plans associated with this template. canUpdate: type: boolean canDelete: type: boolean GroupRecipientId: type: object description: Refers to a group of contact recipients by a group ID. required: - type - id properties: type: type: string description: Must be set to exactly `Id`. enum: - Id id: type: string description: The contact group ID from the [Everbridge Groups API](https://developers.everbridge.net/internal/reference/ebs-list-groups). Facebook: type: object description: The Facebook custom message content. properties: body: type: string description: The core content sent to facebook. imageId: type: string description: The system-generated image ID referring to the image file that will be sent to facebook image: $ref: '#/components/schemas/ContentAttachment' PublicMessagePermission: type: object properties: webWidget: type: string enum: - NONE - VIEW - EDIT - ADD_REMOVE description: 'Controls how users can interact with this part of the template when launching a communication: - `NONE` or `VIEW`: Users can use this data but cannot modify it. - `EDIT`: Users can modify this data. - `ADD_REMOVE`: Users can add or remove this data.' alertUs: type: string enum: - NONE - VIEW - EDIT - ADD_REMOVE description: 'Controls how users can interact with this part of the template when launching a communication: - `NONE` or `VIEW`: Users can use this data but cannot modify it. - `EDIT`: Users can modify this data. - `ADD_REMOVE`: Users can add or remove this data.' genericOneWay: type: string enum: - NONE - VIEW - EDIT - ADD_REMOVE description: 'Controls how users can interact with this part of the template when launching a communication: - `NONE` or `VIEW`: Users can use this data but cannot modify it. - `EDIT`: Users can modify this data. - `ADD_REMOVE`: Users can add or remove this data.' audioBulletinBoard: type: string enum: - NONE - VIEW - EDIT - ADD_REMOVE description: 'Controls how users can interact with this part of the template when launching a communication: - `NONE` or `VIEW`: Users can use this data but cannot modify it. - `EDIT`: Users can modify this data. - `ADD_REMOVE`: Users can add or remove this data.' memberPortal: type: string enum: - NONE - VIEW - EDIT - ADD_REMOVE description: 'Controls how users can interact with this part of the template when launching a communication: - `NONE` or `VIEW`: Users can use this data but cannot modify it. - `EDIT`: Users can modify this data. - `ADD_REMOVE`: Users can add or remove this data.' network: type: string enum: - NONE - VIEW - EDIT - ADD_REMOVE description: 'Controls how users can interact with this part of the template when launching a communication: - `NONE` or `VIEW`: Users can use this data but cannot modify it. - `EDIT`: Users can modify this data. - `ADD_REMOVE`: Users can add or remove this data.' socialMedia: type: string enum: - NONE - VIEW - EDIT - ADD_REMOVE description: 'Controls how users can interact with this part of the template when launching a communication: - `NONE` or `VIEW`: Users can use this data but cannot modify it. - `EDIT`: Users can modify this data. - `ADD_REMOVE`: Users can add or remove this data.' LaunchMessageBody: type: object required: - contentType - title properties: contentType: type: string description: "A MIME type, defined in IETF's [RFC 6838](https://datatracker.ietf.org/doc/html/rfc6838), that describes the content type (e.g. `text/plain` for plain text or `audio/ogg` for an audio file). The content types that are valid for a given message body depends on the `type` of the message body:\n * `AudioMessageBody`: Supports only `audio` MIME types with any of its supported contact delivery path types.\n * `TextualMessageBody`: Supports only `text` MIME types with any of its supported contact delivery path types; for audio-only contact delivery path types, the text content will be translated to spoken audio via text-to-speech.\n * `WebPageMessageBody`: Supports only `text` MIME types with any of its supported contact delivery path types." title: type: string description: A title for the notification. For audio messages, this is used for display purposes within the Everbridge portal. minLength: 1 maxLength: 255 SemanticQuery: allOf: - $ref: '#/components/schemas/Command' description: A query use for generating a CEM Result built with semantic logic type: object properties: type: type: string description: The type of command to execute enum: - SemanticQuery inArea: $ref: '#/components/schemas/Geometry' starting: type: string format: date-time description: Optional start time for bounding the query. Affects some locations and travel itineraries. ending: type: string format: date-time description: Optional end time for bounding the query. Affects some locations and travel itineraries. ofTypeIds: type: array items: type: string description: A list of contact or asset type IDs to filter the results by. tagged: type: array items: type: string description: A list of tags to filter the results by. inPropertyIds: type: array items: type: string description: A list of property IDs to filter the results by. withProperties: type: array items: anyOf: - $ref: '#/components/schemas/CemResultsBooleanPropertyQuery' - $ref: '#/components/schemas/CemResultsNumberPropertyQuery' - $ref: '#/components/schemas/CemResultsStringPropertyQuery' description: A list of property IDs to filter the results by. named: type: array items: anyOf: - $ref: '#/components/schemas/CemResultsCompleteName' description: A list of names to filter the results by. identified: type: array items: type: string description: A list of identifiers to filter the results by. memberOfIds: type: array items: type: number description: A list of groups IDs to find members of. withLocationTypes: type: array items: anyOf: - $ref: '#/components/schemas/CemResultsStaticLocationType' - $ref: '#/components/schemas/CemResultsLastKnownLocationType' - $ref: '#/components/schemas/CemResultsExpectedLocationType' - $ref: '#/components/schemas/CemResultsTravelLocationType' description: A list of location types to filter the results by. ofRuleIds: type: array items: type: number description: A list of rules to filter the results by. isExpatriate: type: boolean description: If true, include expatriates in the results for contact result sets. isVip: type: boolean description: If true, include VIPs in the results for contact result sets. subscribedToIds: type: array items: type: string description: A list of public feed IDs to retrieve subscribers for. Only applicable to `publicuser` result sets. forZipCodes: type: array items: type: string description: A list of zipcodes to filter subscribers. Only applicable to `publicuser` result set. sendToAorSubscriptions: type: boolean description: If true, include org area-of-responsibility subscriptions. Only applicable to `publicuser` result set. ApiDeliveryPath: description: Delivery paths are ordered methods of contacting recipients, such as "work email" or "home phone". anyOf: - $ref: '#/components/schemas/ApiDeliveryPathPathId' - $ref: '#/components/schemas/ApiDeliveryPathPrompt' NetworkPublicMessage: type: object description: The Network public message content. required: - body - networkEffectTypes - affectedAreas - groupIds properties: body: type: string description: The core content of network. networkEffectTypes: type: array description: ' The type of network effect' items: type: string enum: - PUBLIC - NETWORK_GROUP affectedAreas: type: string description: The shape content. groupIds: type: array description: The groupIds defined in network setting page. items: type: string CemResultsStaticLocationType: type: object description: Specifies how to include contacts with static location types in CEM Results. required: - type properties: type: type: string description: Must be set to exactly `Static`. enum: - Static locationTypeIds: type: array description: A list of static location type IDs. items: type: number includeMissingLocationTypeId: type: boolean description: If true, include results that do not have a static location type. MemberPortalPublicMessage: type: object description: The member portal public message content. required: - body - includeSelectedMapShape properties: body: type: string description: The core content that displayed on public member public message page. includeSelectedMapShape: type: boolean description: 'Whether include the map defined in recipient part ' ContentAttachment: type: object properties: fileId: type: string fileName: type: string mimeType: type: string downloadUrl: type: string size: type: integer format: int64 AudioMessageBody: allOf: - $ref: '#/components/schemas/LaunchMessageBody' - type: object required: - type - attachmentId - paths properties: attachmentId: type: string description: The system-generated attachment ID referring to the audio file for this message. type: type: string description: A generic classifier of the message body, further refined by `contentType`. Must be set to exactly `Audio`. enum: - Audio paths: type: array description: A set of contact delivery path types that this message body should be sent to. items: $ref: '#/components/schemas/AudioOnlyPathCategory' Command: type: object required: - type properties: type: type: string description: The type of command to execute RuleRecipientId: type: object description: Refers to a group of contact rules (filters) by an ID. Retrieve contact rule IDs using the [Everbridge Contact Filters API](https://developers.everbridge.net/internal/reference/ebs-v1-contact-filters) required: - type - id properties: type: type: string description: Must be set to exactly `Id`. enum: - Id id: type: string description: The contact rule (filter) ID. SenderSettings: type: object description: Specify what recipients will see as the "sender" of the notifications sent from the communication (e.g. caller ID upon receiving a phone call.) properties: email: type: object description: Configuration elements that control the display of the sender in email notifications. properties: name: type: string description: The display name used in email notifications. replyToEmail: type: string description: The "reply to" email address to use for email notifications. voice: type: array description: Configuration elements that control the display of the caller in phone call notifications. items: $ref: '#/components/schemas/VoiceSettings' sms: type: array description: Configuration elements that control the display of the sender in SMS notifications. items: $ref: '#/components/schemas/SmsSettings' SmsSettings: type: object description: The SMS short code or phone number shown to recipients of text messages. required: - countryCode - smsId properties: countryCode: type: string description: The ISO 3166 two-letter code for the country where this phone number is valid. Please refer to [the Wikipedia page on ISO 3166 country codes](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes) for valid values. smsId: type: string description: The SMS ID to use when sending SMS messages to recipients residing in the country specified by `countryCode`. pattern: '^[a-zA-Z0-9]+(?: [a-zA-Z0-9]+)?$' minLength: 1 maxLength: 11 ApiPaginatedResponse: type: object description: A page of data from an endpoint. properties: data: type: array items: $ref: '#/components/schemas/TemplateBase' pages: type: object properties: currentPage: type: number description: The requested page number. pageSize: type: number description: The requested page size. pageCount: type: number description: The number of elements in the current page. totalPages: type: number description: The total number of pages available for request. maxSize: type: number description: The maximum size of a single page that is allowed by the API. totalCount: type: number description: The total number of elements across all pages. DeliverySettings: type: object description: Settings that adjust the way that notifications are delivered to recipients. properties: paths: type: array description: A list of contact delivery paths to use in notifying recipients. Refer to the [Everbridge List Contact Paths API](https://developers.everbridge.net/internal/reference/ebs-list-contact-paths) to find contact delivery paths for an organization. items: $ref: '#/components/schemas/ApiDeliveryPath' pathOrder: type: string description: Determines which ordering of delivery paths are used for this notification. enum: - CONTACT - ORGANIZATION - CUSTOM ttl: type: string description: "The amount of time, beginning at the communication's launch, to continue sending notifications (\"time-to-live\"). This is in formatted in the ISO 8601 \"duration\" format and must be specified as a number of whole hours.\n Supports a minimum value of one minute up to a maximum value of five days." example: PT5H deliveryRetries: type: integer description: The number of attempts to contact recipients that haven't responded. maximum: 20 pathInterval: type: string description: How long the system should wait before attempting to contact the next device in a recipient's delivery paths. This is in formatted in the ISO 8601 "duration" format. enum: - PT0M - PT1M - PT2M - PT3M - PT5M - PT10M - PT15M deliveryInterval: type: string description: "How long the system should wait before attempting another delivery starting from the beginning of a recipient's delivery paths.\n Supported values are 0 minutes, 1 minute, 2 minutes, or multiples of 5 minutes up to 60 minutes." example: PT15M applyThrottle: type: boolean description: If set to true, will throttle the number of phone calls made. quietTimeOverride: type: boolean description: If set to true, then notifications from this communication will ignore recipients' quiet time settings (i.e. phone calls will be made despite the recipient opting to only receive them during a certain time range.) ResultSetQueryRecipients: type: object description: An ID of an existing CEM Results result set where the contacts cached within the result set are included as recipients in the communication. required: - type - id properties: type: type: string description: Must be set to exactly `ResultSet`. enum: - ResultSet id: type: string description: A valid result set ID. Must represent a set of entities that can be contacted (e.g. contacts, not assets). example: evbg+result:contact:cemp-1234567890abcdef01234567-abcdef01-2345-6789-abcd-ef0123456789:1697471720114 RecipientSettings: type: object description: Settings that adjust how recipients respond to the communication. properties: confirm: type: boolean description: Request that recipients confirm that the notification was received. smsCallback: type: boolean description: Request that SMS recipients call to confirm delivery. voiceMailOption: type: string description: "Control how the system responds if it is sent to a recipient's voicemail inbox:\n * `MESSAGEONLY`: Leave a message but do not consider the notification confirmed.\n * `MESSAGEWITHCONFIRMATION`: Leave a message and consider the notification confirmed.\n * `NOMESSAGE`: Do not leave a message; the notification is not confirmed." enum: - MESSAGEONLY - MESSAGEWITHCONFIRMATION - NOMESSAGE mobileSettings: type: object properties: requestImage: type: boolean description: Request an image of recipients and their surroundings. requestLocation: type: boolean description: Request that recipients share their location. allowShare: type: boolean description: Allow recipients to share the message with others. requireConfirm: type: boolean description: Require that recipients confirm receipt. requestComment: type: boolean description: Request that recipients reply to the notification with a brief description of their status. CemResultsBooleanPropertyQuery: allOf: - $ref: '#/components/schemas/CemResultsPropertyQuery' - type: object required: - type description: Provides querying against boolean properties in Contacts and Assets. properties: type: type: string description: Must be set to exactly `Boolean`. enum: - Boolean value: type: boolean description: A boolean value to match against the properties. ContactRecipientExternalId: type: object description: Refers to a contact recipient by its contact external ID. required: - type - externalId properties: type: type: string description: Must be set to exactly `ExternalId`. enum: - ExternalId externalId: type: string description: The organization-provided contact external ID from the [Everbridge Contacts API](https://developers.everbridge.net/internal/reference/ebs-list-contacts). TemplateLookupRequest: type: object properties: ids: description: An array of template identifiers to lookup. The maximum number of IDs allowed is 100. type: array items: type: string sortBy: type: string enum: - created - updated - category - name - lastUsed sortDirection: type: string enum: - ASC - ASCENDING - DESC - DESCENDING required: - ids GroupRecipientName: type: object description: Refers to a group of contact recipients by a name as shown in the [Everbridge Groups API](https://developers.everbridge.net/internal/reference/ebs-list-groups). required: - type - name properties: type: type: string description: Must be set to exactly `Name`. enum: - Name name: type: string description: The name of the contact group. CemResultsPropertyQuery: type: object required: - ids properties: ids: type: array description: The IDs of the properties to query by. LaunchRecipients: type: object description: 'Describes the recipients of notifications from the communication. At least one recipient must be provided when `Mode` is `LIVE` or `SIMULATION`. **Note:** When specifying `recipients` in conjunction with a `templateId` in a request, the recipients specified here in the request will _replace_ any recipients defined in the template. Omitting `recipients` in the request will result in Communications using the recipients from the specified template. If the desired functionality is a merged set of recipients between the template and the request, the recipients from the template must be combined into a single `recipients` object in the request.' properties: contacts: type: array items: anyOf: - $ref: '#/components/schemas/ContactRecipientExternalId' - $ref: '#/components/schemas/ContactRecipientId' - $ref: '#/components/schemas/ContactRecipientName' - $ref: '#/components/schemas/ResultSetQueryRecipients' description: A set of contact to send notifications to regardless of any other criteria. publicUsers: type: array items: anyOf: - $ref: '#/components/schemas/SemanticQuery' - $ref: '#/components/schemas/ResultSetQueryRecipients' description: A set of `publicuser` queries that contain a set of `publicuser` to send notifications to. excluded: type: object description: Specifies recipients to exclude from notifications. properties: contacts: type: array items: anyOf: - $ref: '#/components/schemas/ContactRecipientExternalId' - $ref: '#/components/schemas/ContactRecipientId' - $ref: '#/components/schemas/ContactRecipientName' - $ref: '#/components/schemas/ResultSetQueryRecipients' description: A set of contacts to exclude from notifications. groups: type: array items: anyOf: - $ref: '#/components/schemas/GroupRecipientId' - $ref: '#/components/schemas/GroupRecipientName' - $ref: '#/components/schemas/ResultSetQueryRecipients' description: A set of contact groups to send notifications to regardless of any other criteria. query: type: array items: anyOf: - $ref: '#/components/schemas/ResultSetQueryRecipients' - $ref: '#/components/schemas/SemanticQuery' description: A set of contact queries that contain a set of contacts to send notifications to. rules: type: array items: anyOf: - $ref: '#/components/schemas/RuleRecipientId' - $ref: '#/components/schemas/RuleRecipientName' - $ref: '#/components/schemas/ResultSetQueryRecipients' description: A set of contact rules (filters) to use when determining a set of contacts to send notifications to. alert: type: array items: anyOf: - $ref: '#/components/schemas/ResultSetQueryRecipients' description: A set of affected contacts from a CEM Alert. Twitter: type: object description: The Twitter custom message content. properties: body: type: string description: The core content sent to twitter.. imageId: type: string description: The system-generated image ID referring to the image file that will be sent to twitter webPageMessage: type: string description: The web page message sent to twitter image: $ref: '#/components/schemas/ContentAttachment' CemResultsLastKnownLocationType: type: object description: Specifies how to include contacts with "Last Known" location types in CEM Results. required: - type properties: type: type: string description: Must be set to exactly `LastKnown`. enum: - LastKnown locationSourceIds: type: array description: A list of location source IDs. items: type: number TemplatePermission: type: object properties: message: type: string enum: - NONE - VIEW - EDIT - ADD_REMOVE description: 'Controls how users can interact with this part of the template when launching a communication: - `NONE` or `VIEW`: Users can use this data but cannot modify it. - `EDIT`: Users can modify this data. - `ADD_REMOVE`: Users can add or remove this data.' settings: type: string enum: - NONE - VIEW - EDIT - ADD_REMOVE description: 'Controls how users can interact with this part of the template when launching a communication: - `NONE` or `VIEW`: Users can use this data but cannot modify it. - `EDIT`: Users can modify this data. - `ADD_REMOVE`: Users can add or remove this data.' recipients: type: string enum: - NONE - VIEW - EDIT - ADD_REMOVE description: 'Controls how users can interact with this part of the template when launching a communication: - `NONE` or `VIEW`: Users can use this data but cannot modify it. - `EDIT`: Users can modify this data. - `ADD_REMOVE`: Users can add or remove this data.' publicMessage: $ref: '#/components/schemas/PublicMessagePermission' CemResultsStringPropertyQuery: allOf: - $ref: '#/components/schemas/CemResultsPropertyQuery' - type: object required: - type description: Provides querying against string properties in Contacts and Assets. properties: type: type: string description: Must be set to exactly `String`. enum: - String values: type: array description: The values to match against the properties. items: type: string WebWidgetPublicMessage: type: object description: The web widget public message content. required: - title - body - stream properties: title: type: string description: The title of web widget message. body: type: string description: The core content of web widget message. ewwEndDate: type: string description: end date as an ISO 8601-compliant value to custom end data of web widget message.This value must be after the current date example: '2024-07-07T20:06:09.734385Z' stream: type: string description: The steam of web widget message. duration: type: string description: The amount of time, beginning at the web widget message launch, to expiring the message. This is in formatted in the ISO 8601 "duration" format. example: PT5H SupportedLanguages: type: string description: "A combined language and region tag that signifies the default language to use when selecting a message body to send to a recipient.\n *Note:* Currently, all communication message bodies in a single communication are signified as being spoken or written in the language defined in this property." default: en_US enum: - ar_SA - bn_BD - cy_GB - da_DK - de_DE - el_GR - en_GB - en_US - es_ES - es_US - fi_FI - fr_FR - he_IL - ht_HT - id_ID - it_IT - ja_JP - ko_KR - nl_NL - no_NO - pl_PL - pt_BR - pt_PT - ru_RU - sv_SE - th_TH - tr_TR - uk_UA - ur_PK - vi_VN - yi_US - zh_CN VoiceSettings: type: object description: The caller ID number displayed when contacting recipients via phone. required: - countryCode - callerId - default properties: countryCode: type: string description: The ISO 3166 two-letter code for the country where this phone number is valid. Please refer to [the Wikipedia page on ISO 3166 country codes](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes) for valid values. callerId: type: string description: The caller ID phone number in E. 164 format. default: type: boolean description: If true, then this is the caller ID number used when no other applies. Plan: type: object properties: id: type: string name: type: string description: type: string phases: type: array items: type: string CemResultsNumberPropertyQuery: allOf: - $ref: '#/components/schemas/CemResultsPropertyQuery' - type: object required: - type description: Provides querying against numeric properties in Contacts and Assets. properties: type: type: string description: Must be set to exactly `Number`. enum: - Number lowerBound: type: number description: A lower bound to match against the properties. upperBound: type: number description: An upper bound to match against the properties. ApiDeliveryPathPathId: type: object description: A unique identifier for the delivery path. required: - type - pathId properties: type: type: string description: Must be set to exactly `PathId`. enum: - PathId pathId: type: string description: The path ID itself. ContactRecipientName: type: object description: Refers to a contact recipient by their name as shown in the [Everbridge Contacts API](https://developers.everbridge.net/internal/reference/ebs-list-contacts). required: - type - firstName - lastName properties: type: type: string description: Must be set to exactly `Name`. enum: - Name firstName: type: string description: The contact's first or given name. middleInitial: type: string description: The contact's middle initial. lastName: type: string description: The contact's last name or surname. suffix: type: string description: A suffix to the contact's name. example: Jr. CommsResponse: required: - id type: object properties: id: type: string description: The ID of the communication that was launched. SocialMediaPublicMessage: type: object description: The social media public message content. required: - tokenIds - incLink properties: body: type: string description: The title of social media. tokenIds: type: array description: The tokens of social media ,it can contain the token of both twitter and facebook. items: type: string incLink: type: boolean description: Whether the message publish to social media contains a link imageId: type: string description: The system-generated image ID referring to the image file for this message.. customContents: type: array description: The bodies of the custom social media Each type at most has one item. items: anyOf: - $ref: '#/components/schemas/Facebook' - $ref: '#/components/schemas/Twitter' RuleRecipientName: type: object description: Refers to a contact rule (filter) by its name. Retrieve contact rule names using the [Everbridge Contact Filters API](https://developers.everbridge.net/internal/reference/ebs-v1-contact-filters) required: - type - name properties: type: type: string description: Must be set to exactly `Name`. enum: - Name name: type: string description: The name of the contact rule (filter). CAPPublicMessage: type: object description: A CAP public-message body targeted at one or more CAP modalities (paths). Shared CAP transport metadata is carried under `cap`. Multiple CAP public messages are allowed as long as their paths do not overlap. required: - paths - cap properties: body: type: string description: The CAP message body for the targeted modalities. paths: type: array description: The CAP delivery modalities this body applies to. A modality may be targeted by at most one CAP public message. items: type: string enum: - IPAWS - CAP_GOOGLE - CAP_RSS cap: $ref: '#/components/schemas/CapContent' TextualMessageBody: allOf: - $ref: '#/components/schemas/LaunchMessageBody' - type: object required: - type - content - paths properties: attachments: type: array description: A set of system-generated IDs representing previously uploaded attachments. Note that attachments are aggregated across all message bodies (i.e. every message body gets the same attachments). items: type: string type: type: string description: A generic classifier of the message body, further refined by `contentType`. Must be set to exactly `Textual`. enum: - Textual content: type: string description: Text content to use as the body of the notification message. usePrefix: type: boolean description: If set to true, will prefix the message with organization-specific text prior to including the web page URL. Defaults to false. Currently only applies to message bodies with the `SMS` path category. paths: type: array description: "A set of contact delivery path types that this message body should be sent to.\n*Note*: Textual messages that are delivered to recipients using Audio path categories are read using text-to-speech. Text-to-speech is not available for the following languages:\n * Bengali (`bn_BD`)\n * Hebrew (`he_IL`)\n * Haitian Creole (`ht_HT`)\n * Indonesian (`id_ID`)\n * Thai (`th_TH`)\n * Ukrainian (`uk_UA`)\n * Urdu (`ur_PK`)\n * Vietnamese (`vi_VN`)\n * Yiddish (`yi_US`)" items: anyOf: - $ref: '#/components/schemas/AudioOnlyPathCategory' - $ref: '#/components/schemas/TextOnlyPathCategory' GenericOneWayPublicMessage: type: object description: The GenericOneWay public message content. required: - title - body - receiveUrls properties: title: type: string description: The title of generic one way. body: type: string description: The core content of generic one way. receiveUrls: type: string description: The receive url list of generic one way. items: type: string TemplateBase: type: object required: - name properties: id: type: string name: type: string organizationId: type: string description: type: string status: type: string publicSafety: type: boolean priority: type: string category: type: string eventType: type: string type: type: string created: type: string createdBy: type: string createdByName: type: string updated: type: string updatedBy: type: string updatedByName: type: string createdRoleId: type: string updatedRoleId: type: string phase: type: string description: Optional template phase. The valid values are NEW, UPDATE, CLOSE if defined. automatable: type: boolean description: Whether the template is automatable. A template is automatable when its status is `LIVE`, it has a non-empty message, and it has either public messages or recipients. automationBlockingReasons: type: array description: Reasons the template is not automatable. items: type: string enum: - MISSING_RECIPIENT - MISSING_MESSAGE - STATUS_NOT_LIVE planCount: type: integer format: int64 description: The number of plans associated with this template. canUpdate: type: boolean canDelete: type: boolean CemResultsTravelLocationType: type: object description: Specifies how to include contacts with travel location types in CEM Results. required: - type properties: type: type: string description: Must be set to exactly `Travel`. enum: - Travel domesticInternationalStatuses: type: array description: A list of domestic international travel statuses. items: type: string localTravelStatuses: type: array description: A list of local travel statuses. items: type: string travelTypes: type: array description: Depicts whether a contact is arriving, departing, or transitioning to a location. items: type: string enum: - Arrival - Departure - Transit segmentTypes: type: array description: Depicts a contact's mode of transportation to a location. items: type: string enum: - Car - Hotel - Air - Rail CapContent: type: object description: Shared CAP transport metadata for a public-safety delivery instance. The public-comms webpage shortUrl is not part of this content; it is system-generated and returned at the communication detail level. required: - capCategory - capEventType - capEventCode - capSeverity - capUrgency - capCertainty properties: capCategory: type: string description: CAP category. capEventType: type: string description: CAP event type. capEventCode: type: string description: CAP event code. capSeverity: type: string description: CAP severity. capUrgency: type: string description: CAP urgency. capCertainty: type: string description: CAP certainty. CemResultsExpectedLocationType: type: object description: Specifies how to include contacts with expected location types in CEM Results. required: - type properties: type: type: string description: Must be set to exactly `Expected`. enum: - Expected TemplateConvertRequest: type: object required: - templateId properties: name: type: string TemplateCreateRequest: type: object required: - name properties: name: type: string description: The name of the template. Must be unique within the current organization. This is the only required field in the create request. description: type: string description: Optional template description. When provided, it must satisfy validation rules. category: type: string description: Optional template category. When provided, it must satisfy validation rules. eventTypes: type: array items: type: string description: Optional event types for the template. When provided, each value must exist in the event type library. status: type: string enum: - DRAFT - LIVE description: Optional template status. When omitted, the default is DRAFT. When provided, it must be a valid status. priority: type: string description: Optional template priority. When omitted, the default is NORMAL. When provided, it must be a valid priority. publicSafety: type: boolean description: Optional public safety flag. When provided, it must satisfy validation rules. variables: type: array description: Optional template variables. When provided, they must satisfy validation rules. items: type: object properties: variableId: type: string description: The ID of the variable. value: description: The template-specific default value of the variable. Must be valid based on the variable's definition in the Variable Library. oneOf: - type: string - type: array items: type: string permission: type: string enum: - VIEW - EDIT - ADD_REMOVE description: "Permission level for users launching a communication for this template:\n\n * `VIEW`: The variable is read-only to users.\n * `EDIT`: The variable value may be changed prior to launching a communication but the variable may not be removed from the communication.\n * `ADD_REMOVE`: The variable may be removed from the communication prior to launch." required: type: boolean description: If true, then the variable must have a value set to be used in a communication. The value may be set just prior to launch, on the template itself, or within the Variable Library; the value used depends on the `permission` setting. type: type: string enum: - CUSTOM - CONTEXT deprecated: true description: "Determines whether or not a variable is from the Variable Library (`CUSTOM`) or from a context (`CONTEXT`).\n\n This field is deprecated and will be removed in a later version of this API." settings: $ref: '#/components/schemas/ApiSettings' description: Optional template settings. When provided, they must satisfy validation rules. message: $ref: '#/components/schemas/MessageContent' description: Optional message content. When provided, it must satisfy validation rules. recipients: $ref: '#/components/schemas/LaunchRecipients' description: Optional recipients. When provided, they must satisfy validation rules. publicMessages: type: array description: Optional public message bodies. When provided, they must satisfy validation rules. Each type at most has one body. items: anyOf: - $ref: '#/components/schemas/WebWidgetPublicMessage' - $ref: '#/components/schemas/AlertUsPublicMessage' - $ref: '#/components/schemas/GenericOneWayPublicMessage' - $ref: '#/components/schemas/AudioBulletinBoardPublicMessage' - $ref: '#/components/schemas/SocialMediaPublicMessage' - $ref: '#/components/schemas/MemberPortalPublicMessage' - $ref: '#/components/schemas/NetworkPublicMessage' - $ref: '#/components/schemas/CAPPublicMessage' permissions: $ref: '#/components/schemas/TemplatePermission' description: 'Optional template part permissions. When omitted, defaults are applied: message/settings/recipients default to VIEW, and each publicMessages permission defaults to EDIT.' phase: type: string description: Optional template phase. Valid values are NEW, UPDATE, CLOSE. When provided, it must satisfy validation rules. TemplateUpdateRequest: type: object description: Partial update request for a template. Omit a field to leave it unchanged. Set a nullable field to null to clear its value when the field supports clearing. Provide a non-null value to update it. When a field is provided, it must satisfy validation rules. properties: name: type: string description: Updates the template name. Omit this field to leave the current name unchanged. description: type: - string - 'null' description: Updates the template description. Omit this field to leave it unchanged, or set it to null to clear it. category: type: - string - 'null' description: Updates the template category. Omit this field to leave it unchanged, or set it to null to clear it. eventTypes: type: - array - 'null' items: type: string description: Updates the template event types. Omit this field to leave them unchanged, or set it to null to clear them. status: type: - string - 'null' enum: - DRAFT - LIVE description: Updates the template status. Omit this field to leave it unchanged. Set it to null to clear it, which falls back to the default status DRAFT. If the current template is LIVE and has active reservations, the status cannot be changed to DRAFT and cannot be cleared to null. priority: type: - string - 'null' description: Updates the template priority. Omit this field to leave it unchanged, or set it to null to clear it. publicSafety: type: - boolean - 'null' description: Updates the public safety flag. Omit this field to leave it unchanged, or set it to null to clear it. variables: type: - array - 'null' description: Updates template variables. Omit this field to leave them unchanged, or set it to null to clear them. items: type: object properties: variableId: type: string description: The ID of the variable. value: description: The template-specific default value of the variable. Must be valid based on the variable's definition in the Variable Library. oneOf: - type: string - type: array items: type: string permission: type: string enum: - VIEW - EDIT - ADD_REMOVE description: "Permission level for users launching a communication for this template:\n\n * `VIEW`: The variable is read-only to users.\n * `EDIT`: The variable value may be changed prior to launching a communication but the variable may not be removed from the communication.\n * `ADD_REMOVE`: The variable may be removed from the communication prior to launch." required: type: boolean description: If true, then the variable must have a value set to be used in a communication. The value may be set just prior to launch, on the template itself, or within the Variable Library; the value used depends on the `permission` setting. type: type: string enum: - CUSTOM - CONTEXT deprecated: true description: "Determines whether or not a variable is from the Variable Library (`CUSTOM`) or from a context (`CONTEXT`).\n\n This field is deprecated and will be removed in a later version of this API." settings: allOf: - $ref: '#/components/schemas/ApiSettings' description: Updates template settings. Omit this field to leave them unchanged, or set it to null to clear them. message: allOf: - $ref: '#/components/schemas/MessageContent' description: Updates message content. Omit this field to leave it unchanged, or set it to null to clear it. recipients: allOf: - $ref: '#/components/schemas/LaunchRecipients' description: Updates recipients. Omit this field to leave them unchanged, or set it to null to clear them. publicMessages: type: - array - 'null' description: Updates the bodies of the public message. Omit this field to leave them unchanged, or set it to null to clear them. Each type at most has one body. items: anyOf: - $ref: '#/components/schemas/WebWidgetPublicMessage' - $ref: '#/components/schemas/AlertUsPublicMessage' - $ref: '#/components/schemas/GenericOneWayPublicMessage' - $ref: '#/components/schemas/AudioBulletinBoardPublicMessage' - $ref: '#/components/schemas/SocialMediaPublicMessage' - $ref: '#/components/schemas/MemberPortalPublicMessage' - $ref: '#/components/schemas/NetworkPublicMessage' - $ref: '#/components/schemas/CAPPublicMessage' permissions: $ref: '#/components/schemas/TemplatePermission' phase: type: - string - 'null' description: Updates the template phase. The valid values are NEW, UPDATE, CLOSE. Omit this field to leave it unchanged, or set it to null to clear it. CemResultsCompleteName: type: object description: Used to describe a contact's complete name in a CEM Results query. required: - type - first - last properties: type: type: string description: Must be set to exactly `Complete`. enum: - Complete first: type: string description: The first name of the contact. last: type: string description: The last name of the contact. middleInitial: type: string description: The middle initial of the contact. suffix: type: string description: The suffix of the contact's name, such as "Jr." or "III". Geometry: type: object description: A geojson representation of a map shape. AlertUsPublicMessage: type: object description: The AlertUs public message content. required: - title - body properties: title: type: string description: The title of web widget message. body: type: string description: The core content of web widget message. alertUsSettingId: type: string description: The soap web setting id that defined in setting page alertUsRestSetting: type: array description: The rest setting configuration list of alert us items: $ref: '#/components/schemas/AlertUsSetting' AudioOnlyPathCategory: type: string description: A group of contact path types that only support audio messaging. enum: - CATEGORY:VOICE securitySchemes: API_Authorizer: type: apiKey name: Authorization in: header x-amazon-apigateway-authtype: custom x-amazon-apigateway-authorizer: authorizerUri: arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:214792946631:function:API_Authorizer_us-east-1_prod:live/invocations authorizerCredentials: arn:aws:iam::214792946631:role/comms-unified-gateway-prod-us-us-east-1-0-us-east-1-gw authorizerResultTtlInSeconds: 300 identitySource: method.request.header.Authorization,method.request.header.PathCacheKey,method.request.header.MethodCacheKey type: request api_key: type: apiKey name: x-api-key in: header x-readme: explorer-enabled: true proxy-enabled: true