How do I invite and manage investors through the API?
| Request | What it does |
|---|---|
GET /investors | Your investors. Filter with status (invited, active or revoked), type and updated_since. |
GET /investors/{id} | One investor, with every document they can open and how they read each one: opens, seconds, pages seen and downloads. |
POST /investors | Invite someone. |
PATCH /investors/{id} | Change access_ends_at, type or stage. |
PUT /investors/{id}/access | Give or take away one folder or document. |
DELETE /investors/{id} | Revoke them, as the Revoke button does: they're signed out and can't sign in again. |
GET /groups | Your groups. |
POST /groups/{id}/members | Add an investor to a group: {"investor_id": "…"}. |
DELETE /groups/{id}/members/{investor_id} | Take them out of it. |
To invite someone:
curl https://galley.1936ai.com/api/v1/investors \
-H "Authorization: Bearer $GALLEY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"email": "ananya@northwind.example",
"name": "Ananya Rao",
"folders": [{ "folder_id": "…", "access": "view" }],
"access_ends_at": "2026-12-31"
}'
Only email is needed. You can also send type, group_ids, and "send_email": false to invite them yourself: they can sign in at galley.1936ai.com with their email. The answer is the investor, with invitation_email saying whether Galley's email went: sent, failed or not_sent.
- type:
prospective(the default),existing_investor,boardorleadership. - stage, for prospective investors only:
data_room,in_diligence,term_sheet,committedorpassed. - access:
viewordownload, ornoneto take it away.PUT /investors/{id}/accesstakesfolder_idordocument_idwithaccess, and changes only that investor's own access, never a group's. - access_ends_at: a date; access ends at the end of that day, India time.
nullmeans no end.
Each investor has id, email, name, firm, status, type, stage, access_ends_at, joined_at, last_active_at, engagement_score (0 to 100), groups, created_at and updated_at.