Templates
Templates are the emails that are sent out by PhishWare during a campaign.
The templates endpoint allows you to create, view, and manage PhishWare templates.
Quick Example
This example shows how to retrieve the name of every template in PhishWare.
from
gophish
import
Gophish
api_key =
'API_KEY'
api = Gophish(api_key)
for
template
in
api.templates.get():
print
template.name
Models
gophish.models.Attachment
Attributes
content(str) The base64 encoded attachment contenttype(str) The content type of the attachmentname(str) The attachment filename
Methods
__init__(self, **kwargs)- Returns a new Attachment
Example:
todo
gophish.models.Template
A template contains a name and the email content.
Attributes
id(int) The template IDname(str) The template namehtml(str) The template HTMLtext(str) The template HTMLmodified_date(optional: datetime.datetime) The scheduled time for template launchattachments(list(models.Attachment)) The optional email attachments
Methods
__init__(self, **kwargs)- Returns a new Template
Example:
from gophish.models import *
template = Template(name='Test Template',
html="
<
html
>
<
body
>
Click
<
a href="{{.URL}}"
>
here
<
/a
>
<
/body
>
<
/html
>
)
Methods
gophish.api.templates.get(template_id=None)
Gets the details for one or more templates. To get a particular template, set the ID to the template ID.
If the template_id is not set, all templates owned by the current user will be returned.
Returns
If the
templateis set:models.TemplateIf
template_idisNone:list(models.Template)
gophish.api.templates.post(template)
Creates a new template. This endpoint requires you to submit a gophish.models.Template object.
Returns
The gophish.models.Template object that was created.
gophish.api.templates.put(template)
Edits an existing template. This endpoint requires you to submit an existing gophish.models.Template object with its id attribute set correctly.
Returns
The gophish.models.Template object that was edited.
gophish.api.templates.delete(template_id)
Deletes the template specified by template_id.
Returns
A gophish.models.Status message.
Examples
Here are some examples to show how to use the API.
All of these examples assume the following setup:
from
gophish
import
Gophish
from
gophish.models
import
*
api_key =
'API_KEY'
api = Gophish(api_key)
Get All Templates
templates = api.templates.get()
Get Single Template
template = api.templates.get(template_id=
1
)
Create New Template
template = Template(name='Test Template',
html="
<
html
>
<
body
>
Click
<
a href="{{.URL}}"
>
here
<
/a
>
<
/body
>
<
/html
>
)
template = api.templates.post(template)
print template.id