ワンクリックで
umbraco-member
Front-office member operations (login, profile, groups)
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Front-office member operations (login, profile, groups)
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Use csv-update to batch-modify a property across multiple documents.
Search for a data type, inspect it, and update its configuration.
Walk the content tree to find a document, update a property, and publish.
Search for documents matching a query and publish them.
Call an authenticated raw Umbraco Management API endpoint
Persistent authentication helpers
| name | umbraco-member |
| description | Front-office member operations (login, profile, groups) |
| metadata | {"version":"0.4.8","requires":{"bins":["umbraco"],"skills":["umbraco-shared"]}} |
PREREQUISITE: Read
../umbraco-shared/SKILL.mdfor auth, global flags, and security rules.
umbraco member <command> [flags]
| Command | Description |
|---|---|
member get <id> | Get a member by ID |
member list | List members (paginated; use --filter for substring search) |
member search <query> | Search members by username/email substring (shorthand for 'member list --filter') |
umbraco member get <id>
| Flag | Type | Default | Description |
|---|---|---|---|
--fields | string | — | Limit response fields |
umbraco member list
| Flag | Type | Default | Description |
|---|---|---|---|
--fields | string | — | Limit response fields (defaults to all; pass id,username,email,... for agent-friendly summaries) |
--filter | string | — | Substring filter against member username/email |
--first-n | int | 0 | Return only the first N items from item collections |
--ids-only | bool | false | Return only item IDs for item collections |
--skip | int | -1 | Skip count (passes through as ?skip=N; lets you walk past the server page size on large children/root collections) |
--summarize | bool | false | Return only id/name/alias fields for item collections |
--take | int | -1 | Take count (passes through as ?take=N; combine with --skip to page) |
umbraco member search <query>
| Flag | Type | Default | Description |
|---|---|---|---|
--fields | string | id,username,email,isApproved,isLockedOut,isTwoFactorEnabled,failedPasswordAttempts,groups | Limit response fields (default surfaces login-diagnosis fields; pass empty string for full payload) |
--first-n | int | 0 | Return only the first N items from item collections |
--ids-only | bool | false | Return only item IDs for item collections |
--summarize | bool | false | Return only id/name/alias fields for item collections |
--take | int | -1 | Maximum results (passes through as ?take=N) |
Safety: Always use
--dry-runfirst. Remove the flag only after verifying the dry-run output.
| Command | Description |
|---|---|
member create | Create a member |
member delete <id> | Permanently delete a member |
member set-groups <id> | Replace or modify a member's group memberships |
member update <id> | Update a member |
member update-properties <id> | Update member custom property values (merges into values[] by alias) |
umbraco member create
POST /member. Use --print-template to see the accepted payload shape. The 'id' field is generated by the CLI if omitted.
Known API limitation (Umbraco 17.x): these fields appear on the GET response but are NOT accepted by POST /member — including them returns 2xx but the server value does not change:
These are managed by the auth subsystem (login flow / backoffice action), not by the create endpoint. They are omitted from --print-template for that reason.
| Flag | Type | Default | Description |
|---|---|---|---|
--dry-run | bool | false | Print the planned request without executing |
--json | string | — | Create payload as JSON |
--print-template | bool | false | Print an annotated JSON skeleton; substitute placeholders before passing to --json |
Safe pattern:
# 1. Dry run first
umbraco member create --dry-run
# 2. Execute
umbraco member create
umbraco member delete <id>
| Flag | Type | Default | Description |
|---|---|---|---|
--dry-run | bool | false | Print the planned request without executing |
--force | bool | false | Confirm permanent deletion |
Safe pattern:
# 1. Dry run first
umbraco member delete <id> --dry-run
# 2. Execute
umbraco member delete <id> --force
umbraco member set-groups <id>
Mutates the member's groups[] array. Pick one mode:
--groups <guid,guid,…> Replace the member's groups with this exact set --add-groups <guid,guid,…> Append (idempotent — no PUT if all groups already present) --remove-groups <guid,guid,…> Remove (idempotent — no PUT if none of the groups are present)
Group GUIDs come from 'member-group list'. The PUT preserves every other field on the member.
| Flag | Type | Default | Description |
|---|---|---|---|
--add-groups | string | — | Comma-separated group GUIDs to add (idempotent) |
--dry-run | bool | false | Print the planned request without executing |
--groups | string | — | Comma-separated group GUIDs; replaces the member's groups[] with this exact set |
--remove-groups | string | — | Comma-separated group GUIDs to remove (idempotent) |
Safe pattern:
# 1. Dry run first
umbraco member set-groups <id> --dry-run
# 2. Execute
umbraco member set-groups <id>
umbraco member update <id>
Updates a member with the uniform CLI update contract:
--json full replacement; the server resets any field not mentioned --merge-json fetches the current member, deep-merges the patch, and PUTs the result; fields not mentioned are preserved
Before v0.4.0 --json silently behaved like --merge-json on this resource. Pass --merge-json for partial edits.
Known API limitation (Umbraco 17.x): the Management API's UpdateMemberRequestModel does NOT accept the following fields, even though they appear on the read model. The CLI rejects input that includes them up front — letting the request through would silently return 204 with the server value unchanged, producing a false-positive {"updated": true}:
These are managed by the auth subsystem (login flow / backoffice action), not by PUT /member/{id}.
| Flag | Type | Default | Description |
|---|---|---|---|
--dry-run | bool | false | Print the planned request without executing |
--json | string | — | Full replacement payload as JSON (fields not mentioned are reset by the server) |
--merge-json | string | — | Partial JSON deep-merged into the current member before update (fields not mentioned are preserved) |
Safe pattern:
# 1. Dry run first
umbraco member update <id> --dry-run
# 2. Execute
umbraco member update <id>
umbraco member update-properties <id>
Accepts the same three input shapes as 'document update-properties': object {alias: value, ...}, array [{alias, value, culture?, segment?}, ...], or envelope {"values": [...]}. Merges into the member's existing values[] so untouched properties survive.
| Flag | Type | Default | Description |
|---|---|---|---|
--dry-run | bool | false | Print the planned request without executing |
--json | string | — | Properties payload as JSON (object / array / envelope) |
Safe pattern:
# 1. Dry run first
umbraco member update-properties <id> --dry-run
# 2. Execute
umbraco member update-properties <id>
# Browse subcommands
umbraco member --help
# Inspect a specific endpoint schema
umbraco schema member.<method>