Gophish

Gophish is a powerful, open-source phishing framework that makes it easy to test your organization's exposure to phishing. For Free

This integration was integrated and tested with version 0.11.0 of gophish

Configure gophish on Cortex XSOAR

  1. Navigate to Settings > Integrations > Servers & Services.
  2. Search for gophish.
  3. Click Add instance to create and configure a new integration instance.
ParameterDescriptionRequired
urlServer URL (e.g. https://example.net\)True
apikeyAPI KeyTrue
insecureTrust any certificate (not secure)False
proxyUse system proxy settingsFalse
  1. Click Test to validate the URLs, token, and connection.

Commands

You can execute these commands from the Demisto CLI, as part of an automation, or in a playbook. After you successfully execute a command, a DBot message appears in the War Room with the command details.

gophish-get-users


Gets all users from gophish

Base Command

gophish-get-users

Input

Argument NameDescriptionRequired

Context Output

PathTypeDescription
Gophish.UsersStringAll users details

Command Example

!gophish-get-users

Context Example

{
"Gophish": {
"Users": [
{
"api_key": "c805d2ec901b09b0d6bc8d12ed12f9c7e1f630f1a2115f1649f15b1d36082585",
"id": 1,
"password_change_required": false,
"role": {
"description": "System administrator with full permissions",
"name": "Admin",
"slug": "admin"
},
"username": "admin"
},
{
"api_key": "d5d97dc332924ee141f936a8f54e5f553cf574e415b0313a98506eb100a01e77",
"id": 5,
"password_change_required": false,
"role": {
"description": "System administrator with full permissions",
"name": "Admin",
"slug": "admin"
},
"username": "modifyuser"
}
]
}
}

Human Readable Output

Results

api_keyidpassword_change_requiredroleusername
c805d2ec901b09b0d6bc8d12ed12f9c7e1f630f1a2115f1649f15b1d360825851falseslug: admin
name: Admin
description: System administrator with full permissions
admin
d5d97dc332924ee141f936a8f54e5f553cf574e415b0313a98506eb100a01e775falseslug: admin
name: Admin
description: System administrator with full permissions
modifyuser

gophish-get-user


Get single user details from gophish

Base Command

gophish-get-user

Input

Argument NameDescriptionRequired
idID of the user as an integerRequired

Context Output

PathTypeDescription
Gophish.UserstringUser details

Command Example

!gophish-get-user id=1

Context Example

{
"Gophish": {
"User": {
"api_key": "c805d2ec901b09b0d6bc8d12ed12f9c7e1f630f1a2115f1649f15b1d36082585",
"id": 1,
"password_change_required": false,
"role": {
"description": "System administrator with full permissions",
"name": "Admin",
"slug": "admin"
},
"username": "admin"
}
}
}

Human Readable Output

Results

api_keyidpassword_change_requiredroleusername
c805d2ec901b09b0d6bc8d12ed12f9c7e1f630f1a2115f1649f15b1d360825851falseslug: admin
name: Admin
description: System administrator with full permissions
admin

gophish-create-user


Creates a new user

Base Command

gophish-create-user

Input

Argument NameDescriptionRequired
roleRole of the user to be createdRequired
usernameUsername for the new userRequired
passwordPassword for the new userRequired

Context Output

PathTypeDescription
Gophish.NewUserStringNew user details that was created

Command Example

!gophish-create-user role=admin username=Thisistheusername password=password

Context Example

{
"Gophish": {
"NewUser": {
"api_key": "457f41db94228d9c3bbde2394115bbfa420bc4239ac7ba3dd8a3f011e20e45cc",
"id": 6,
"password_change_required": false,
"role": {
"description": "System administrator with full permissions",
"name": "Admin",
"slug": "admin"
},
"username": "Thisistheusername"
}
}
}

Human Readable Output

Results

api_keyidpassword_change_requiredroleusername
457f41db94228d9c3bbde2394115bbfa420bc4239ac7ba3dd8a3f011e20e45cc6falseslug: admin
name: Admin
description: System administrator with full permissions
Thisistheusername

gophish-modify-user


Modifies a user account. This can be used to change the role, reset the password, or change the username.

Base Command

gophish-modify-user

Input

Argument NameDescriptionRequired
idThe user IDRequired
roleThe role slug to use for the accountOptional
passwordThe password to set for the accountOptional
usernameThe username for the accountRequired

Context Output

PathTypeDescription
Gophish.ModifiedUserStringModified user details

Command Example

!gophish-modify-user role=admin username=newusername password=newpassword id=5

Context Example

{
"Gophish": {
"ModifiedUser": {
"api_key": "d5d97dc332924ee141f936a8f54e5f553cf574e415b0313a98506eb100a01e77",
"id": 5,
"password_change_required": false,
"role": {
"description": "System administrator with full permissions",
"name": "Admin",
"slug": "admin"
},
"username": "newusername"
}
}
}

Human Readable Output

Results

api_keyidpassword_change_requiredroleusername
d5d97dc332924ee141f936a8f54e5f553cf574e415b0313a98506eb100a01e775falseslug: admin
name: Admin
description: System administrator with full permissions
newusername

gophish-delete-user


Deletes a user, as well as every object (landing page, template, etc.) and campaign they've created.

Base Command

gophish-delete-user

Input

Argument NameDescriptionRequired
idThe user IDRequired

Context Output

PathTypeDescription
Gophish.DeletedUserstringInfo about the deleted user

Command Example

!gophish-delete-user id=5

Context Example

{
"Gophish": {
"DeletedUser": {
"data": null,
"message": "User deleted Successfully!",
"success": true
}
}
}

Human Readable Output

Results

datamessagesuccess
User deleted Successfully!true

gophish-get-all-sending-profiles


Gets a list of the sending profiles created by the authenticated user.

Base Command

gophish-get-all-sending-profiles

Input

Argument NameDescriptionRequired

Context Output

PathTypeDescription
Gophish.AllSendingProfilesStringSending profiles information

Command Example

!gophish-get-all-sending-profiles

Context Example

{
"Gophish": {
"AllSendingProfiles": [
{
"from_address": "Phil emailaddress",
"headers": [],
"host": "smtp.gmail.com:465",
"id": 1,
"ignore_cert_errors": true,
"interface_type": "SMTP",
"modified_date": "2020-09-03T08:07:35.811631358Z",
"name": "Google",
"password": "password",
"username": "emailaddress"
},
{
"from_address": "John <john@acme.com>",
"headers": [],
"host": "testing.acme.com:25",
"id": 4,
"ignore_cert_errors": true,
"interface_type": "SMTP",
"modified_date": "2020-09-04T04:58:23.737180623Z",
"name": "TestingCreation2",
"password": "password",
"username": "john"
}
]
}
}

Human Readable Output

Results

from_addressheadershostidignore_cert_errorsinterface_typemodified_datenamepasswordusername
Phil emailaddresssmtp.gmail.com:4651trueSMTP2020-09-03T08:07:35.811631358ZGooglepasswordemailaddress
John john@acme.comtesting.acme.com:254trueSMTP2020-09-04T04:58:23.737180623ZTestingCreation2passwordjohn

gophish-get-sending-profile


Returns a sending profile given an ID, returning a 404 error if no sending profile with the provided ID is found.

Base Command

gophish-get-sending-profile

Input

Argument NameDescriptionRequired
idThe sending profile ID to returnRequired

Context Output

PathTypeDescription
Gophish.SendingProfileStringinfo about the sending profile

Command Example

!gophish-get-sending-profile id=1

Context Example

{
"Gophish": {
"SendingProfile": {
"from_address": "Phil emailaddress",
"headers": [],
"host": "smtp.gmail.com:465",
"id": 1,
"ignore_cert_errors": true,
"interface_type": "SMTP",
"modified_date": "2020-09-03T08:07:35.811631358Z",
"name": "Google",
"password": "password",
"username": "emailaddress"
}
}
}

Human Readable Output

Results

from_addressheadershostidignore_cert_errorsinterface_typemodified_datenamepasswordusername
Phil emailaddresssmtp.gmail.com:4651trueSMTP2020-09-03T08:07:35.811631358ZGooglepasswordemailaddress

gophish-create-sending-profile


Creates a sending profile.

Base Command

gophish-create-sending-profile

Input

Argument NameDescriptionRequired
nameProfile nameRequired
from_addressFrom Address to use (John Doe <john@example.com>)Required
hostHost and port of the SMTP sender (smtp.example.com:25)Required
usernameUsername to useRequired
passwordPassword to useRequired
ignore_cert_errorsIgnore untrusted certificatesRequired
headersCustom headers for the sending profile in format key1:value1,key2:value2 etcOptional

Context Output

PathTypeDescription
Gophish.CreatedSendingProfileStringInfo about the newly created Sendin Profile

Command Example

!gophish-create-sending-profile name=TestingCreation from_address="John <john@acme.com>" host=testing.acme.com:25 username=john password=password ignore_cert_errors=True

Context Example

{
"Gophish": {
"CreatedSendingProfile": {
"from_address": "John <john@acme.com>",
"headers": null,
"host": "testing.acme.com:25",
"id": 5,
"ignore_cert_errors": true,
"interface_type": "SMTP",
"modified_date": "2020-09-04T05:17:03.414841277Z",
"name": "TestingCreation",
"password": "password",
"username": "john"
}
}
}

Human Readable Output

Results

from_addressheadershostidignore_cert_errorsinterface_typemodified_datenamepasswordusername
John john@acme.comtesting.acme.com:255trueSMTP2020-09-04T05:17:03.414841277ZTestingCreationpasswordjohn

gophish-delete-sending-profile


Deletes a sending profile by ID.

Base Command

gophish-delete-sending-profile

Input

Argument NameDescriptionRequired
idID of the profile to be deletedRequired

Context Output

PathTypeDescription
Gophish.DeletedSendingProfileStringThis method returns a status message indicating the sending profile was deleted successfully.

Command Example

!gophish-delete-sending-profile id=4

Context Example

{
"Gophish": {
"DeletedSendingProfile": {
"data": null,
"message": "SMTP Deleted Successfully",
"success": true
}
}
}

Human Readable Output

Results

datamessagesuccess
SMTP Deleted Successfullytrue

gophish-get-all-landing-pages


Returns a list of landing pages.

Base Command

gophish-get-all-landing-pages

Input

Argument NameDescriptionRequired

Context Output

PathTypeDescription
Gophish.AllLandingPagesStringReturns a list of landing pages.

Command Example

!gophish-get-all-landing-pages

Context Example

{
"Gophish": {
"AllLandingPages": [
{
"capture_credentials": true,
"capture_passwords": false,
"html": "HTML GOES HERE",
"id": 1,
"modified_date": "2020-09-03T08:08:18.028831434Z",
"name": "Outlook",
"redirect_url": "https://urlhere"
},
{
"capture_credentials": true,
"capture_passwords": true,
"html": "<html><head></head><body>here goes the html</body></html>",
"id": 3,
"modified_date": "2020-09-04T05:11:49.549173718Z",
"name": "TestingCommands2",
"redirect_url": "https://www.paloaltonetworks.com"
}
]
}
}

Human Readable Output

Results

capture_credentialscapture_passwordshtmlidmodified_datenameredirect_url
truefalseHTML GOES HERE12020-09-03T08:08:18.028831434ZOutlookhttps://urlhere
truetruehere goes the html 32020-09-04T05:11:49.549173718ZTestingCommands2https://www.paloaltonetworks.com

gophish-create-landing-page


Creates a landing page.

Base Command

gophish-create-landing-page

Input

Argument NameDescriptionRequired
nameName of the pageRequired
htmlHTML of the pageRequired
capture_credentialsCapturing credentials is a powerful feature of Gophish. By setting certain flags, you have the ability to capture all user input, or just non-password input.Required
capture_passwordsIf you want to capture passwords as well, set the capture_passwords attribute.Required
redirect_urlGophish also provides the ability to redirect users to a URL after they submit credentials. This is controlled by setting the redirect_url attribute.Required

Context Output

PathTypeDescription
Gophish.CreatedLandingPageStringinfo about the created page

Command Example

!gophish-create-landing-page name=TestingCommands html="here goes the html" capture_credentials=True capture_passwords=True redirect_url=https://www.paloaltonetworks.com

Context Example

{
"Gophish": {
"CreatedLandingPage": {
"capture_credentials": true,
"capture_passwords": true,
"html": "<html><head></head><body>here goes the html</body></html>",
"id": 4,
"modified_date": "2020-09-04T05:17:10.247261753Z",
"name": "TestingCommands",
"redirect_url": "https://www.paloaltonetworks.com"
}
}
}

Human Readable Output

Results

capture_credentialscapture_passwordshtmlidmodified_datenameredirect_url
truetruehere goes the html42020-09-04T05:17:10.247261753ZTestingCommandshttps://www.paloaltonetworks.com

gophish-delete-landing-page


Deletes a landing page.

Base Command

gophish-delete-landing-page

Input

Argument NameDescriptionRequired
idID of the page to be deletedRequired

Context Output

PathTypeDescription
Gophish.DeletedLandingPageStringDeletes a landing page.

Command Example

!gophish-delete-landing-page id=3

Context Example

{
"Gophish": {
"DeletedLandingPage": {
"data": null,
"message": "Page Deleted Successfully",
"success": true
}
}
}

Human Readable Output

Results

datamessagesuccess
Page Deleted Successfullytrue

gophish-import-site-as-landing-page


Fetches a URL to be later imported as a landing page

Base Command

gophish-import-site-as-landing-page

Input

Argument NameDescriptionRequired
urlThe URL to fetch (include http or https://)Required
include_resourcesWhether or not to create a <base> tag in the resulting HTML to resolve static references (recommended: false)Optional

Context Output

PathTypeDescription
Gophish.ImportedSiteStringThis API endpoint doesn't actually create a new landing page. Instead, you can use the HTML returned from this endpoint as an input to the Create Landing Page method.

Command Example

!gophish-import-site-as-landing-page url="https://xsoar.pan.dev" include_resources=False

Context Example

{
"Gophish": {
"ImportedSite": {
"HTML GOES HERE"
}
}
}

Human Readable Output

Results

html
HTML GOES HERE

gophish-get-all-templates


Returns a list of templates.

Base Command

gophish-get-all-templates

Input

Argument NameDescriptionRequired

Context Output

PathTypeDescription
Gophish.AllTemplatesStringInfo about all templates

Command Example

!gophish-get-all-templates

Context Example

{
"Gophish": {
"AllTemplates": [
{
"attachments": [],
"html": "",
"id": 1,
"modified_date": "2020-09-03T08:08:43.392043833Z",
"name": "Credentials",
"subject": "Input your credentials here",
"text": "Here {.URL}"
},
{
"attachments": [],
"html": "",
"id": 3,
"modified_date": "2020-09-04T05:12:08.022300211Z",
"name": "TestingTemplates2",
"subject": "Test",
"text": "Test"
}
]
}
}

Human Readable Output

Results

attachmentshtmlidmodified_datenamesubjecttext
12020-09-03T08:08:43.392043833ZCredentialsInput your credentials hereHere {.URL}
32020-09-04T05:12:08.022300211ZTestingTemplates2TestTest

gophish-get-template


Returns a template with the provided ID.Returns a 404: Not Found error if the specified template doesn't exist.

Base Command

gophish-get-template

Input

Argument NameDescriptionRequired
idThe template IDRequired

Context Output

PathTypeDescription
Gophish.TemplateStringReturns a template with the provided ID

Command Example

!gophish-get-template id=1

Context Example

{
"Gophish": {
"Template": {
"attachments": [],
"html": "",
"id": 1,
"modified_date": "2020-09-03T08:08:43.392043833Z",
"name": "Credentials",
"subject": "Input your credentials here",
"text": "Here {.URL}"
}
}
}

Human Readable Output

Results

attachmentshtmlidmodified_datenamesubjecttext
12020-09-03T08:08:43.392043833ZCredentialsInput your credentials hereHere {.URL}

gophish-delete-template


Deletes a template by ID.

Base Command

gophish-delete-template

Input

Argument NameDescriptionRequired
idThe template ID to deleteRequired

Context Output

PathTypeDescription
Gophish.DeletedTemplateStringDeleted Template

Command Example

!gophish-delete-template id=3

Context Example

{
"Gophish": {
"DeletedTemplate": {
"data": null,
"message": "Template deleted successfully!",
"success": true
}
}
}

Human Readable Output

Results

datamessagesuccess
Template deleted successfully!true

gophish-import-template


This method doesn't fully import the email as a template. Instead, it parses the email, returning a response that can be used with the "Create Template" endpoint.

Base Command

gophish-import-template

Input

Argument NameDescriptionRequired
convert_linksWhether or not to convert the links within the email to automatically.Required
contentThe original email content in RFC 2045 format, including the original headers.Required

Context Output

PathTypeDescription
Gophish.ImportedTemplatestringInfo about the imported template

Command Example

!gophish-import-template convert_links=False content=contenthere

Context Example

{
"Gophish": {
"ImportedTemplate": {
"html": "<html><head></head><body></body></html>",
"subject": "",
"text": ""
}
}
}

Human Readable Output

Results

htmlsubjecttext

gophish-create-template


Creates a new template from the provided data

Base Command

gophish-create-template

Input

Argument NameDescriptionRequired
nameName of the templateRequired
subjectSubject to use: {{.FirstName}}, please reset your password.Required
textText formatted content: Please reset your password here: {{.URL}}Optional
htmlHTML formatted content: <html><head></head><body>Please reset your password <a href\"{{.URL}}\">here</a></body></html>"Optional
attachmentContentattachment is expected to be base64 encoded.Optional
attachmentTypeType of the attachmentOptional
attachmentNameName of the attachmentOptional

Context Output

PathTypeDescription
Gophish.CreatedTemplatestringInformation about the created template

Command Example

!gophish-create-template name=TestingTemplates subject=Test text=Test

Context Example

{
"Gophish": {
"CreatedTemplate": {
"attachments": [],
"html": "",
"id": 4,
"modified_date": "2020-09-04T05:17:14.823279988Z",
"name": "TestingTemplates",
"subject": "Test",
"text": "Test"
}
}
}

Human Readable Output

Results

attachmentshtmlidmodified_datenamesubjecttext
42020-09-04T05:17:14.823279988ZTestingTemplatesTestTest

gophish-get-all-campaigns


Returns a list of campaigns.

Base Command

gophish-get-all-campaigns

Input

Argument NameDescriptionRequired

Context Output

PathTypeDescription
Gophish.AllCampaignsStringList of all campaigns

Command Example

!gophish-get-all-campaigns

Context Example

{
"Gophish": {
"AllCampaigns": [
{
"completed_date": "0001-01-01T00:00:00Z",
"created_date": "2020-09-03T08:09:42.08969595Z",
"id": 1,
"launch_date": "2020-10-14T08:09:00Z",
"name": "NewCampaign",
"page": {
"capture_credentials": true,
"capture_passwords": false,
"html": "HTML GOES HERE",
"id": 1,
"modified_date": "2020-09-03T08:08:18.028831434Z",
"name": "Outlook",
"redirect_url": "https://urlhere"
},
"results": [
{
"email": "emailaddress",
"first_name": "Esko",
"id": "T2VJTQS",
"ip": "",
"last_name": "Eskola",
"latitude": 0,
"longitude": 0,
"modified_date": "2020-09-03T08:09:42.08969595Z",
"position": "CEO",
"reported": false,
"send_date": "2020-10-14T08:09:00Z",
"status": "Scheduled"
},
{
"email": "emailaddress",
"first_name": "Jorma",
"id": "E2DXw2D",
"ip": "",
"last_name": "Jormala",
"latitude": 0,
"longitude": 0,
"modified_date": "2020-09-03T08:09:42.08969595Z",
"position": "CFO",
"reported": false,
"send_date": "2020-10-14T08:09:00Z",
"status": "Scheduled"
}
],
"send_by_date": "0001-01-01T00:00:00Z",
"smtp": {
"from_address": "Phil emailaddress",
"headers": [],
"host": "smtp.gmail.com:465",
"id": 1,
"ignore_cert_errors": true,
"interface_type": "SMTP",
"modified_date": "2020-09-03T08:07:35.811631358Z",
"name": "Google",
"password": "password",
"username": "emailaddress"
},
"status": "Queued",
"template": {
"attachments": [],
"html": "",
"id": 1,
"modified_date": "2020-09-03T08:08:43.392043833Z",
"name": "Credentials",
"subject": "Input your credentials here",
"text": "Here {.URL}"
},
"timeline": [
{
"campaign_id": 1,
"details": "",
"email": "",
"message": "Campaign Created",
"time": "2020-09-03T08:09:42.104751093Z"
}
],
"url": "https://192.168.1.21:80"
},
{
"completed_date": "0001-01-01T00:00:00Z",
"created_date": "2020-09-04T05:13:31.036755648Z",
"id": 3,
"launch_date": "2020-09-05T05:13:31Z",
"name": "TestingCommands2",
"page": {
"capture_credentials": true,
"capture_passwords": false,
"html": "HTML GOES HERE",
"id": 1,
"modified_date": "2020-09-03T08:08:18.028831434Z",
"name": "Outlook",
"redirect_url": "https://urlhere"
},
"results": [
{
"email": "emailaddress",
"first_name": "Esko",
"id": "004ElYP",
"ip": "",
"last_name": "Eskola",
"latitude": 0,
"longitude": 0,
"modified_date": "2020-09-04T05:13:31.036755648Z",
"position": "CEO",
"reported": false,
"send_date": "2020-09-05T05:13:31Z",
"status": "Scheduled"
},
{
"email": "emailaddress",
"first_name": "Jorma",
"id": "VnfTc5i",
"ip": "",
"last_name": "Jormala",
"latitude": 0,
"longitude": 0,
"modified_date": "2020-09-04T05:13:31.036755648Z",
"position": "CFO",
"reported": false,
"send_date": "2020-09-05T05:13:31Z",
"status": "Scheduled"
}
],
"send_by_date": "0001-01-01T00:00:00Z",
"smtp": {
"from_address": "Phil emailaddress",
"headers": [],
"host": "smtp.gmail.com:465",
"id": 1,
"ignore_cert_errors": true,
"interface_type": "SMTP",
"modified_date": "2020-09-03T08:07:35.811631358Z",
"name": "Google",
"password": "password",
"username": "emailaddress"
},
"status": "Queued",
"template": {
"attachments": [],
"html": "",
"id": 1,
"modified_date": "2020-09-03T08:08:43.392043833Z",
"name": "Credentials",
"subject": "Input your credentials here",
"text": "Here {.URL}"
},
"timeline": [
{
"campaign_id": 3,
"details": "",
"email": "",
"message": "Campaign Created",
"time": "2020-09-04T05:13:31.046378362Z"
}
],
"url": "https://192.168.1.1:80"
}
]
}
}

Human Readable Output

Results

completed_datecreated_dateidlaunch_datenamepageresultssend_by_datesmtpstatustemplatetimelineurl
0001-01-01T00:00:00Z2020-09-03T08:09:42.08969595Z12020-10-14T08:09:00ZNewCampaignid: 1
name: Outlook
html: HTML GOES HERE
capture_credentials: true
capture_passwords: false
redirect_url: https://urlhere
modified_date: 2020-09-03T08:08:18.028831434Z
{'id': '004ElYP', 'status': 'Scheduled', 'ip': '', 'latitude': 0, 'longitude': 0, 'send_date': '2020-09-05T05:13:31Z', 'reported': False, 'modified_date': '2020-09-04T05:13:31.036755648Z', 'email': 'emailaddress', 'first_name': 'Esko', 'last_name': 'Eskola', 'position': 'CEO'},
{'id': 'VnfTc5i', 'status': 'Scheduled', 'ip': '', 'latitude': 0, 'longitude': 0, 'send_date': '2020-09-05T05:13:31Z', 'reported': False, 'modified_date': '2020-09-04T05:13:31.036755648Z', 'email': 'emailaddress', 'first_name': 'Jorma', 'last_name': 'Jormala', 'position': 'CFO'}
0001-01-01T00:00:00Zid: 1
interface_type: SMTP
name: Google
host: smtp.gmail.com:465
username: emailaddress
password: password
from_address: Phil emailaddress
ignore_cert_errors: true
headers:
modified_date: 2020-09-03T08:07:35.811631358Z
Queuedid: 1
name: Credentials
subject: Input your credentials here
text: Here {.URL}
html:
modified_date: 2020-09-03T08:08:43.392043833Z
attachments:
{'campaign_id': 3, 'email': '', 'time': '2020-09-04T05:13:31.046378362Z', 'message': 'Campaign Created', 'details': ''}https://192.168.1.1:80

gophish-get-campaign-details


Returns a campaign given an ID.

Base Command

gophish-get-campaign-details

Input

Argument NameDescriptionRequired
idThe campaign IDRequired

Context Output

PathTypeDescription
Gophish.CampaignDetailsstringinfo about the campaign details

Command Example

!gophish-get-campaign-details id=1

Context Example

{
"Gophish": {
"CampaignDetails": {
"completed_date": "0001-01-01T00:00:00Z",
"created_date": "2020-09-03T08:09:42.08969595Z",
"id": 1,
"launch_date": "2020-10-14T08:09:00Z",
"name": "NewCampaign",
"page": {
"capture_credentials": true,
"capture_passwords": false,
"html": "HTML GOES HERE",
"id": 1,
"modified_date": "2020-09-03T08:08:18.028831434Z",
"name": "Outlook",
"redirect_url": "https://urlhere"
},
"results": [
{
"email": "emailaddress",
"first_name": "Esko",
"id": "T2VJTQS",
"ip": "",
"last_name": "Eskola",
"latitude": 0,
"longitude": 0,
"modified_date": "2020-09-03T08:09:42.08969595Z",
"position": "CEO",
"reported": false,
"send_date": "2020-10-14T08:09:00Z",
"status": "Scheduled"
},
{
"email": "emailaddress",
"first_name": "Jorma",
"id": "E2DXw2D",
"ip": "",
"last_name": "Jormala",
"latitude": 0,
"longitude": 0,
"modified_date": "2020-09-03T08:09:42.08969595Z",
"position": "CFO",
"reported": false,
"send_date": "2020-10-14T08:09:00Z",
"status": "Scheduled"
}
],
"send_by_date": "0001-01-01T00:00:00Z",
"smtp": {
"from_address": "Phil emailaddress",
"headers": [],
"host": "smtp.gmail.com:465",
"id": 1,
"ignore_cert_errors": true,
"interface_type": "SMTP",
"modified_date": "2020-09-03T08:07:35.811631358Z",
"name": "Google",
"password": "password",
"username": "emailaddress"
},
"status": "Queued",
"template": {
"attachments": [],
"html": "",
"id": 1,
"modified_date": "2020-09-03T08:08:43.392043833Z",
"name": "Credentials",
"subject": "Input your credentials here",
"text": "Here {.URL}"
},
"timeline": [
{
"campaign_id": 1,
"details": "",
"email": "",
"message": "Campaign Created",
"time": "2020-09-03T08:09:42.104751093Z"
}
],
"url": "https://192.168.1.21:80"
}
}
}

Human Readable Output

Results

completed_datecreated_dateidlaunch_datenamepageresultssend_by_datesmtpstatustemplatetimelineurl
0001-01-01T00:00:00Z2020-09-03T08:09:42.08969595Z12020-10-14T08:09:00ZNewCampaignid: 1
name: Outlook
html: HTML GOES HERE
capture_credentials: true
capture_passwords: false
redirect_url: https://urlhere
modified_date: 2020-09-03T08:08:18.028831434Z
{'id': 'T2VJTQS', 'status': 'Scheduled', 'ip': '', 'latitude': 0, 'longitude': 0, 'send_date': '2020-10-14T08:09:00Z', 'reported': False, 'modified_date': '2020-09-03T08:09:42.08969595Z', 'email': 'emailaddress', 'first_name': 'Esko', 'last_name': 'Eskola', 'position': 'CEO'},
{'id': 'E2DXw2D', 'status': 'Scheduled', 'ip': '', 'latitude': 0, 'longitude': 0, 'send_date': '2020-10-14T08:09:00Z', 'reported': False, 'modified_date': '2020-09-03T08:09:42.08969595Z', 'email': 'emailaddress', 'first_name': 'Jorma', 'last_name': 'Jormala', 'position': 'CFO'}
0001-01-01T00:00:00Zid: 1
interface_type: SMTP
name: Google
host: smtp.gmail.com:465
username: emailaddress
password: password
from_address: Phil emailaddress
ignore_cert_errors: true
headers:
modified_date: 2020-09-03T08:07:35.811631358Z
Queuedid: 1
name: Credentials
subject: Input your credentials here
text: Here {.URL}
html:
modified_date: 2020-09-03T08:08:43.392043833Z
attachments:
{'campaign_id': 1, 'email': '', 'time': '2020-09-03T08:09:42.104751093Z', 'message': 'Campaign Created', 'details': ''}https://192.168.1.21:80

gophish-get-campaign-results


Gets the results for a campaign.

Base Command

gophish-get-campaign-results

Input

Argument NameDescriptionRequired
idThe campaign IDRequired

Context Output

PathTypeDescription
Gophish.CampaignResultsStringResults of the campaign

Command Example

!gophish-get-campaign-results id=1

Context Example

{
"Gophish": {
"CampaignResults": {
"id": 1,
"name": "NewCampaign",
"results": [
{
"email": "emailaddress",
"first_name": "Esko",
"id": "T2VJTQS",
"ip": "",
"last_name": "Eskola",
"latitude": 0,
"longitude": 0,
"modified_date": "2020-09-03T08:09:42.08969595Z",
"position": "CEO",
"reported": false,
"send_date": "2020-10-14T08:09:00Z",
"status": "Scheduled"
},
{
"email": "emailaddress",
"first_name": "Jorma",
"id": "E2DXw2D",
"ip": "",
"last_name": "Jormala",
"latitude": 0,
"longitude": 0,
"modified_date": "2020-09-03T08:09:42.08969595Z",
"position": "CFO",
"reported": false,
"send_date": "2020-10-14T08:09:00Z",
"status": "Scheduled"
}
],
"status": "Queued",
"timeline": [
{
"campaign_id": 1,
"details": "",
"email": "",
"message": "Campaign Created",
"time": "2020-09-03T08:09:42.104751093Z"
}
]
}
}
}

Human Readable Output

Results

idnameresultsstatustimeline
1NewCampaign{'id': 'T2VJTQS', 'status': 'Scheduled', 'ip': '', 'latitude': 0, 'longitude': 0, 'send_date': '2020-10-14T08:09:00Z', 'reported': False, 'modified_date': '2020-09-03T08:09:42.08969595Z', 'email': 'emailaddress', 'first_name': 'Esko', 'last_name': 'Eskola', 'position': 'CEO'},
{'id': 'E2DXw2D', 'status': 'Scheduled', 'ip': '', 'latitude': 0, 'longitude': 0, 'send_date': '2020-10-14T08:09:00Z', 'reported': False, 'modified_date': '2020-09-03T08:09:42.08969595Z', 'email': 'emailaddress', 'first_name': 'Jorma', 'last_name': 'Jormala', 'position': 'CFO'}
Queued{'campaign_id': 1, 'email': '', 'time': '2020-09-03T08:09:42.104751093Z', 'message': 'Campaign Created', 'details': ''}

gophish-get-campaign-summary


Returns summary information about a campaign.

Base Command

gophish-get-campaign-summary

Input

Argument NameDescriptionRequired
idThe campaign IDRequired

Context Output

PathTypeDescription
Gophish.CampaignSummaryStringSummary stats of the campaign

Command Example

!gophish-get-campaign-summary id=1

Context Example

{
"Gophish": {
"CampaignSummary": {
"completed_date": "0001-01-01T00:00:00Z",
"created_date": "2020-09-03T08:09:42.08969595Z",
"id": 1,
"launch_date": "2020-10-14T08:09:00Z",
"name": "NewCampaign",
"send_by_date": "0001-01-01T00:00:00Z",
"stats": {
"clicked": 0,
"email_reported": 0,
"error": 0,
"opened": 0,
"sent": 0,
"submitted_data": 0,
"total": 2
},
"status": "Queued"
}
}
}

Human Readable Output

Results

completed_datecreated_dateidlaunch_datenamesend_by_datestatsstatus
0001-01-01T00:00:00Z2020-09-03T08:09:42.08969595Z12020-10-14T08:09:00ZNewCampaign0001-01-01T00:00:00Ztotal: 2
sent: 0
opened: 0
clicked: 0
submitted_data: 0
email_reported: 0
error: 0
Queued

gophish-delete-campaign


Deletes a campaign by ID

Base Command

gophish-delete-campaign

Input

Argument NameDescriptionRequired
idThe campaign IDRequired

Context Output

PathTypeDescription
Gophish.DeletedCampaignStringThe delelted campaign

Command Example

!gophish-delete-campaign id=3

Context Example

{
"Gophish": {
"DeletedCampaign": {
"data": null,
"message": "Campaign deleted successfully!",
"success": true
}
}
}

Human Readable Output

Results

datamessagesuccess
Campaign deleted successfully!true

gophish-complete-campaign


Marks a campaign as complete.

Base Command

gophish-complete-campaign

Input

Argument NameDescriptionRequired
idThe campaign IDRequired

Context Output

PathTypeDescription
Gophish.CompletedCampaignStringDetails about the completed campaign

Command Example

!gophish-complete-campaign id=3

Context Example

{
"Gophish": {
"CompletedCampaign": {
"data": null,
"message": "Campaign completed successfully!",
"success": true
}
}
}

Human Readable Output

Results

datamessagesuccess
Campaign completed successfully!true

gophish-create-campaign


Creates and launches a new campaign.

Base Command

gophish-create-campaign

Input

Argument NameDescriptionRequired
nameName of the CampaignRequired
templateTemplate to useRequired
urlURL to useRequired
pageLanding Page to useRequired
smtpSending profile to useRequired
launch_dateWhen to launch the campaign for example (2018-10-08T16:20:00+00:00)Required
send_by_dateSend all emails by for example (2018-10-10T16:20:00+00:00)Optional
groupsGroup names to send to as a list (Group1,group2 etc)Required

Context Output

PathTypeDescription
Gophish.CreatedCampaignStringinfo about the created campaign

Command Example

!gophish-create-campaign name=TestingCommands template=Credentials url=https://192.168.1.1:80 page=Outlook smtp=Google launch_date=Tomorrow groups=Users

Context Example

{
"Gophish": {
"CreatedCampaign": {
"completed_date": "0001-01-01T00:00:00Z",
"created_date": "2020-09-04T05:20:59.3716417Z",
"groups": [
{
"id": 1,
"modified_date": "2020-09-03T08:09:17.940720135Z",
"name": "Users",
"targets": [
{
"email": "emailaddress",
"first_name": "Esko",
"last_name": "Eskola",
"position": "CEO"
},
{
"email": "emailaddress",
"first_name": "Jorma",
"last_name": "Jormala",
"position": "CFO"
}
]
}
],
"id": 5,
"launch_date": "2020-09-05T05:20:59Z",
"name": "TestingCommands",
"page": {
"capture_credentials": true,
"capture_passwords": false,
"html": "HTML GOES HERE",
"id": 1,
"modified_date": "2020-09-03T08:08:18.028831434Z",
"name": "Outlook",
"redirect_url": "https://urlhere"
},
"results": [
{
"email": "emailaddress",
"first_name": "Esko",
"id": "UrR1was",
"ip": "",
"last_name": "Eskola",
"latitude": 0,
"longitude": 0,
"modified_date": "2020-09-04T05:20:59.3716417Z",
"position": "CEO",
"reported": false,
"send_date": "2020-09-05T05:20:59Z",
"status": "Scheduled"
},
{
"email": "emailaddress",
"first_name": "Jorma",
"id": "fuM9Io2",
"ip": "",
"last_name": "Jormala",
"latitude": 0,
"longitude": 0,
"modified_date": "2020-09-04T05:20:59.3716417Z",
"position": "CFO",
"reported": false,
"send_date": "2020-09-05T05:20:59Z",
"status": "Scheduled"
}
],
"send_by_date": "0001-01-01T00:00:00Z",
"smtp": {
"from_address": "Phil emailaddress",
"headers": [],
"host": "smtp.gmail.com:465",
"id": 1,
"ignore_cert_errors": true,
"interface_type": "SMTP",
"modified_date": "2020-09-03T08:07:35.811631358Z",
"name": "Google",
"password": "password",
"username": "emailaddress"
},
"status": "Queued",
"template": {
"attachments": [],
"html": "",
"id": 1,
"modified_date": "2020-09-03T08:08:43.392043833Z",
"name": "Credentials",
"subject": "Input your credentials here",
"text": "Here {.URL}"
},
"url": "https://192.168.1.1:80"
}
}
}

Human Readable Output

Results

completed_datecreated_dategroupsidlaunch_datenamepageresultssend_by_datesmtpstatustemplateurl
0001-01-01T00:00:00Z2020-09-04T05:20:59.3716417Z{'id': 1, 'name': 'Users', 'modified_date': '2020-09-03T08:09:17.940720135Z', 'targets': [{'email': 'emailaddress', 'first_name': 'Esko', 'last_name': 'Eskola', 'position': 'CEO'}, {'email': 'emailaddress', 'first_name': 'Jorma', 'last_name': 'Jormala', 'position': 'CFO'}]}52020-09-05T05:20:59ZTestingCommandsid: 1
name: Outlook
html: HTML GOES HERE
capture_credentials: true
capture_passwords: false
redirect_url: https://urlhere
modified_date: 2020-09-03T08:08:18.028831434Z
{'id': 'UrR1was', 'status': 'Scheduled', 'ip': '', 'latitude': 0, 'longitude': 0, 'send_date': '2020-09-05T05:20:59Z', 'reported': False, 'modified_date': '2020-09-04T05:20:59.3716417Z', 'email': 'emailaddress', 'first_name': 'Esko', 'last_name': 'Eskola', 'position': 'CEO'},
{'id': 'fuM9Io2', 'status': 'Scheduled', 'ip': '', 'latitude': 0, 'longitude': 0, 'send_date': '2020-09-05T05:20:59Z', 'reported': False, 'modified_date': '2020-09-04T05:20:59.3716417Z', 'email': 'emailaddress', 'first_name': 'Jorma', 'last_name': 'Jormala', 'position': 'CFO'}
0001-01-01T00:00:00Zid: 1
interface_type: SMTP
name: Google
host: smtp.gmail.com:465
username: emailaddress
password: password
from_address: Phil emailaddress
ignore_cert_errors: true
headers:
modified_date: 2020-09-03T08:07:35.811631358Z
Queuedid: 1
name: Credentials
subject: Input your credentials here
text: Here {.URL}
html:
modified_date: 2020-09-03T08:08:43.392043833Z
attachments:
https://192.168.1.1:80

gophish-get-all-groups


Returns a list of groups.

Base Command

gophish-get-all-groups

Input

Argument NameDescriptionRequired

Context Output

PathTypeDescription
Gophish.AllGroupsStringList of all groups

Command Example

!gophish-get-all-groups

Context Example

{
"Gophish": {
"AllGroups": [
{
"id": 1,
"modified_date": "2020-09-03T08:09:17.940720135Z",
"name": "Users",
"targets": [
{
"email": "emailaddress",
"first_name": "Esko",
"last_name": "Eskola",
"position": "CEO"
},
{
"email": "emailaddress",
"first_name": "Jorma",
"last_name": "Jormala",
"position": "CFO"
}
]
},
{
"id": 4,
"modified_date": "2020-09-04T05:15:06.201901744Z",
"name": "Testingcommands2",
"targets": [
{
"email": "emailaddress",
"first_name": "john",
"last_name": "johnson",
"position": "CEO"
}
]
}
]
}
}

Human Readable Output

Results

idmodified_datenametargets
12020-09-03T08:09:17.940720135ZUsers{'email': 'emailaddress', 'first_name': 'Esko', 'last_name': 'Eskola', 'position': 'CEO'},
{'email': 'emailaddress', 'first_name': 'Jorma', 'last_name': 'Jormala', 'position': 'CFO'}
42020-09-04T05:15:06.201901744ZTestingcommands2{'email': 'emailaddress', 'first_name': 'john', 'last_name': 'johnson', 'position': 'CEO'}

gophish-get-group


Returns a group with the given ID.

Base Command

gophish-get-group

Input

Argument NameDescriptionRequired
idThe group IDRequired

Context Output

PathTypeDescription
Gophish.GroupStringInfo about the group

Command Example

!gophish-get-group id=1

Context Example

{
"Gophish": {
"Group": {
"id": 1,
"modified_date": "2020-09-03T08:09:17.940720135Z",
"name": "Users",
"targets": [
{
"email": "emailaddress",
"first_name": "Esko",
"last_name": "Eskola",
"position": "CEO"
},
{
"email": "emailaddress",
"first_name": "Jorma",
"last_name": "Jormala",
"position": "CFO"
}
]
}
}
}

Human Readable Output

Results

idmodified_datenametargets
12020-09-03T08:09:17.940720135ZUsers{'email': 'emailaddress', 'first_name': 'Esko', 'last_name': 'Eskola', 'position': 'CEO'},
{'email': 'emailaddress', 'first_name': 'Jorma', 'last_name': 'Jormala', 'position': 'CFO'}

gophish-get-all-groups-summary


Returns a summary of each group.

Base Command

gophish-get-all-groups-summary

Input

Argument NameDescriptionRequired

Context Output

PathTypeDescription
Gophish.AllGroupsSummaryStringSummary data of all groups

Command Example

!gophish-get-all-groups-summary

Context Example

{
"Gophish": {
"AllGroupsSummary": {
"groups": [
{
"id": 1,
"modified_date": "2020-09-03T08:09:17.940720135Z",
"name": "Users",
"num_targets": 2
},
{
"id": 4,
"modified_date": "2020-09-04T05:15:06.201901744Z",
"name": "Testingcommands2",
"num_targets": 1
}
],
"total": 2
}
}
}

Human Readable Output

Results

groupstotal
{'id': 1, 'name': 'Users', 'modified_date': '2020-09-03T08:09:17.940720135Z', 'num_targets': 2},
{'id': 4, 'name': 'Testingcommands2', 'modified_date': '2020-09-04T05:15:06.201901744Z', 'num_targets': 1}
2

gophish-get-group-summary


It may be the case that you just want the number of members in a group, not necessarily the full member details. This API endpoint returns a summary for a group.

Base Command

gophish-get-group-summary

Input

Argument NameDescriptionRequired
idThe group IDRequired

Context Output

PathTypeDescription
Gophish.GroupSummaryStringSummary data for the group

Command Example

!gophish-get-group-summary id=1

Context Example

{
"Gophish": {
"GroupSummary": {
"id": 1,
"modified_date": "2020-09-03T08:09:17.940720135Z",
"name": "Users",
"num_targets": 2
}
}
}

Human Readable Output

Results

idmodified_datenamenum_targets
12020-09-03T08:09:17.940720135ZUsers2

gophish-create-group


Creates a new group.

Base Command

gophish-create-group

Input

Argument NameDescriptionRequired
namename of the groupRequired
targetsList of targets format: email,firstname,lastname,position:email,firstname,lastname,position etcRequired

Context Output

PathTypeDescription
Gophish.CreatedGroupStringdetails about the created group

Command Example

!gophish-create-group name=Testingcommands targets="emailaddress,john,johnson,CEO"

Context Example

{
"Gophish": {
"CreatedGroup": {
"id": 5,
"modified_date": "2020-09-04T05:17:31.959112924Z",
"name": "Testingcommands",
"targets": [
{
"email": "emailaddress",
"first_name": "john",
"last_name": "johnson",
"position": "CEO"
}
]
}
}
}

Human Readable Output

Results

idmodified_datenametargets
52020-09-04T05:17:31.959112924ZTestingcommands{'email': 'emailaddress', 'first_name': 'john', 'last_name': 'johnson', 'position': 'CEO'}

gophish-delete-group


Deletes a group

Base Command

gophish-delete-group

Input

Argument NameDescriptionRequired
idThe group IDRequired

Context Output

PathTypeDescription
Gophish.DeletedGroupStringinfo about the group that was deleted

Command Example

!gophish-delete-group id=4

Context Example

{
"Gophish": {
"DeletedGroup": {
"data": null,
"message": "Group deleted successfully!",
"success": true
}
}
}

Human Readable Output

Results

datamessagesuccess
Group deleted successfully!true

gophish-get-landing-page


Gets a landing page info

Base Command

gophish-get-landing-page

Input

Argument NameDescriptionRequired
idid of the page to getRequired

Context Output

PathTypeDescription
Gophish.LandingPagestringinfo about the landing page

Command Example

!gophish-get-landing-page id=1

Context Example

{
"Gophish": {
"LandingPage": {
"capture_credentials": true,
"capture_passwords": false,
"html": "HTML GOES HERE",
"id": 1,
"modified_date": "2020-09-03T08:08:18.028831434Z",
"name": "Outlook",
"redirect_url": "https://urlhere"
}
}
}

Human Readable Output

Results

capture_credentialscapture_passwordshtmlidmodified_datenameredirect_url
truefalseHTML GOES HERE12020-09-03T08:08:18.028831434ZOutlookhttps://urlhere