List groups
GET/api/v1/groups
Returns all recipient groups in your organization.
Headers
| Name | Type | Description |
|---|
X-API-Keyrequired | string | Org API key |
Responses
[{ "id": "…", "name": "Finance", "member_count": 42 }]
Example
curl -s -X GET \
-H "X-API-Key: YOUR_KEY" \
https://app-fish.pandaone.dev/api/v1/groups
Create group
POST/api/v1/groups
Creates a recipient group from inline members or CSV upload.
Headers
| Name | Type | Description |
|---|
X-API-Keyrequired | string | Org API key |
Request body
| Name | Type | Description |
|---|
namerequired | string | Group name |
csv | string | Optional CSV with Gophish headers |
members | array | Optional member objects |
Responses
{ "id": "…", "name": "Finance" }
Example
curl -s -X POST \
-H "X-API-Key: YOUR_KEY" \
-H "Content-Type: application/json" \
https://app-fish.pandaone.dev/api/v1/groups
-d ''{"name":"Finance","csv":"First Name,Last Name,Email,Position\nAda,Lovelace,ada@example.com,CFO"}''
Add members
POST/api/v1/groups/{id}/members/bulk
Adds recipients to an existing group via CSV.
Headers
| Name | Type | Description |
|---|
X-API-Keyrequired | string | Org API key |
Path parameters
| Name | Type | Description |
|---|
idrequired | string | Group ID |
Request body
| Name | Type | Description |
|---|
csvrequired | string | Gophish-format CSV |
Responses
{ "added": 12 }
Example
curl -s -X POST \
-H "X-API-Key: YOUR_KEY" \
-H "Content-Type: application/json" \
https://app-fish.pandaone.dev/api/v1/groups/GROUP_ID/members/bulk
-d ''{"csv":"First Name,Last Name,Email,Position\nBob,Smith,bob@example.com,Analyst"}''