Files
Anthropic-Cybersecurity-Skills/skills/executing-phishing-simulation-campaign/references/api-reference.md
T
mukul975 27c6414ca5 Add folder anatomy (scripts/agent.py + references/api-reference.md) for 648 cybersecurity skills
Complete skill folder anatomy across all cybersecurity skills:
- scripts/agent.py: 80-150 line Python agents using real libraries (impacket,
  boto3, azure-mgmt-*, kubernetes, pefile, yara, scapy, shodan, stix2, etc.)
- references/api-reference.md: real API documentation with method signatures
- LICENSE: MIT license for all skill folders
2026-03-10 21:02:12 +01:00

2.0 KiB

API Reference: Phishing Simulation Campaign Agent

Dependencies

Library Version Purpose
requests >=2.28 HTTP client for GoPhish REST API

CLI Usage

# List campaigns
python scripts/agent.py --gophish-url https://gophish.lab:3333 --api-key KEY --action list

# Get campaign results
python scripts/agent.py --gophish-url https://gophish.lab:3333 --api-key KEY \
  --action results --campaign-id 1 --output report.json

GoPhishClient Class

__init__(base_url, api_key, verify_ssl=False)

Initializes the session with Bearer token auth for the GoPhish API.

create_sending_profile(name, smtp_from, host, username, password) -> dict

Creates an SMTP sending profile. GoPhish API: POST /api/smtp/.

create_email_template(name, subject, html_body, text_body) -> dict

Creates a phishing email template with credential capture enabled. API: POST /api/templates/.

create_landing_page(name, html, capture_creds, redirect_url) -> dict

Creates a credential harvesting page. API: POST /api/pages/.

import_targets(group_name, targets) -> dict

Imports a target list as a GoPhish group. Each target: {email, first_name, last_name, position}.

launch_campaign(name, template_id, page_id, smtp_id, group_ids, url) -> dict

Launches a phishing campaign. API: POST /api/campaigns/.

get_campaign_results(campaign_id) -> dict

Fetches campaign timeline and per-target results. API: GET /api/campaigns/{id}/results.

compute_metrics(results) -> dict

Calculates click rate, submission rate, and report rate from campaign timeline events.

GoPhish API Endpoints

Endpoint Method Purpose
/api/campaigns/ GET/POST List or create campaigns
/api/campaigns/{id}/results GET Campaign results with timeline
/api/templates/ POST Create email templates
/api/pages/ POST Create landing pages
/api/smtp/ POST Create SMTP profiles
/api/groups/ POST Create target groups