PhishingTackle MSP API (v1.0.59)

Download OpenAPI specification:Download

An API that interacts with PhishingTackle to provide REST data.

AllSubOrganisations

Gets list of sub organisations.

SecurityOrgId and ApiKey and UserId
Responses
200

Success

400

Bad Request

get/api/AllSubOrganisations
Request samples
Response samples
application/json
[
  • {
    }
]

EmailCampaign

Gets an email campaign with the specified id.

SecurityOrgId and ApiKey and UserId
Request
query Parameters
orgId
integer <int64>

Organisation ID for the organisation in which the campaign exists

campaignId
integer <int64>

Campaign ID for the requested campaign

Responses
200

Success

400

Bad Request

get/api/EmailCampaign
Request samples
Response samples
application/json
{
  • "id": 0,
  • "organisationId": 0,
  • "description": "string",
  • "statusId": 0,
  • "startDateTime": "2019-08-24T14:15:22Z",
  • "scheduledStartDateTime": "2019-08-24T14:15:22Z",
  • "scheduledEndDateTime": "2019-08-24T14:15:22Z",
  • "timeZoneId": "string",
  • "frequencyId": 0,
  • "sendingDurationUnit": 0,
  • "sendingDurationPeriodId": 0,
  • "sendAllOnCampaignStart": true,
  • "emailTemplateRandomTypeId": 0,
  • "businessTimeStart": "2019-08-24T14:15:22Z",
  • "businessTimeEnd": "2019-08-24T14:15:22Z",
  • "businessDayMonday": true,
  • "businessDayTuesday": true,
  • "businessDayWednesday": true,
  • "businessDayThursday": true,
  • "businessDayFriday": true,
  • "businessDaySaturday": true,
  • "businessDaySunday": true,
  • "trackReplies": true,
  • "keepReplies": true,
  • "trackRepliesDurationUnit": 0,
  • "trackRepliesDurationPeriodId": 0,
  • "trackOutOfOfficeReplies": true,
  • "replyToAddress": "string",
  • "replyToSubDomain": "string",
  • "replyToDomainId": 0,
  • "difficultyRating": 0,
  • "phishLinkDomainId": 0,
  • "landingPageId": 0,
  • "clickersGroupId": 0,
  • "sendReport": true,
  • "excludeCampaignFromStatistics": true,
  • "selectedEmailTemplateId": 0,
  • "campaignTypeId": 0,
  • "runCount": 0,
  • "sendToAllRecipients": true,
  • "previousStatusId": 0,
  • "hidden": true,
  • "trackCredentialReuse": true,
  • "trackCredentialReuseUserName": true,
  • "trackCredentialReusePassword": true,
  • "trackCredentialReuseLandingPage": true,
  • "emailSendingMethod": 0,
  • "createAutomatedReport": true,
  • "automatedReportId": 0,
  • "campaignEventResults": [
    ],
  • "campaignEvents": [
    ],
  • "phishingCampaignEventResults": [
    ],
  • "phishingCampaignRecipientResults": [
    ],
  • "sendQueues": [
    ],
  • "sentItems": [
    ]
}

Copies an email campaign to one or more sub organisations

SecurityOrgId and ApiKey and UserId
Request
Request Body schema:

Request body

campaignId
integer <int64>
subAccountOrgIds
Array of integers or null <int64>
startDate
string or null
timezone
string or null
dateTimeFormat
string or null
staggerIntervalUnit
string or null
staggerIntervalValue
integer or null <int32>
staggerStartTime
string or null
staggerEndTime
string or null
excludeDateTags
Array of integers or null <int64>
repeatInterval
string or null
object (DaysSelected)
startAsPaused
boolean
Responses
200

Success

400

Bad Request

post/api/EmailCampaign
Request samples
{
  • "campaignId": 0,
  • "subAccountOrgIds": [
    ],
  • "startDate": "string",
  • "timezone": "string",
  • "dateTimeFormat": "string",
  • "staggerIntervalUnit": "string",
  • "staggerIntervalValue": 0,
  • "staggerStartTime": "string",
  • "staggerEndTime": "string",
  • "excludeDateTags": [
    ],
  • "repeatInterval": "string",
  • "daysSelected": {
    },
  • "startAsPaused": true
}
Response samples
application/json
"string"

EmailCampaignEventResults

Gets email campaign event results for a campaign

SecurityOrgId and ApiKey and UserId
Request
query Parameters
orgId
integer <int64>

Organisation ID for the organisation in which the campaign exists

campaignId
integer <int64>

Campaign id for the requested campaign event results

Responses
200

Success

400

Bad Request

