Skip to content
FreeTicketDocs
Esc
↑↓navigate↵open⌘Jpreview
On this page

Command reference

Every ft command grouped by resource, with its flags and the minimum workspace role it needs.

Each command calls one B2B API operation and needs the same minimum role in the target workspace. Run ft <command> --help for the exact flags of your installed version.

Shared flags

Flag Applies to Purpose
--json All commands Raw JSON on stdout. On lists, the data array only.
--workspace <id> All commands Target one workspace. See Workspaces.
--limit <n> Lists Page size, 1 to 100 (default 20)
--cursor <id> Lists Continue from a previous page (single workspace only)
--all Lists Fetch every page
--raw Lists JSON with the { data, page } envelope, including page.nextCursor
--columns <a,b,c> Lists Choose the columns to show
--full Lists Show every field
--csv Lists and reports CSV output
--data <json> Writes Request body: inline JSON or @file.json
--yes Deletes Skip the confirmation prompt

Write commands take the same JSON body the API does. The API reference documents every field.

Session and workspaces

Command Purpose
ft login Browser login. --key <key> for CI. See Log in.
ft whoami Your user and workspaces
ft config Show the active configuration, with the credential masked
ft logout Remove the stored credential
ft workspace list · use <id|slug> · clear · show List, pin, unpin and show workspaces

Events and dates

Command Role Purpose
ft events list VIEWER Filters: --q <text>, --status <DRAFT|PUBLISHED|SOLD_OUT|CANCELLED|COMPLETED>, --with-total
ft events get <id> VIEWER One event
ft events create --data <json> ADMIN Create an event with its dates
ft events update <id> --data <json> ADMIN Update an event
ft events delete <id> ADMIN Delete an event (soft delete)
ft events publish <id> ADMIN Publish. Needs at least one future date.
ft event-dates list <eventId> VIEWER Dates of an event
ft event-dates create <eventId> --data <json> ADMIN Add a date
ft event-dates update <eventId> <dateId> --data <json> ADMIN Update a date
ft event-dates delete <eventId> <dateId> ADMIN Delete a date
ft events create --data '{
  "name": "Concierto de prueba",
  "slug": "concierto-de-prueba",
  "dates": [{ "startsAt": "2026-12-12T01:00:00Z", "timezone": "America/Bogota" }]
}'

Ticket types

Command Role Purpose
ft ticket-types list VIEWER Filter with --event-date-id <id>
ft ticket-types get <id> VIEWER One ticket type, with price breakdown and stock
ft ticket-types create --data <json> ADMIN Create a ticket type on an event date
ft ticket-types update <id> --data <json> ADMIN Update price, capacity, sales window…
ft ticket-types delete <id> ADMIN Delete (soft delete)

Sales

Command Role Purpose
ft sales list VIEWER Filters: --status, --channel, --event, --event-date, --reference, --buyer, --from, --to
ft sales get <id> STAFF One sale with its items
ft sales tickets <id> STAFF The individual tickets of a sale
ft sales create --data <json> ADMIN Record a comp or offline sale, created as CONFIRMED
ft sales cancel <id> ADMIN Cancel and release the stock
ft sales refund <id> ADMIN Mark the sale refunded

Sale statuses are PENDING, CONFIRMED, ABANDONED, CANCELLED and REFUNDED. Channels are WEB, MOBILE, POS and ADMIN.

cancel and refund take an optional --data body. When the API answers 409 because the payment state needs a human decision, it explains what to check. You can then repeat the command with --data '{"acknowledge_open_payment":true}' (cancel) or --data '{"acknowledge_manual":true}' (refund).

Tickets (door operations)

Tickets are addressed by their ticket code, the QR payload.

Command Role Purpose
ft tickets access <code> STAFF Check whether a ticket is valid, without admitting it
ft tickets checkin <code> STAFF Admit the ticket. Idempotent: a second scan doesn’t admit it twice.
ft tickets resend <code> ADMIN Resend the ticket email to the buyer

Memberships

Command Role Purpose
ft plans list · get <id> VIEWER Membership plans
ft plans create · update <id> · delete <id> ADMIN Manage plans (--data <json>)
ft plans subscribers <id> ADMIN Members of a plan
ft subscriptions cancel <id> ADMIN Cancel a subscription

Venues, staff, discounts and webhooks

Command Role Purpose
ft venues list · get <id> VIEWER Venues
ft venues create · update <id> · delete <id> ADMIN Manage venues
ft staff list ADMIN Staff with access to the workspace. --workspace-ids <a,b> reads up to 25 workspaces in one call.
ft staff create --data <json> ADMIN Add a staff user
ft staff set-role <id> --data '{"role":"STAFF"}' ADMIN Change a staff member’s role
ft discounts list ADMIN Discount codes. Filters: --event <id>, --active <true|false>
ft discounts create · update <id> · delete <id> ADMIN Manage discount codes
ft webhooks list · create · delete <id> ADMIN Webhook endpoints. See Webhooks.

Reports and exports

Command Role Purpose
ft reports summary VIEWER KPIs. --period 7d|30d|90d|1y (default 30d)
ft reports by-event VIEWER Revenue and tickets by event. --from, --to, --status
ft reports timeseries --interval <day|week|month> VIEWER Confirmed sales over time. --from, --to, --event
ft reports inventory VIEWER Capacity, sold, reserved and available. --event, --event-date, --from, --to, --include-drafts, --group-by <ticketType|date|event>
ft reports financials ADMIN Per-date financial statement: gross, costs and net to settle. --event, --past
ft reports reconciliation --from <date> --to <date> ADMIN Payment ↔ sale ↔ invoice reconciliation. --match, --provider, --page, --page-size
ft reports export buyers ADMIN One row per sale. --event, --event-date, --from, --to, --status
ft reports export attendees ADMIN One row per ticket, with the same filters
ft reports export subscribers ADMIN Membership subscribers
ft reports export reconciliation --from <date> --to <date> ADMIN Reconciliation export

Exports return up to 5,000 rows. Add --csv for spreadsheets.

Settlements

Command Role Purpose
ft settlements list ADMIN Payouts to the organizer. Filters: --event, --status <SENT|AWAITING_PAYMENT|PAID>
ft settlements document <id> ADMIN Signed download URL for the settlement PDF, valid for 5 minutes. --proof <fileName> downloads a payment proof instead.

Content

Command Purpose
ft content-videos list Published videos
ft content-posts list Community posts
ft content-lives list · get <id> Live streams
ft content-lives playback-token --data <json> Signed playback token. Members-only content also needs a buyer session.

API keys

Command Role Purpose
ft api-keys create <name> ADMIN Mint a key. --scope read|write (default read), --expires <iso>. The secret is shown once.
ft api-keys list VIEWER Your keys, without secrets
ft api-keys revoke <id> VIEWER Revoke one of your keys

Was this page helpful?