This example shows how to retrieve the name and size of every group in Gophish.
from gophish import Gophishapi_key ='API_KEY'api =Gophish(api_key)for group in api.groups.get():print'{} has {} users'.format(group.name, len(group.targets))
Models
gophish.models.User
Attributes
id (int) The user ID
first_name (str) The first name
last_name (str) The last name
email (str) The email address
position (str) The position (job role)
Methods
__init__(self, **kwargs) - Returns a new User Example:
gophish.models.Group
A group contains one or more models.User objects. The group name must be unique.
Attributes
id (int) The group ID
targets (list(models.User)) The group's users
name (str) The group name
modified_date (optional: datetime.datetime) The scheduled time for group launch
Methods
__init__(self, **kwargs) - Returns a new Group
Example:
Methods
gophish.api.groups.get(group_id=None)
Gets the details for one or more groups. To get a particular group, set the ID to the group ID.
If the group_id is not set, all groups owned by the current user will be returned.
Returns
If the group is set: models.Group
If group_id is None: list(models.Group)
gophish.api.groups.post(group)
Creates a new group. This endpoint requires you to submit a gophish.models.Group object.
Returns
The gophish.models.Group object that was created.
gophish.api.groups.put(group)
Edits an existing group. This endpoint requires you to submit an existing gophish.models.Group object with its id attribute set correctly.
Returns
The gophish.models.Group object that was edited.
gophish.api.groups.delete(group_id)
Deletes the group specified by group_id.
Returns
A gophish.models.Status message.
Examples
Here are some examples to show how to use the API.