get/api/EmailCampaignEventResults
Request samples
Response samples
application/json
{
  • "organisationId": 0,
  • "campaignId": 0,
  • "delivered": 0,
  • "opened": 0,
  • "clicked": 0,
  • "replied": 0,
  • "openedAttachment": 0,
  • "attachmentLinkClicked": 0,
  • "dataEntered": 0,
  • "bounced": 0,
  • "reported": 0,
  • "sent": 0
}

EmailCampaigns

Gets a list of email campaigns in an organisation

SecurityOrgId and ApiKey and UserId
Request
query Parameters
orgId
integer <int64>

Optional organisation id, not setting this will return campaigns from the top level organisation

Responses
200

Success

400

Bad Request

get/api/EmailCampaigns
Request samples
Response samples
application/json
[
  • {
    }
]

EmailCampaignsBetweenDates

Gets email campaigns between specified dates.

SecurityOrgId and ApiKey and UserId
Request
query Parameters
start
string <date-time>

Start date

end
string <date-time>

End date

subOrgId
integer <int64>

Sub-organisation ID

page
integer <int32>

Page number

Responses
200

Success

400

Bad Request

get/api/EmailCampaignsBetweenDates
Request samples
Response samples
application/json
{
  • "campaigns": [
    ],
  • "page": 0,
  • "totalPages": 0
}

FailedPhishingTest

Gets a list of failed phishing campaigns in an organisation

SecurityOrgId and ApiKey and UserId
Request
query Parameters
orgId
integer <int64>

Optional organisation id, not setting this will return results from the top level organisation

Responses
200

Success

400

Bad Request

get/api/FailedPhishingTest
Request samples
Response samples
application/json
[
  • "string"
]

License

Gets license details for your organisation

SecurityOrgId and ApiKey and UserId
Responses
200

Success

400

Bad Request

get/api/License
Request samples
Response samples
application/json
{
  • "organisationId": 0,
  • "termInMonths": 0,
  • "startDate": "2019-08-24T14:15:22Z",
  • "endDate": "2019-08-24T14:15:22Z",
  • "inTrialPeriod": true,
  • "trialEndDate": "2019-08-24T14:15:22Z",
  • "seatCount": 0,
  • "includedSeats": 0,
  • "status": 0
}

PhishingCampaignStatisticsByCampaign

Gets Phishing Campaigns Statistics by campaign

SecurityOrgId and ApiKey and UserId
Request
query Parameters
subOrgId
integer <int64>
campaignId
Array of integers <int64>
startIndex
integer <int32>
Default: 0
count
integer <int32>
Default: 10
Responses
200

Success

400

Bad Request

get/api/PhishingCampaignStatisticsByCampaign
Request samples
Response samples
application/json
{
  • "campaignId": 0,
  • "description": "string",
  • "scheduledStartDateTime": "2019-08-24T14:15:22Z",
  • "clickedEmail": [
    ],
  • "replied": [
    ],
  • "openedAttachment": [
    ],
  • "clickedLink": [
    ],
  • "enteredData": [
    ],
  • "reported": [
    ],
  • "bounced": [
    ]
}

PhishingCampaignStats

Gets a summary of statistics for a phishing campaign

SecurityOrgId and ApiKey and UserId
Request
query Parameters
campaignId
integer <int64>

Id of the phishing campaign you would like statistics for

subOrgId
integer <int64>

Optional organisation id, not setting this will return results from the top level organisation

Responses
200

Success

400

Bad Request

get/api/PhishingCampaignStats
Request samples
Response samples
application/json
{
  • "recipientCount": 0,
  • "deliveredPercent": 0,
  • "deliveredCount": 0,
  • "openedPercent": 0,
  • "openedCount": 0,
  • "clickedPercent": 0,
  • "clickedCount": 0,
  • "repliedPercent": 0,
  • "repliedCount": 0,
  • "attachmentOpenedPercent": 0,
  • "attachmentOpenedCount": 0,
  • "dataEnteredPercent": 0,
  • "dataEnteredCount": 0,
  • "bouncedPercent": 0,
  • "bouncedCount": 0,
  • "failureCount": 0
}

RecipientCount

Gets a summary of recipient count in an organisation

SecurityOrgId and ApiKey and UserId
Request
query Parameters
subOrganisationId
integer <int64>

Optional organisation id, not setting this will return results from the top level organisation

Responses
200

Success

400

Bad Request

get/api/RecipientCount
Request samples
Response samples
application/json
{
  • "recipientCount": 0,
  • "deliveredPercent": 0,
  • "deliveredCount": 0,
  • "openedPercent": 0,
  • "openedCount": 0,
  • "clickedPercent": 0,
  • "clickedCount": 0,
  • "repliedPercent": 0,
  • "repliedCount": 0,
  • "attachmentOpenedPercent": 0,
  • "attachmentOpenedCount": 0,
  • "dataEnteredPercent": 0,
  • "dataEnteredCount": 0,
  • "bouncedPercent": 0,
  • "bouncedCount": 0,
  • "failureCount": 0
}

