Sending profiles tell Gophish which SMTP servers to use when sending emails.
The SMTP endpoint allows you to create, view, and manage Gophish sending profiles.
Table of Contents
This example shows how to retrieve the name of every sending profile in Gophish.
from gophish import Gophish
api_key = 'API_KEY'
api = Gophish(api_key)
for smtp in api.smtp.get():
print smtp.name
gophish.models.SMTP
A sending profile contains the server address/port, and optional credentials.
Attributes
interface_type (str) The type of SMTP connection (for now, always use SMTP)
host (str) The host:port of the SMTP server
from_address (str) The address to send emails from (e.g. John Doe <[email protected]>)
ignore_cert_errors (bool) Whether or not to ignore SSL certificate validation errors (set to true in the case of self-signed certificates)
modified_date (optional: datetime.datetime) The datetime this SMTP profile was previously modified
Methods
__init__(self, **kwargs) - Returns a new SMTP object
gophish.api.smtp.get(smtp_id=None)
Gets the details for one or more sending profiles. To get a particular sending profiles, set the ID to the profile ID.
If the smtp_id is not set, all sending profiles owned by the current user will be returned.
Returns
If the smtp_id is set: models.SMTP
If smtp_id is None: list(models.SMTP)
gophish.api.smtp.post(smtp)
Creates a new sending profile. This endpoint requires you to submit a gophish.models.SMTP object.
Returns
The gophish.models.SMTP object that was created.
gophish.api.smtp.put(smtp)
Edits an existing sending profile. This endpoint requires you to submit an existing gophish.models.SMTP object with its id attribute set correctly.
Returns
The gophish.models.SMTP object that was edited.
gophish.api.smtp.delete(smtp_id)
Deletes the sending profile specified by smtp_id.
Returns
A gophish.models.Status message.
Here are some examples to show how to use the API.
All of these examples assume the following setup:
Get All Sending Profiles
Get Single Sending Profile
Create New Sending Profile