--- name: "fakturownia-products" description: "Fakturownia CLI products: list, fetch, create, update, and delete products, including warehouse-aware reads and README-backed request schemas." metadata: bundle: "fakturownia" category: "api-area" prerequisite: "fakturownia-shared" related_skills: - "fakturownia-shared" - "fakturownia-schema" - "fakturownia-doctor" command_refs: - "product list" - "product get" - "product create" - "product update" - "product delete" cli_help: "fakturownia product --help" requires_bins: - "fakturownia" discovery_hint: "Use `fakturownia schema product list --json` for output fields and `fakturownia schema product create --json` or `product update --json` for request-body discovery before building selectors or payloads, and `product delete --dry-run --json` to confirm destructive targets." --- > Auto-generated by `go run ./cmd/gen-skills`. Do not edit manually. # Products > **PREREQUISITE:** Read [`fakturownia-shared`](../shared/SKILL.md) first. ## Use This Skill When - The task is about reading or mutating products, including warehouse-aware stock views. - You need to inspect README-backed product fields or package-product payload requirements before create or update calls. ## Covered Commands - `fakturownia product list` — List products - `fakturownia product get` — Fetch a single product by ID - `fakturownia product create` — Create a product - `fakturownia product update` — Update a product - `fakturownia product delete` — Delete a product ## Notable Flags - `--page` (default `1`): Requested result page - `--per-page` (default `25`): Requested result count per page - `--date-from`: Filter products added or changed since a date such as 2025-11-01 - `--warehouse-id`: Show stock levels for a specific warehouse - `--id` (required): Product ID - `--input` (required): Product JSON input as inline JSON, @file, or - for stdin - `--yes` (required, default `false`): Confirm product deletion ## Environment - `FAKTUROWNIA_PROFILE`: Select a profile unless --profile is provided - `FAKTUROWNIA_URL`: Override the base account URL from any profile - `FAKTUROWNIA_API_TOKEN`: Override the API token from any profile ## Output and Request Discovery - Use `fakturownia schema product list --json` and `fakturownia schema product get --json` before building selectors. - Read `output.known_fields` to discover README-backed product output fields such as `name`, `code`, `tag_list[]`, `gtu_codes[]`, or `stock_level`. - Use `fakturownia schema product create --json` and `fakturownia schema product update --json` to inspect `request_body_schema` and accepted `--input` modes. - `--input` accepts inline JSON, `@file`, or `-` for stdin, and the CLI wraps the inner object into the upstream `product` envelope. - Package-product payloads use `package_products_details` as an open object whose values contain `id` and `quantity`. ## Examples ```bash fakturownia product list --json fakturownia product list --date-from 2025-11-01 --json fakturownia product list --warehouse-id 7 --columns id,name,code,stock_level fakturownia product list --page 2 --per-page 25 --raw fakturownia product get --id 100 fakturownia product get --id 100 --warehouse-id 7 --json fakturownia product get --id 100 --fields id,name,price_gross,stock_level --json fakturownia product get --id 100 --raw fakturownia product create --input '{"name":"Widget","code":"W001","price_net":"100","tax":"23"}' --json fakturownia product create --input @product.json printf '%s\n' '{"name":"Bundle","package":"1","package_products_details":{"0":{"id":5,"quantity":1}}}' | fakturownia product create --input - --json fakturownia product create --input '{"name":"Widget"}' --dry-run --json fakturownia product update --id 333 --input '{"price_gross":"102","tax":"23"}' --json fakturownia product update --id 333 --input @product-update.json printf '%s\n' '{"name":"Widget 2"}' | fakturownia product update --id 333 --input - --json fakturownia product update --id 333 --input '{"price_gross":"102"}' --dry-run --json fakturownia product delete --id 333 --yes --json fakturownia product delete --id 333 --yes --dry-run --json ``` ## Related Skills - [fakturownia-shared](../shared/SKILL.md) - [fakturownia-schema](../schema/SKILL.md) - [fakturownia-doctor](../doctor/SKILL.md)