RecipientDataBreach

Gets Recipient Databreach details for the selected organisation

SecurityOrgId and ApiKey and UserId
Request
query Parameters
subOrgId
integer <int64>
page
integer <int32>
Default: 1
recipientsPerPage
integer <int32>
Default: 25
Responses
200

Success

400

Bad Request

get/api/RecipientDataBreach
Request samples
Response samples
application/json
{
  • "id": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "emailAddress": "string",
  • "breaches": [
    ]
}

RecipientStats

Gets a paginated list of recipient stats in an organisation

SecurityOrgId and ApiKey and UserId
Request
query Parameters
subOrgId
integer <int64>

Optional organisation id, not setting this will return results from the top level organisation

page
integer <int32>

Page number

Responses
200

Success

400

Bad Request

get/api/RecipientStats
Request samples
Response samples
application/json
{
  • "totalPages": 0,
  • "currentPage": 0,
  • "recipientStats": [
    ]
}

Status

Check the API is online and reachable

SecurityOrgId and ApiKey and UserId
Responses
200

Success

408

Request Timeout

get/api/Status
Request samples
Response samples
application/json
"string"

SubOrganisation

Gets an organisation

SecurityOrgId and ApiKey and UserId
Request
query Parameters
subOrganisationId
integer <int64>

Organisation id

Responses
200

Success

400

Bad Request

get/api/SubOrganisation
Request samples
Response samples
application/json
{
  • "id": 0,
  • "name": "string",
  • "primaryDomain": "string",
  • "joinedAt": "string",
  • "logo": "string"
}

TrainingCampaigns

Gets a list of training campaigns for an organisation

SecurityOrgId and ApiKey and UserId
Request
query Parameters
orgId
integer <int64>

Optional organisation id, not setting this will return results from the top level organisation

Responses
200

Success

400

Bad Request

get/api/TrainingCampaigns
Request samples
Response samples
application/json
[
  • {
    }
]

Copies a training campaign to one or more sub organisation

SecurityOrgId and ApiKey and UserId
Request
Request Body schema:

Request body

campaignId
integer <int64>
startDate
string or null
timezone
string or null
endDate
string or null
endDateType
integer or null <int32>
relativeEndDatePeriod
string or null
relativeEndDateUnit
integer or null <int32>
organisationIds
Array of integers or null <int64>
orgDateFormat
string or null
Responses
200

Success

400

Bad Request

post/api/TrainingCampaigns
Request samples
{
  • "campaignId": 0,
  • "startDate": "string",
  • "timezone": "string",
  • "endDate": "string",
  • "endDateType": 0,
  • "relativeEndDatePeriod": "string",
  • "relativeEndDateUnit": 0,
  • "organisationIds": [
    ],
  • "orgDateFormat": "string"
}
Response samples
application/json
"string"

TrainingCampaignsBetweenDates

Gets training campaigns between specified dates.

SecurityOrgId and ApiKey and UserId
Request
query Parameters
start
string <date-time>

Start date

end
string <date-time>

End date

subOrgId
integer <int64>

Sub-organisation ID

page
integer <int32>

Page number

Responses
200

Success

400

Bad Request

get/api/TrainingCampaignsBetweenDates
Request samples
Response samples
application/json
{
  • "campaigns": [
    ],
  • "page": 0,
  • "totalPages": 0
}

TrainingCampaignStats

Gets statistics for a training campaign

SecurityOrgId and ApiKey and UserId
Request
query Parameters
campaignId
integer <int64>

Campaign id

subOrganisationId
integer <int64>

Organisation id

page
integer <int32>
Default: 1

Page number

Responses
200

Success

400

Bad Request

get/api/TrainingCampaignStats
Request samples
Response samples
application/json
{
  • "courseName": "string",
  • "courseId": 0,
  • "totalPages": 0,
  • "currentPage": 0,
  • "recipientStats": [
    ]
}

TrainingCourseDelegateDetail

Gets Recipient Databreach details for the selected organisation

SecurityOrgId and ApiKey and UserId
Request
query Parameters
subOrgId
integer <int64>
courseId
Array of integers <int64>
page
integer <int32>
Default: 1
count
integer <int32>
Default: 25
Responses
200

Success

400

Bad Request

get/api/TrainingCourseDelegateDetail
Request samples
Response samples
application/json
{
  • "courseId": 0,
  • "courseDescription": "string",
  • "scheduledStartDateTime": "2019-08-24T14:15:22Z",
  • "delegates": [
    ],
  • "totalEnrolled": 0,
  • "totalStarted": 0,
  • "totalCompleted": 0
}