Car Image API
Documentation

Organizations & teams

Members, roles, teams, invitations and sharing keys and models.

Organizations

An organization owns the account: the plan, the credits, the Stripe customer, the API keys, the connected apps and the 3D models. Everyone you invite works from the same balance and plan, each with their own sign-in and a role.

Every account starts as a personal organization that only you are in, so nothing changes until you invite someone. To work with a team, create a new organization from the switcher at the top of the dashboard (or invite people into your personal one). A new organization starts on Free with no credits; the 100 free credits come once per person, with their personal organization. Credits, plans and limits belong to one organization and never move between them.

Roles

Roles go viewer, member, admin, owner. Nobody can give a role above their own, an organization always keeps at least one owner, and the last owner cannot leave or be demoted.

CanViewerMemberAdminOwner
See keys and 3D models shared with the whole organization✓✓✓✓
Use the credits: images, signed URLs, 3D models, the playground✓✓✓
Create API keys and teams✓✓✓
Invite and remove members, change roles below admin, manage every team✓✓
Manage every API key and connected app✓✓
Billing: plan, payment method, credits, invoices✓✓
Make or remove admins and owners, transfer ownership, delete the organization✓

Invitations

Admins and owners invite people by email from the organization's settings, with a role and, optionally, teams. The link works once and expires after seven days; the person signs in, or signs up, with the invited address and joins. Pending invitations can be sent again (the old link stops working) or revoked. Removing someone ends their access at once: they no longer see the organization, its keys or its models.

Teams and sharing

Teams group members; a team's maintainers manage its members. API keys and 3D models are visible to the whole organization by default. Open Share on a key to restrict it to its creator, the admins and the teams or people you choose, each with view, use or manage access.

A key belongs to the organization, not to the person who made it: it keeps working after its creator leaves, and the admins can see and revoke it. Requests are attributed to the key in usage and the audit log.

Keys, connected apps and the CLI

A key acts for the organization it was created in. When you connect an app (Claude, ChatGPT) or sign in the CLI with car-image login and belong to more than one organization, the sign-in page asks which one it acts for. GET /api/v1/account (get_account over MCP, car-image whoami) says which organization a credential uses and your role in it; GET /api/v1/account/members (list_members with ?toolset=all) lists the members and teams, read only.

bash
curl -s https://carimage.dev/api/v1/account \
  -H "Authorization: Bearer $CAR_IMAGE_API_KEY" | jq '.data.organization'
# { "id": "…", "slug": "acme", "name": "Acme", "personal": false, "role": "member" }

curl -s https://carimage.dev/api/v1/account/members \
  -H "Authorization: Bearer $CAR_IMAGE_API_KEY" | jq '.data.members'

Audit log

Admins and owners see every membership, role, team, invitation, key, sharing and billing change in the organization's audit log, with who made it and when. It is kept for at least a year.