How do I invite and manage investors through the API?

RequestWhat it does
GET /investorsYour 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 /investorsInvite someone.
PATCH /investors/{id}Change access_ends_at, type or stage.
PUT /investors/{id}/accessGive 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 /groupsYour groups.
POST /groups/{id}/membersAdd 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, board or leadership.
  • stage, for prospective investors only: data_room, in_diligence, term_sheet, committed or passed.
  • access: view or download, or none to take it away. PUT /investors/{id}/access takes folder_id or document_id with access, 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. null means 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.

Still stuck? Write to hello@1936ai.com and a person will answer.