Sign In

Developer Center

The FutureFund Connect API is available to all FutureFund Connect users to access their data programmatically.

API End Point
The following is the base URL for the FutureFund Connect API. All endpoints will be prefixed with this URL.
Endpoint URL
https://connect.futurefund.com/api/v1

Authentication
You'll need to authenticate your requests to access any of the endpoints in the FutureFund Connect API. In this guide, we'll look at how authentication works.
With API Key authentication, the X-API-Key HTTP header must be included in the request. You can access your API key from the FutureFund Connect API page: https://connect.futurefund.com/users/api.
Example with an API KEY
curl --header "X-API-KEY: 123" https://connect.futurefund.com/api/v1/ping

Ping
get
https://connect.futurefund.com/api/v1/ping
This endpoint is used to check if the API is up and running. The user's email address is returned.
Request
curl https://connect.futurefund.com/api/v1/ping
Response
{
  "email": "user@example.com"
}

List all Terms
get
https://connect.futurefund.com/api/v1/terms
This endpoint is used to return available terms. Terms are used as fiscal year, school year, ot other annual time periods.
Request
curl https://connect.futurefund.com/api/v1/terms
Response
[
  {
    "id": "09823844c-4730-4296-ab92-c91aw25c0881",
    "name": "2025 - 2026",
    "start_year": 2025,
    "end_yar": 2026,
    "active": true
  },
  ...
]

List all Units
get
https://connect.futurefund.com/api/v1/units
This endpoint is used to return available units for the current user. Only units that have explicit permissions are returned. Implicit access is not returned.
Request
curl https://connect.futurefund.com/api/v1/units
Response
[
  {
    "id": "skylark",
    "name": "Skylark PTA",
    "council": "Pleasanton Council PTA",
    "district": "First District",
    "state": "Genovia",
  },
  ...
]

List all Memberships
get
https://connect.futurefund.com/api/v1/unit/:unit_id/memberships
This endpoint is used to return memberships created in the specified account.
Request
curl https://connect.futurefund.com/api/v1/unit/skylark/memberships
Response
[
    {
      "id": "0929844c-4730-4296-ab92-c91af25c0882",
      "first_name": "Jacqui",
      "last_name": "Barton",
      "email": "jbarton@example.com",
      "phone": "(925) 555-1212",
      "member_since": "May 13, 2025",
      "term_id": "1",
      "term": "2025-2026",
      "unit": "Skylark PTA",
      "council": "First Council",
      "district": "First District"
    },
  ...
]

Retrieve Membership
get
https://connect.futurefund.com/api/v1/membership/:id
This endpoint is used to return a membership created in the specified account.
Request
curl https://connect.futurefund.com/api/v1/membership/0929844c-4730-4296-ab92-c91af25c0882
Response
[
    {
      "id": "0929844c-4730-4296-ab92-c91af25c0882",
      "first_name": "Jacqui",
      "last_name": "Barton",
      "email": "jbarton@example.com",
      "phone": "(925) 555-1212",
      "member_since": "May 13, 2025",
      "term_id": "1",
      "term": "2025-2026",
      "unit": "Skylark PTA",
      "council": "First Council",
      "district": "First District"
    },
  ...
]

Create Membership
post
https://connect.futurefund.com/api/v1/membership/:unit_id/memberships
This endpoint is used to create a membership in the specified account.
Parameters
term_id
integer
Required
ID of the term for which the membership is valid.
first_name
string
Required
First name of the member.
last_name
string
Required
Last name of the member.
email
string
Required
Email address of the member.
phone
string
Phone number of the member.
member_since
date
Date when the member joined. Date can be outside of the term. Defaults to today.
Request
curl https://connect.futurefund.com/api/v1/units/skylark/memberships
Response
[
    {
      "id": "0929844c-4730-4296-ab92-c91af25c0882",
      "first_name": "Jacqui",
      "last_name": "Barton",
      "email": "jbarton@example.com",
      "phone": "(925) 555-1212",
      "member_since": "May 13, 2025",
      "term_id": "09823844c-4730-4296-ab92-c91aw25c0881",
      "term": "2025-2026",
      "unit": "Skylark PTA",
      "council": "First Council",
      "district": "First District"
    },
  ...
]

Delete Membership
delete
https://connect.futurefund.com/api/v1/membership/:id
This endpoint is used to delete a membership. This is irreversible, so use with caution.
Request
curl -X DELETE https://connect.futurefund.com/api/v1/membership/0929844c-4730-4296-ab92-c91af25c0882
Confirmation

Are you sure?