Manage Persons and Organizations
Persons and organizations are core resource types (auto-installed). They have dedicated CLI commands and API endpoints.
Persons
Create
# CLI
weos person create --given-name Jane --family-name Smith --email jane@example.com
# API
curl -X POST http://localhost:8080/api/persons \
-H "Content-Type: application/json" \
-d '{"given_name": "Jane", "family_name": "Smith", "email": "jane@example.com"}'
The name field is auto-computed: "Jane Smith".
List
# CLI
weos person list
weos person list --limit 50
# API
curl http://localhost:8080/api/persons
Get
# CLI
weos person get urn:person:abc123
# API
curl http://localhost:8080/api/persons/urn:person:abc123
Delete
# CLI
weos person delete urn:person:abc123
# API
curl -X DELETE http://localhost:8080/api/persons/urn:person:abc123
Organizations
Create
# CLI
weos organization create --name "Acme Corp" --slug acme
# API (alias: org)
curl -X POST http://localhost:8080/api/organizations \
-H "Content-Type: application/json" \
-d '{"name": "Acme Corp", "slug": "acme"}'
List
weos org list
curl http://localhost:8080/api/organizations
List Members
curl http://localhost:8080/api/organizations/urn:organization:abc123/members
Delete
weos org delete urn:organization:abc123
Person vs. User
- Person — a domain entity (FOAF/Schema.org). Represents a person in your content model.
- User — an auth entity. Represents someone who can log in.
They’re separate entity types. A person exists in your content model (managed as a resource type); a user exists in the auth system (managed as a dedicated domain entity via /api/users). They may or may not correspond to the same real person.