Skip to content

Sending an Alert with a Polygon

1. Retrieve the default Alert Settings for the authorized Sender

POST - /api/v2/alerts/defaults

{
  "alertType": "Default"
}
{
  "item": {
    "fields": [
      {
        "name": "template",
        "required": false,
        "invisible": false,
        "readonly": false,
        "systemRequired": false,
        "autofill": false
      },
      {
        "name": "sender",
        "required": false,
        "invisible": false,
        "readonly": false,
        "systemRequired": false,
        "autofill": false
      },
      {
        "name": "recipients",
        "required": true,
        "invisible": false,
        "readonly": false,
        "systemRequired": false,
        "autofill": false
      },
      {
        "name": "geoFencing",
        "required": false,
        "invisible": false,
        "readonly": false,
        "systemRequired": false,
        "autofill": false
      },
      {
        "name": "priority",
        "required": false,
        "invisible": false,
        "readonly": false,
        "systemRequired": false,
        "autofill": false
      },
      {
        "name": "subject",
        "required": true,
        "invisible": false,
        "readonly": false,
        "systemRequired": false,
        "autofill": false
      },
      {
        "name": "message",
        "required": true,
        "invisible": false,
        "readonly": false,
        "systemRequired": false,
        "autofill": false
      },
      {
        "name": "channels",
        "required": true,
        "invisible": false,
        "readonly": false,
        "systemRequired": false,
        "autofill": false
      },
      {
        "name": "social",
        "required": false,
        "invisible": false,
        "readonly": false,
        "systemRequired": false,
        "autofill": false
      },
      {
        "name": "publicAttachments",
        "required": false,
        "invisible": false,
        "readonly": false,
        "systemRequired": false,
        "autofill": false
      }
    ],
    "alertType": "Default",
    "channels": {
      "email": {
        "requestConfirmation": false,
        "send": true
      },
      "fax": {
        "send": false
      },
      "push": {
        "send": true
      },
      "textMessage": {
        "primary": true,
        "secondary": true,
        "deliveryMethod": "Sms",
        "send": true
      },
      "voice": {
        "cellPhone": true,
        "businessPhone": true,
        "homePhone": true,
        "useOptOut": false,
        "send": false
      },
      "etn": {
        "publicUsers": false,
        "importUsers": false,
        "directoryUsers": false,
        "send": false
      },
      "facebook": {
        "accountIds": [],
        "pageIds": [],
        "send": false
      },
      "twitter": {
        "accountIds": [],
        "send": false
      },
      "nextdoor": {
        "accounts": [],
        "send": false
      },
      "myAlertsApp": {
        "send": false
      }
    },
    "clientContext": {
      "isResend": false,
      "clientId": "OpenAPI-Generator%2F1.0.0%2Fcsharp"
    },
    "formType": "Quick",
    "facilities": {
      "facilities": [],
      "areas": []
    },
    "message": {
      "priority": "Emergency",
      "basic": {
        "subject": "CivicReady Alert",
        "message": ""
      },
      "files": [],
      "language": "en-us",
      "translate": true
    },
    "recipients": {
      "uniqueMyAlertsAppCount": 0,
      "uniqueEtnCount": 0,
      "uniqueGroupCount": 0,
      "uniqueContactCount": 0,
      "selectedContactCount": 0,
      "selectedGroupCount": 0,
      "groupIds": [],
      "mandatoryGroupIds": [],
      "contactIds": [],
      "groups": [],
      "contacts": [],
      "directories": [],
      "searchFilters": []
    },
    "schedule": {
      "scheduled": false,
      "duration": 1440,
      "type": "Hickory"
    },
    "sender": {
      "id": 0,
      "displayName": "Konexus Demo Admin",
      "email": "demo@konexus.com",
      "callerId": "8334193463"
    },
    "hidden": false,
    "weatherAlert": false,
    "requestConfirmation": false,
    "relatedAlertActions": {
      "disableReplyAll": false
    }
  },
  "status": {
    "isSuccess": true,
    "errorCode": "None",
    "validationFailures": [],
    "messages": []
  },
  "hasErrors": false,
  "isValid": true
}

2. Use the polygon to retrieve the number of recipients in the area

POST - /api/v2/features/count

