public integration surface

Suplus API

A public HTTPS API for personal automations, GPT Actions, and future assistant clients that need to read or update household supplies.

Base URL
https://suplus.cofficus.club/api/v1
Auth
Bearer API token or browser session
Status
First public version

Agent flow

For commands like “mark eggs low”, an assistant reads context, searches accessible data, selects the matching supply, then sends a compact command. Search and commands are scoped to spaces available to the token owner.

GET /api/v1/assistant/search?q=eggs
Authorization: Bearer suplus_...
POST /api/v1/assistant/command
Authorization: Bearer suplus_...
Content-Type: application/json

{
  "action": "set_supply_status",
  "supply_id": 55,
  "status": "low"
}

Endpoint groups

Account and tokens

  • GET /me
  • PATCH /me
  • GET /api-tokens
  • POST /api-tokens
  • DELETE /api-tokens/{apiToken}

Assistant facade

  • GET /assistant/context
  • GET /assistant/search
  • POST /assistant/command
  • POST /assistant/destructive-command

Command entry points

  • GET /search
  • GET /invitations
  • POST /space-invitations/{token}/accept
  • POST /space-invitations/{token}/decline

Spaces

  • GET /spaces
  • POST /spaces
  • GET /spaces/{space}
  • PATCH /spaces/{space}
  • DELETE /spaces/{space}
  • GET /spaces/{space}/activity

Rooms and zones

  • GET /spaces/{space}/rooms
  • POST /spaces/{space}/rooms
  • PATCH /spaces/{space}/rooms/{room}
  • GET /spaces/{space}/rooms/{room}/zones
  • POST /spaces/{space}/rooms/{room}/zones
  • PATCH /rooms/{room}/zones/{zone}

Supplies

  • GET /spaces/{space}/supplies
  • POST /spaces/{space}/rooms/{room}/supplies
  • GET /supplies/{supply}
  • PATCH /supplies/{supply}
  • PATCH /supplies/{supply}/status
  • PATCH /supplies/{supply}/move
  • DELETE /supplies/{supply}

Shopping list

  • GET /spaces/{space}/shopping-list
  • POST /spaces/{space}/shopping-list
  • GET /spaces/{space}/manual-shopping-entries
  • PATCH /spaces/{space}/manual-shopping-entries/{entry}
  • PATCH /spaces/{space}/manual-shopping-entries/{entry}/ordered
  • PATCH /spaces/{space}/manual-shopping-entries/{entry}/completed
  • PATCH /spaces/{space}/manual-shopping-entries/{entry}/repeat

Suppliers

  • GET /spaces/{space}/suppliers
  • POST /spaces/{space}/suppliers
  • PATCH /spaces/{space}/suppliers/{supplier}
  • DELETE /spaces/{space}/suppliers/{supplier}

Members and invitations

  • GET /spaces/{space}/members
  • PATCH /spaces/{space}/members/{membership}
  • GET /spaces/{space}/invitations
  • POST /spaces/{space}/invitations
  • POST /spaces/{space}/invitations/{invitation}/resend

Notes

The API uses the same owner, full, and limited access rules as the web interface. Limited users can update supply statuses and manage one-off purchases, but cannot change the space structure.

The GPT Actions schema intentionally uses compact action-first command routes. Use the full JSON only for custom clients that are not constrained by GPT Builder.