Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.campground.fyi/llms.txt

Use this file to discover all available pages before exploring further.

Teams in Campground are task-focused groups of profiles used for collaboration and workflow management. Unlike groups (which control directory visibility), teams are designed for task assignment and project work. Use these endpoints to read team data and sync it into external systems. All team endpoints require an API key with the read:teams scope. See authentication for details.

The team object

id
string
required
Unique identifier for the team (UUID).
name
string
required
Display name of the team.
description
string | null
Optional description of the team’s purpose.
avatar_url
string | null
URL of the team’s avatar image.
type_id
string | null
ID of the team type this team belongs to, if any. Teams without a type are legacy teams created before the team types feature.
member_count
number
Total number of profiles currently on the team.
members
object[]
Array of team membership records.
created_at
string
ISO 8601 timestamp of when the team was created.

List teams

Returns a paginated list of teams in your organization.
GET https://api.campground.fyi/public/v1/teams.list

Query parameters

page
number
default:"1"
Page number to return. Starts at 1.
limit
number
default:"100"
Number of teams to return per page. Maximum is 100.
name
string
Filter teams by name. Case-insensitive partial match.

Response fields

data
object[]
required
Array of team objects.
count
number
required
Total number of teams matching the query.
hasMore
boolean
required
true if additional pages of results exist.
organization_id
string
required
The ID of the organization these teams belong to.

Example

curl "https://api.campground.fyi/public/v1/teams.list?page=1&limit=20" \
  -H "Authorization: Bearer cg_live_xxxxxxxxxxxxxxxxxxxx"
Response
{
  "data": [
    {
      "id": "team_456",
      "name": "Engineering",
      "description": "Core engineering team",
      "avatar_url": null,
      "type_id": "type_001",
      "member_count": 8,
      "members": [
        { "profile_id": "prof_abc123", "role": "admin" },
        { "profile_id": "prof_def456", "role": "member" }
      ],
      "created_at": "2023-09-01T08:00:00.000Z"
    },
    {
      "id": "team_789",
      "name": "Design",
      "description": null,
      "avatar_url": "https://example.com/avatars/design-team.png",
      "type_id": "type_001",
      "member_count": 4,
      "members": [
        { "profile_id": "prof_ghi789", "role": "admin" }
      ],
      "created_at": "2023-09-15T10:00:00.000Z"
    }
  ],
  "count": 12,
  "hasMore": false,
  "organization_id": "1"
}

Get a team

Returns a single team by ID, including all members.
GET https://api.campground.fyi/public/v1/teams.detail

Query parameters

teamId
string
required
The ID of the team to retrieve.

Example

curl "https://api.campground.fyi/public/v1/teams.detail?teamId=team_456" \
  -H "Authorization: Bearer cg_live_xxxxxxxxxxxxxxxxxxxx"
Response
{
  "data": {
    "id": "team_456",
    "name": "Engineering",
    "description": "Core engineering team",
    "avatar_url": null,
    "type_id": "type_001",
    "member_count": 8,
    "members": [
      { "profile_id": "prof_abc123", "role": "admin" },
      { "profile_id": "prof_def456", "role": "member" },
      { "profile_id": "prof_ghi789", "role": "member" }
    ],
    "created_at": "2023-09-01T08:00:00.000Z"
  },
  "organization_id": "1"
}
A 404 is returned if the team does not exist or does not belong to your organization.
To look up the full profile details for each team member, use the GET /profiles.detail endpoint with each profile_id from the members array.