{
  "geoJson": {
    "type": "FeatureCollection",
    "features": [
      {
        "type": "Feature",
        "geometry": {
          "type": "Polygon",
          "bbox": [
            -116.31916974347632,
            43.646603675700405,
            -116.31670211118283,
            43.64840478081464
          ],
          "coordinates": [
            [
              [
                -116.31916974347632,
                43.646603675700405
              ],
              [
                -116.31916974347632,
                43.64840478081464
              ],
              [
                -116.31670211118283,
                43.64840478081464
              ],
              [
                -116.31670211118283,
                43.646603675700405
              ],
              [
                -116.31916974347632,
                43.646603675700405
              ]
            ]
          ]
        },
        "properties": {}
      }
    ]
  },
  "countsOnly": true
}
{
  "count": 1,
  "directoryId": null,
  "type": "Point"
}

3. Modify the Alert Settings

Add the count and the recipient type to the alert settings

  • Add the count and the recipient type to the alert settings

  • Add the geojson to the alert settings

  • Set the alert subject and message

  • Set the desired delivery methods

{
  "channels": {
    "email": {
      "send": true
    }
  },
  "message": {
    "basic": {
      "subject": "Alert with polygon",
      "message": "This is a test alert with a location"
    }
  },
  "recipients": {
    "featureLayers": [
      {
        "FeaturesSource": "PublicUsers",
        "Count": 1
      }
    ],
    "geofences": {
      "type": "FeatureCollection",
      "features": [
        {
          "type": "Feature",
          "geometry": {
            "type": "Polygon",
            "bbox": [
              -116.31916974347632,
              43.646603675700405,
              -116.31670211118283,
              43.64840478081464
            ],
            "coordinates": [
              [
                [
                  -116.31916974347632,
                  43.646603675700405
                ],
                [
                  -116.31916974347632,
                  43.64840478081464
                ],
                [
                  -116.31670211118283,
                  43.64840478081464
                ],
                [
                  -116.31670211118283,
                  43.646603675700405
                ],
                [
                  -116.31916974347632,
                  43.646603675700405
                ]
              ]
            ]
          },
          "properties": {}
        }
      ]
    }
  }
}

4. Preview the Alert

Create a preview for the alert to ensure the settings are valid

POST - /api/v2/alerts/preview

