Infosec IQ Public API (1.0)

Download OpenAPI specification:Download

The Infosec IQ REST API Version 1 is deprecated and will be removed in early 2021. You should migrate to using Infosec IQ REST API Version 2

Authentication

Bearer API Token

Before you begin, you will need an API Token. To get one, first have your account manager enable this functionality for your account. Once API functionality is enabled you will be able to access your API token through your account settings page.

Security Scheme Type API Key
Header parameter name: Authorization

Create campaign enrollments Deprecated

This endpoint enrolls a learner into a campaign.

path Parameters
campaign_id
required
string (campaign_id)

ID of campaign to enroll learner

Request Body schema: application/json

The request body

learner_id
string

Unique identifier for the learner

Responses

Request samples

Content type
application/json
{
  • "learner_id": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "learner": {
    },
  • "campaign": {
    }
}

List campaign runs Deprecated

This endpoint retrieves a list of campaign runs.

path Parameters
id
required
string (id)

The id of the campaign

query Parameters
page
integer (page) >= 1
Default: 1

Which page of results to return

limit
integer (limit) [ 1 .. 100 ]
Default: 20

Number of results to return

Responses

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": {
    }
}

Retrieve a campaign run Deprecated

This endpoint retrieves a specific campaign run.

path Parameters
campaign_id
required
string (campaign_id)

The id of the campaign

run_id
required
string (run_id)

The id of the campaign run

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Retrieve statistics about a campaign run Deprecated

This endpoint retrieves various statistics about a campaign run.

path Parameters
campaign_id
required
string (campaign_id)

The id of the campaign

run_id
required
string (run_id)

The id of the campaign run

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Retrieve statistics about learners in a campaign run Deprecated

This endpoint retrieves the status of each learner enrolled in an campaign.

path Parameters
campaign_id
required
string (campaign_id)

The id of the campaign

run_id
required
string (run_id)

The id of the campaign run

query Parameters
page
integer (page) >= 1
Default: 1

Which page of results to return

limit
integer (limit) [ 1 .. 100 ]
Default: 20

Number of results to return

Responses

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": {
    }
}

List campaigns Deprecated

This endpoint retrieves a page of campaigns, optionally filtered by by a name parameter.

query Parameters
name
string (name)

Search campaigns by name

page
integer (page) >= 1
Default: 1

Which page of results to return

limit
integer (limit) [ 1 .. 100 ]
Default: 20

Number of results to return

Responses

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": {
    }
}

Retrieve a campaign Deprecated

This endpoint retrieves a campaign by id.

path Parameters
id
required
string (id)

The requested campaign id

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "type": "string",
  • "running": true
}

List learner timeline events Deprecated

This endpoint retrieves a page of timeline events associated with the given Learner ID.

path Parameters
learner_id
required
string

Learner id

query Parameters
page
integer (page) >= 1
Default: 1

Which page of results to return

limit
integer (limit) [ 1 .. 100 ]
Default: 20

Number of results to return

Responses

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": {
    }
}

List learners Deprecated

This endpoint retrieves a page of learners, optionally filtered by an email, first name, or last name parameter.

query Parameters
email
string (email)

Search learners by email

first_name
string (first_name)

Search learners by first name

last_name
string (last_name)

Search learners by last name

page
integer (page) >= 1
Default: 1

Which page of results to return

limit
integer (limit) [ 1 .. 100 ]
Default: 20

Number of results to return

Responses

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": {
    }
}

Create a new learner Deprecated

This endpoint creates a new learner.

Request Body schema: application/json
email
string
first_name
string
last_name
string
title
string
department
string
phone
string
address1
string
address2
string
city
string
state
string
zip
string
country
string
custom
string
manager_name
string
manager_email
string
group_name
string

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "title": "string",
  • "department": "string",
  • "phone": "string",
  • "address1": "string",
  • "address2": "string",
  • "city": "string",
  • "state": "string",
  • "zip": "string",
  • "country": "string",
  • "custom": "string",
  • "manager_name": "string",
  • "manager_email": "string",
  • "group_name": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "learner_profile": {
    },
  • "groups": {
    }
}

Retrieve a learner Deprecated

This endpoint retrieves a learner by ID.

path Parameters
id
required
string

The ID of the requested learner

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "learner_profile": {
    },
  • "groups": {
    }
}

Edit an existing learner Deprecated

This endpoint edits the personal information of a specific learner.

path Parameters
id
required
string

The ID of the learner to modify

Request Body schema: application/json

The request body

email
string
first_name
string
last_name
string
title
string
department
string
phone
string
address1
string
address2
string
city
string
state
string
zip
string
country
string
custom
string
manager_name
string
manager_email
string
group_name
string

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "title": "string",
  • "department": "string",
  • "phone": "string",
  • "address1": "string",
  • "address2": "string",
  • "city": "string",
  • "state": "string",
  • "zip": "string",
  • "country": "string",
  • "custom": "string",
  • "manager_name": "string",
  • "manager_email": "string",
  • "group_name": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "learner_profile": {
    },
  • "groups": {
    }
}

Delete a learner Deprecated

This endpoint deletes a learner specified by ID.

path Parameters
id
required
string (id)

The ID of the learner to delete

Responses

List PhishHunter Messages Deprecated

This endpoint retrieves a page of PhishHunter messages.

query Parameters
page
integer (page) >= 1
Default: 1

Which page of results to return

limit
integer (limit) [ 1 .. 100 ]
Default: 20

Number of results to return

Responses

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": {
    }
}

Retrieve a message from PhishHunter Deprecated

This endpoint retrieves a message and all of its components.

path Parameters
id
required
string

The ID of the requested message

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "received": "string",
  • "original_file_url": "string",
  • "reported": "string",
  • "reporter": "string",
  • "risk_score": 0,
  • "sender": "string",
  • "subject": "string",
  • "tags": [
    ],
  • "components": [
    ]
}

List timeline events Deprecated

  • This endpoint retrieves a page of timeline events, optionally filtered by type and/or date range. This endpoint will no longer be available after November 26th 2020.
query Parameters
type
string (TimelineEventType)
Enum: "added-to-group" "removed-from-group" "created-learner" "scheduled-in-phish-campaign" "scheduled-in-phish-campaign-run" "sent-phish-email" "phished-learner" "entered-data" "opened-attachment" "opened-phish" "started-phish-training" "completed-phish-training" "detected-outdated-browser" "submitted-phishsim-email" "submitted-phishing-email" "scheduled-in-aware-campaign" "scheduled-in-aware-campaign-run" "started-aware-course" "started-aware-module" "completed-aware-module" "stopped-aware-course" "completed-aware-course" "started-aware-assessment" "completed-aware-assessment" "passed-aware-assessment" "failed-aware-assessment" "stopped-aware-assessment" "stopped-aware-module" "started-aware-reminder" "finished-aware-reminder" "enabled-macro" "fast-clicked" "accepted-policy" "changed-learner-status" "changed-defender-status" "replied" "matched-pattern" "core-behavior-score-changed" "adaptive-assessment-completed" "recommendation-completed" "recommendation-started"

Search TimelineEvents by type

start
string (start)

Earliest date (YYYY-MM-DD) TimelineEvent could have occurred (inclusive).

end
string (end)

Latest date (YYYY-MM-DD) TimelineEvent could have occurred (exclusive).

page
integer (page) >= 1
Default: 1

Which page of results to return

limit
integer (limit) [ 1 .. 100 ]
Default: 20

Number of results to return

Responses

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": {
    }
}