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.


Back to top

WeOS is open source under AGPL-3.0. Built by Wepala.

This site uses Just the Docs, a documentation theme for Jekyll.