{
  "settings": {
    "fields": [
      {
        "name": "template",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "sender",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "recipients",
        "required": true,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "geoFencing",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "priority",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "subject",
        "required": true,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "message",
        "required": true,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "channels",
        "required": true,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "social",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "publicAttachments",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      }
    ],
    "alertType": "Default",
    "formType": "Quick",
    "weatherAlert": false,
    "channels": {
      "email": {
        "send": true,
        "requestConfirmation": false
      },
      "etn": {
        "send": false,
        "publicUsers": false,
        "importUsers": false,
        "directoryUsers": false
      },
      "facebook": {
        "send": false,
        "pageIds": []
      },
      "fax": {
        "send": false
      },
      "push": {
        "send": true
      },
      "textMessage": {
        "deliveryMethod": "Sms",
        "send": true,
        "primary": true,
        "secondary": true
      },
      "twitter": {
        "send": false,
        "accountIds": []
      },
      "nextdoor": {
        "send": false,
        "accounts": []
      },
      "voice": {
        "send": false,
        "homePhone": true,
        "cellPhone": true,
        "businessPhone": true,
        "landLine": false
      },
      "myAlertsApp": {
        "send": false
      }
    },
    "facilities": {
      "facilities": [],
      "areas": []
    },
    "message": {
      "priority": "Emergency",
      "basic": {
        "message": "This is a test alert with a location",
        "subject": "Alert with polygon"
      },
      "files": [],
      "language": "en-us",
      "translate": true
    },
    "recipients": {
      "contactIds": [],
      "groupIds": [],
      "mandatoryGroupIds": [],
      "contacts": [],
      "groups": [],
      "geofences": {
        "type": "FeatureCollection",
        "features": [
          {
            "type": "Feature",
            "geometry": {
              "type": "Polygon",
              "bbox": [
                -116.31916974347632,
                43.646603675700405,
                -116.31670211118283,
                43.64840478081464
              ],
              "coordinates": [
                [
                  [
                    -116.31916974347632,
                    43.646603675700405
                  ],
                  [
                    -116.31916974347632,
                    43.64840478081464
                  ],
                  [
                    -116.31670211118283,
                    43.64840478081464
                  ],
                  [
                    -116.31670211118283,
                    43.646603675700405
                  ],
                  [
                    -116.31916974347632,
                    43.646603675700405
                  ]
                ]
              ]
            },
            "properties": {}
          }
        ]
      },
      "featureLayers": [
        {
          "FeaturesSource": "PublicUsers",
          "Count": 1
        }
      ],
      "directories": [],
      "searchFilters": []
    },
    "schedule": {
      "type": "Hickory",
      "duration": 1440,
      "scheduled": false,
      "lastOccurrenceError": false
    },
    "sender": {
      "callerId": "8334193463",
      "displayName": "Konexus Demo Admin",
      "email": "demo@konexus.com"
    },
    "hidden": false,
    "relatedAlertActions": {
      "disableReplyAll": false
    },
    "publicAlert": false,
    "requestConfirmation": false,
    "clientContext": {
      "templateId": null,
      "isResend": false,
      "clientId": "OpenAPI-Generator%2F1.0.0%2Fcsharp"
    }
  }
}
{
  "item": {
    "alertType": "Default",
    "channels": {
      "email": {
        "requestConfirmation": false,
        "send": true
      },
      "fax": {
        "send": false
      },
      "push": {
        "send": true
      },
      "textMessage": {
        "primary": true,
        "secondary": true,
        "deliveryMethod": "Sms",
        "send": true
      },
      "voice": {
        "cellPhone": true,
        "businessPhone": true,
        "homePhone": true,
        "useOptOut": false,
        "send": false
      },
      "etn": {
        "publicUsers": false,
        "importUsers": false,
        "directoryUsers": false,
        "send": false
      },
      "facebook": {
        "accountIds": [],
        "pageIds": [],
        "send": false
      },
      "twitter": {
        "accountIds": [],
        "send": false
      },
      "nextdoor": {
        "accounts": [],
        "send": false
      },
      "myAlertsApp": {
        "send": false
      },
      "microsoftTeams": {
        "sendWithHighImportance": false,
        "send": false
      }
    },
    "clientContext": {
      "isResend": false,
      "clientId": "OpenAPI-Generator%2F1.0.0%2Fcsharp"
    },
    "formType": "Quick",
    "brandId": 1452,
    "facilities": {
      "facilities": [],
      "areas": []
    },
    "message": {
      "priority": "Emergency",
      "basic": {
        "subject": "Alert with polygon",
        "message": "This is a test alert with a location",
        "messageBody": "<p>This is a test alert with a location</p>"
      },
      "files": [],
      "language": "en-us",
      "translate": true
    },
    "recipients": {
      "uniqueMyAlertsAppCount": 0,
      "uniqueEtnCount": 0,
      "uniqueGroupCount": 0,
      "uniqueContactCount": 1,
      "selectedContactCount": 0,
      "selectedGroupCount": 0,
      "groupIds": [],
      "mandatoryGroupIds": [],
      "contactIds": [],
      "groups": [],
      "contacts": [],
      "geofences": {
        "features": [
          {
            "geometry": {
              "coordinates": [
                [
                  [
                    -116.31916974347632,
                    43.646603675700405
                  ],
                  [
                    -116.31916974347632,
                    43.648404780814637
                  ],
                  [
                    -116.31670211118283,
                    43.648404780814637
                  ],
                  [
                    -116.31670211118283,
                    43.646603675700405
                  ],
                  [
                    -116.31916974347632,
                    43.646603675700405
                  ]
                ]
              ],
              "bbox": [
                -116.31916974347632,
                43.646603675700405,
                -116.31670211118283,
                43.648404780814637
              ],
              "type": "Polygon"
            },
            "properties": {},
            "type": "Feature"
          }
        ],
        "type": "FeatureCollection"
      },
      "featureLayers": [
        {
          "Count": 1,
          "FeaturesSource": "PublicUsers"
        }
      ],
      "directories": [],
      "distributionListId": "e615376a-39c7-4c96-826b-09da6c03dafc",
      "searchFilters": []
    },
    "schedule": {
      "scheduled": false,
      "duration": 1440,
      "lastOccurrenceError": false,
      "type": "Hickory"
    },
    "sender": {
      "id": 0,
      "displayName": "Konexus Demo Admin",
      "email": "demo@konexus.com",
      "callerId": "8334193463"
    },
    "hidden": false,
    "publicAlert": true,
    "weatherAlert": false,
    "requestConfirmation": false,
    "relatedAlertActions": {
      "disableReplyAll": false
    }
  },
  "status": {
    "isSuccess": true,
    "errorCode": "None",
    "validationFailures": [],
    "messages": []
  },
  "hasErrors": false,
  "isValid": true
}

5. Send the alert

POST - /api/v2/alerts

{
  "settings": {
    "fields": [
      {
        "name": "template",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "sender",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "recipients",
        "required": true,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "geoFencing",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "priority",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "subject",
        "required": true,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "message",
        "required": true,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "channels",
        "required": true,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "social",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      },
      {
        "name": "publicAttachments",
        "required": false,
        "systemRequired": false,
        "invisible": false,
        "readonly": false,
        "autofill": false
      }
    ],
    "alertType": "Default",
    "formType": "Quick",
    "weatherAlert": false,
    "channels": {
      "email": {
        "send": true,
        "requestConfirmation": false
      },
      "etn": {
        "send": false,
        "publicUsers": false,
        "importUsers": false,
        "directoryUsers": false
      },
      "facebook": {
        "send": false,
        "pageIds": []
      },
      "fax": {
        "send": false
      },
      "push": {
        "send": true
      },
      "textMessage": {
        "deliveryMethod": "Sms",
        "send": true,
        "primary": true,
        "secondary": true
      },
      "twitter": {
        "send": false,
        "accountIds": []
      },
      "nextdoor": {
        "send": false,
        "accounts": []
      },
      "voice": {
        "send": false,
        "homePhone": true,
        "cellPhone": true,
        "businessPhone": true,
        "landLine": false
      },
      "myAlertsApp": {
        "send": false
      }
    },
    "facilities": {
      "facilities": [],
      "areas": []
    },
    "message": {
      "priority": "Emergency",
      "basic": {
        "message": "This is a test alert with a location",
        "subject": "Alert with polygon"
      },
      "files": [],
      "language": "en-us",
      "translate": true
    },
    "recipients": {
      "contactIds": [],
      "groupIds": [],
      "mandatoryGroupIds": [],
      "contacts": [],
      "groups": [],
      "geofences": {
        "type": "FeatureCollection",
        "features": [
          {
            "type": "Feature",
            "geometry": {
              "type": "Polygon",
              "bbox": [
                -116.31916974347632,
                43.646603675700405,
                -116.31670211118283,
                43.64840478081464
              ],
              "coordinates": [
                [
                  [
                    -116.31916974347632,
                    43.646603675700405
                  ],
                  [
                    -116.31916974347632,
                    43.64840478081464
                  ],
                  [
                    -116.31670211118283,
                    43.64840478081464
                  ],
                  [
                    -116.31670211118283,
                    43.646603675700405
                  ],
                  [
                    -116.31916974347632,
                    43.646603675700405
                  ]
                ]
              ]
            },
            "properties": {}
          }
        ]
      },
      "featureLayers": [
        {
          "FeaturesSource": "PublicUsers",
          "Count": 1
        }
      ],
      "directories": [],
      "searchFilters": []
    },
    "schedule": {
      "type": "Hickory",
      "duration": 1440,
      "scheduled": false,
      "lastOccurrenceError": false
    },
    "sender": {
      "callerId": "8334193463",
      "displayName": "Konexus Demo Admin",
      "email": "demo@konexus.com"
    },
    "hidden": false,
    "relatedAlertActions": {
      "disableReplyAll": false
    },
    "publicAlert": false,
    "requestConfirmation": false,
    "clientContext": {
      "templateId": null,
      "isResend": false,
      "clientId": "OpenAPI-Generator%2F1.0.0%2Fcsharp"
    }
  },
  "async": true
}
{
  "AlertId": 1375986,
  "SentStatus": {
    "AlertId": 1375986,
    "AlertType": "QuickAlert",
    "AlertStatus": "Queued",
    "RecipientCount": 0,
    "DateSent": "/Date(1768508045194-0000)/",
    "DateCompleted": "/Date(-62135596800000-0000)/",
    "TimeZone": "MT ",
    "SenderName": "Konexus Demo Admin",
    "SenderEmail": "demo@konexus.com",
    "Subject": "Alert with polygon",
    "Message": "This is a test alert with a location",
    "Cancelled": false,
    "Scheduled": false,
    "Attachments": [],
    "Source": "api",
    "Sent": false,
    "AlertCompletion": "Processing",
    "Groups": [],
    "Statuses": [],
    "Errors": []
  },
  "Status": {
    "isSuccess": true,
    "errorCode": "None",
    "validationFailures": [],
    "messages": []
  },
  "HasErrors": false,
  "IsValid": true
}

6. Retrieve Alert Details

View the details of the alert using the id

GET - /api/v2/alerts/1375986

{
  "item": {
    "alertType": "Default",
    "capXml": "",
    "channels": {
      "email": {
        "requestConfirmation": false,
        "send": true
      },
      "fax": {
        "send": false
      },
      "push": {
        "send": true
      },
      "textMessage": {
        "primary": true,
        "secondary": true,
        "deliveryMethod": "Sms",
        "send": true
      },
      "voice": {
        "cellPhone": false,
        "businessPhone": false,
        "homePhone": false,
        "useOptOut": false,
        "send": false
      },
      "facebook": {
        "accountIds": [],
        "pageIds": [],
        "send": false
      },
      "twitter": {
        "accountIds": [],
        "send": false
      },
      "nextdoor": {
        "accounts": [],
        "send": false
      },
      "mobileBroadcast": {
        "send": false
      },
      "microsoftTeams": {
        "sendWithHighImportance": false,
        "send": false
      }
    },
    "formType": "Quick",
    "brandId": 1452,
    "id": 1375986,
    "message": {
      "priority": "Emergency",
      "basic": {
        "subject": "Alert with polygon",
        "message": "This is a test alert with a location",
        "messageBody": "<p>This is a test alert with a location</p>"
      },
      "language": "en-us",
      "translate": false
    },
    "recipients": {
      "uniqueMyAlertsAppCount": 0,
      "uniqueEtnCount": 0,
      "uniqueGroupCount": 0,
      "uniqueContactCount": 0,
      "selectedContactCount": 0,
      "selectedGroupCount": 0,
      "groupIds": [],
      "mandatoryGroupIds": [],
      "contactIds": [],
      "groups": [],
      "contacts": [],
      "geofences": {
        "features": [
          {
            "geometry": {
              "coordinates": [
                [
                  [
                    -116.31916974347632,
                    43.646603675700405
                  ],
                  [
                    -116.31916974347632,
                    43.648404780814637
                  ],
                  [
                    -116.31670211118283,
                    43.648404780814637
                  ],
                  [
                    -116.31670211118283,
                    43.646603675700405
                  ],
                  [
                    -116.31916974347632,
                    43.646603675700405
                  ]
                ]
              ],
              "bbox": [
                -116.31916974347632,
                43.646603675700405,
                -116.31670211118283,
                43.648404780814637
              ],
              "type": "Polygon"
            },
            "properties": {},
            "type": "Feature"
          }
        ],
        "type": "FeatureCollection"
      },
      "featureLayers": [
        {
          "Count": 1,
          "FeaturesSource": "PublicUsers"
        }
      ],
      "directories": [],
      "distributionListId": "f42e07e4-f4f5-4120-b53f-b3f45cc7eafd",
      "searchFilters": []
    },
    "related": [],
    "schedule": {
      "scheduled": false,
      "expireDateTimeUtc": "/Date(-62135596800000-0000)/",
      "type": "Hickory"
    },
    "security": {
      "requireAuthentication": false,
      "voicePin": ""
    },
    "sender": {
      "id": 171016,
      "displayName": "Konexus Demo Admin",
      "email": "demo@konexus.com",
      "name": {
        "familyName": "Demo Admin",
        "givenName": "Konexus"
      }
    },
    "timeSent": "/Date(1768508045203-0000)/",
    "hidden": false,
    "completionStatus": {
      "id": 1375986,
      "alertCompletion": "Processing",
      "status": "Queued"
    },
    "weatherAlert": false,
    "requestConfirmation": false
  },
  "status": {
    "isSuccess": true,
    "errorCode": "None",
    "validationFailures": [],
    "messages": []
  },
  "hasErrors": false,
  "isValid": true
}

GET - /api/v2/alerts/1375986/status

{
  "item": {
    "id": 1375986,
    "alertCompletion": "0",
    "status": "Processing"
  },
  "status": {
    "isSuccess": true,
    "errorCode": "None",
    "validationFailures": [],
    "messages": []
  },
  "hasErrors": false,
  "isValid": true
}