# FreeTicket Docs > Build on FreeTicket: the B2B REST API, the public storefront API, the ft CLI and the MCP server for AI agents. ## Docs - [FreeTicket for developers](https://docs.appfreeticket.com/): Build on FreeTicket, the ticketing platform for events in Colombia and Latin America. Automate your workspace over a REST API, a command-line tool, or an MCP server for AI agents. ## CLI - [Install the CLI](https://docs.appfreeticket.com/cli): Install ft, the official FreeTicket command-line tool, and run your first commands. - [Log in](https://docs.appfreeticket.com/cli/login): Authenticate ft through the browser with the device flow, or with an API key in CI. - [Workspaces](https://docs.appfreeticket.com/cli/workspaces): Read every workspace you can access at once, or pin the CLI to a single workspace. - [Command reference](https://docs.appfreeticket.com/cli/commands): Every ft command grouped by resource, with its flags and the minimum workspace role it needs. - [Scripting](https://docs.appfreeticket.com/cli/scripting): Use ft in scripts and CI with JSON and CSV output, full pagination, non-interactive deletes and exit codes. ## Guides - [Overview](https://docs.appfreeticket.com/guides): The two FreeTicket HTTP APIs, what each one is for, and the conventions they share. - [Authentication](https://docs.appfreeticket.com/guides/authentication): Authenticate to the B2B API with an organization-scoped API key, choose a scope, and select the workspace you operate on. - [Quickstart: create an event and sell tickets](https://docs.appfreeticket.com/guides/quickstart): Create a venue, an event, a date and a ticket type over the B2B API, publish the event, sell tickets through the public API, and track the sales. - [Errors, pagination and limits](https://docs.appfreeticket.com/guides/conventions): The response envelope, error codes, cursor pagination, rate limits, retries and idempotency shared by the FreeTicket APIs. - [Webhooks](https://docs.appfreeticket.com/guides/webhooks): Register HTTPS endpoints for sale events in your workspace and verify the HMAC-SHA256 signature on each delivery. - [Public storefront API](https://docs.appfreeticket.com/guides/public-api): Browse published events, read live availability and create orders that hand the buyer a payment link, all without an API key. ## MCP - [MCP server](https://docs.appfreeticket.com/mcp): The hosted FreeTicket MCP server lets AI assistants such as Claude, ChatGPT and Cursor read and operate your workspace, or help buyers find and buy tickets. - [Connect a client](https://docs.appfreeticket.com/mcp/connect): Add the hosted FreeTicket MCP server to Claude, Claude Code, ChatGPT, Cursor or any client that supports remote MCP servers. - [Credentials](https://docs.appfreeticket.com/mcp/authentication): The three ways to access the FreeTicket MCP server, anonymous public, OAuth sign-in and API key, and how each one picks a workspace. - [Tool catalog](https://docs.appfreeticket.com/mcp/tools): Every FreeTicket MCP tool grouped by domain, with the API operation it calls. - [Agent skills](https://docs.appfreeticket.com/mcp/skills): Install FreeTicket's open-source agent skills so your coding agent or assistant knows how to drive the CLI, the MCP server and FreeTicket's event rules. ## Reference ### Public - [FreeTicket Public API](https://docs.appfreeticket.com/reference/public) #### catalog - [Get a public event by slug](https://docs.appfreeticket.com/reference/public/catalog/get-events-slug) - [Live availability by date and ticket type](https://docs.appfreeticket.com/reference/public/catalog/get-events-slug-availability) - [Public event catalog (B2C discovery)](https://docs.appfreeticket.com/reference/public/catalog/get-events) #### orders - [Create a B2C order and get the payment link (Mercado Pago)](https://docs.appfreeticket.com/reference/public/orders/post-orders) - [Get a B2C order's status (and tickets once paid)](https://docs.appfreeticket.com/reference/public/orders/get-orders-id) #### tickets - [Resend the ticket/QR email to the buyer (anonymous)](https://docs.appfreeticket.com/reference/public/tickets/post-tickets-code-resend) ### V1 - [FreeTicket B2B API](https://docs.appfreeticket.com/reference/v1) #### auth - [CLI poll: exchanges the device_code for an API key once approved](https://docs.appfreeticket.com/reference/v1/auth/post-auth-device-token) - [Headless sign-up: creates the unverified account and sends the email](https://docs.appfreeticket.com/reference/v1/auth/post-auth-signup) - [Start the Device Authorization Grant (RFC 8628)](https://docs.appfreeticket.com/reference/v1/auth/post-auth-device-code) #### me - [Authenticated user, role and accessible workspaces](https://docs.appfreeticket.com/reference/v1/me/get-me) - [Create your own workspace/tenant (self-serve)](https://docs.appfreeticket.com/reference/v1/me/post-workspaces) #### events - [Add a date to an event](https://docs.appfreeticket.com/reference/v1/events/post-events-id-dates) - [Cancel an event (keeps the record and its sales)](https://docs.appfreeticket.com/reference/v1/events/post-events-id-cancel) - [Create an event](https://docs.appfreeticket.com/reference/v1/events/post-events) - [Delete an event (soft delete)](https://docs.appfreeticket.com/reference/v1/events/delete-events-id) - [Delete an event date](https://docs.appfreeticket.com/reference/v1/events/delete-events-id-dates-date-id) - [Get an event](https://docs.appfreeticket.com/reference/v1/events/get-events-id) - [List an event's dates](https://docs.appfreeticket.com/reference/v1/events/get-events-id-dates) - [List workspace events](https://docs.appfreeticket.com/reference/v1/events/get-events) - [Publish an event](https://docs.appfreeticket.com/reference/v1/events/post-events-id-publish) - [Update an event](https://docs.appfreeticket.com/reference/v1/events/patch-events-id) - [Update an event date](https://docs.appfreeticket.com/reference/v1/events/patch-events-id-dates-date-id) #### ticket-types - [Create a ticket type](https://docs.appfreeticket.com/reference/v1/ticket-types/post-ticket-types) - [Delete a ticket type (soft delete)](https://docs.appfreeticket.com/reference/v1/ticket-types/delete-ticket-types-id) - [Get a ticket type](https://docs.appfreeticket.com/reference/v1/ticket-types/get-ticket-types-id) - [List workspace ticket types](https://docs.appfreeticket.com/reference/v1/ticket-types/get-ticket-types) - [Update a ticket type](https://docs.appfreeticket.com/reference/v1/ticket-types/patch-ticket-types-id) #### sales - [Cancel a sale (blocked if someone already checked in or the payment is still open)](https://docs.appfreeticket.com/reference/v1/sales/post-sales-id-cancel) - [Create a sale/order (complimentary tickets and programmatic sales)](https://docs.appfreeticket.com/reference/v1/sales/post-sales) - [Get a sale with its items](https://docs.appfreeticket.com/reference/v1/sales/get-sales-id) - [List a sale's payment attempt history](https://docs.appfreeticket.com/reference/v1/sales/get-sales-id-attempts) - [List the individual tickets of a sale](https://docs.appfreeticket.com/reference/v1/sales/get-sales-id-tickets) - [List workspace sales](https://docs.appfreeticket.com/reference/v1/sales/get-sales) - [Refund a sale (moving the funds depends on the payment gateway)](https://docs.appfreeticket.com/reference/v1/sales/post-sales-id-refund) #### membership-plans - [Create a membership plan](https://docs.appfreeticket.com/reference/v1/membership-plans/post-membership-plans) - [Delete a membership plan (soft delete)](https://docs.appfreeticket.com/reference/v1/membership-plans/delete-membership-plans-id) - [Get a membership plan](https://docs.appfreeticket.com/reference/v1/membership-plans/get-membership-plans-id) - [List subscribers of a membership plan](https://docs.appfreeticket.com/reference/v1/membership-plans/get-membership-plans-id-subscribers) - [List the workspace's membership plans](https://docs.appfreeticket.com/reference/v1/membership-plans/get-membership-plans) - [Update a membership plan](https://docs.appfreeticket.com/reference/v1/membership-plans/patch-membership-plans-id) #### venues - [Create a venue](https://docs.appfreeticket.com/reference/v1/venues/post-venues) - [Delete a venue (soft delete)](https://docs.appfreeticket.com/reference/v1/venues/delete-venues-id) - [Get a venue](https://docs.appfreeticket.com/reference/v1/venues/get-venues-id) - [List workspace venues](https://docs.appfreeticket.com/reference/v1/venues/get-venues) - [Update a venue](https://docs.appfreeticket.com/reference/v1/venues/patch-venues-id) #### staff - [Change a staff user's role](https://docs.appfreeticket.com/reference/v1/staff/patch-staff-id-role) - [Create a staff user in the workspace](https://docs.appfreeticket.com/reference/v1/staff/post-staff) - [Get a staff member](https://docs.appfreeticket.com/reference/v1/staff/get-staff-id) - [List staff with access to the workspace](https://docs.appfreeticket.com/reference/v1/staff/get-staff) - [Revoke a staff member's access to this workspace](https://docs.appfreeticket.com/reference/v1/staff/delete-staff-id) #### reports - [CFO financial reconciliation (MP ↔ sale ↔ Siigo invoice)](https://docs.appfreeticket.com/reference/v1/reports/get-reports-reconciliation) - [CSV export of the CFO financial reconciliation](https://docs.appfreeticket.com/reference/v1/reports/get-reports-exports-reconciliation) - [Export attendees per ticket, with filters (max 5000)](https://docs.appfreeticket.com/reference/v1/reports/get-reports-exports-attendees) - [Export buyers, with filters (max 5000)](https://docs.appfreeticket.com/reference/v1/reports/get-reports-exports-buyers) - [Export subscribers (max 5000)](https://docs.appfreeticket.com/reference/v1/reports/get-reports-exports-subscribers) - [Financial statement per event date: gross, costs, and net payable](https://docs.appfreeticket.com/reference/v1/reports/get-reports-financials) - [Inventory aggregated by event/date/ticket type (capacity, sold, available)](https://docs.appfreeticket.com/reference/v1/reports/get-reports-inventory) - [Sales KPIs per workspace event](https://docs.appfreeticket.com/reference/v1/reports/get-reports-by-event) - [Time series of CONFIRMED sales per bucket (day|week|month)](https://docs.appfreeticket.com/reference/v1/reports/get-reports-timeseries) - [Workspace KPIs (revenue, tickets, sales, memberships)](https://docs.appfreeticket.com/reference/v1/reports/get-reports-summary) #### settlements - [Download a settlement payment proof](https://docs.appfreeticket.com/reference/v1/settlements/get-settlements-id-proofs-file-name) - [Download a settlement PDF](https://docs.appfreeticket.com/reference/v1/settlements/get-settlements-id-document) - [Get a settlement](https://docs.appfreeticket.com/reference/v1/settlements/get-settlements-id) - [Workspace settlements (payouts to the organizer)](https://docs.appfreeticket.com/reference/v1/settlements/get-settlements) #### discounts - [Create a discount code](https://docs.appfreeticket.com/reference/v1/discounts/post-discounts) - [Delete a discount code (soft delete)](https://docs.appfreeticket.com/reference/v1/discounts/delete-discounts-id) - [List workspace discount codes](https://docs.appfreeticket.com/reference/v1/discounts/get-discounts) - [Update a discount code](https://docs.appfreeticket.com/reference/v1/discounts/patch-discounts-id) #### webhooks - [Create a webhook (returns the signingSecret only once)](https://docs.appfreeticket.com/reference/v1/webhooks/post-webhooks) - [Delete a workspace webhook](https://docs.appfreeticket.com/reference/v1/webhooks/delete-webhooks-id) - [Edit a webhook without rotating its signing secret](https://docs.appfreeticket.com/reference/v1/webhooks/patch-webhooks-id) - [List workspace webhooks](https://docs.appfreeticket.com/reference/v1/webhooks/get-webhooks) #### subscriptions - [Cancel a membership subscription](https://docs.appfreeticket.com/reference/v1/subscriptions/post-subscriptions-id-cancel) #### tickets - [Check a ticket's validity without consuming it](https://docs.appfreeticket.com/reference/v1/tickets/get-tickets-ticket-code-access) - [Check in a ticket at the door](https://docs.appfreeticket.com/reference/v1/tickets/post-tickets-ticket-code-checkin) - [Reassign a sold ticket to another date or ticket type](https://docs.appfreeticket.com/reference/v1/tickets/patch-tickets-ticket-code) - [Resend the confirmation email with the ticket](https://docs.appfreeticket.com/reference/v1/tickets/post-tickets-ticket-code-resend) #### api-keys - [List my API keys](https://docs.appfreeticket.com/reference/v1/api-keys/get-api-keys) - [Mint an API key (returns the plaintext exactly once)](https://docs.appfreeticket.com/reference/v1/api-keys/post-api-keys) - [Revoke one of my API keys](https://docs.appfreeticket.com/reference/v1/api-keys/delete-api-keys-id) #### customer - [Authenticated buyer identity](https://docs.appfreeticket.com/reference/v1/customer/get-customer-me) - [Buyer membership status in a workspace](https://docs.appfreeticket.com/reference/v1/customer/get-customer-membership) - [Buyer profile (name and phone)](https://docs.appfreeticket.com/reference/v1/customer/get-customer-profile) - [Buyer's tickets](https://docs.appfreeticket.com/reference/v1/customer/get-customer-tickets) - [Cancel the buyer's own membership](https://docs.appfreeticket.com/reference/v1/customer/post-customer-subscriptions-cancel) - [Cancel the buyer's own purchase (only if not yet paid)](https://docs.appfreeticket.com/reference/v1/customer/post-customer-tickets-id-cancel) - [Charge with the MercadoPago Payment Brick token](https://docs.appfreeticket.com/reference/v1/customer/post-customer-orders-id-payment-card) - [Create the ticket reservation (step 1 of the headless purchase)](https://docs.appfreeticket.com/reference/v1/customer/post-customer-orders) - [Detail of a buyer's ticket (deep link)](https://docs.appfreeticket.com/reference/v1/customer/get-customer-tickets-id) - [Exchange the access code for a buyer session](https://docs.appfreeticket.com/reference/v1/customer/post-customer-auth-verify) - [Exchange the headless SSO one-time token for a session token](https://docs.appfreeticket.com/reference/v1/customer/post-api-customer-auth-enterprise-exchange) - [Open a PSE payment through MercadoPago (redirect)](https://docs.appfreeticket.com/reference/v1/customer/post-customer-orders-id-payment-pse) - [Open payment for a reservation (Bold or MercadoPago, depending on the event)](https://docs.appfreeticket.com/reference/v1/customer/post-customer-orders-id-payment) - [Open the purchase session (only one live per buyer)](https://docs.appfreeticket.com/reference/v1/customer/post-customer-purchase-sessions) - [Purchase session status](https://docs.appfreeticket.com/reference/v1/customer/get-customer-purchase-sessions-id) - [Release a reservation the buyer will not pay for](https://docs.appfreeticket.com/reference/v1/customer/post-customer-orders-id-release) - [Release the seats of a purchase session](https://docs.appfreeticket.com/reference/v1/customer/post-customer-purchase-sessions-id-release) - [Request an access code to sign in (or create an account)](https://docs.appfreeticket.com/reference/v1/customer/post-customer-auth-request) - [Sign out the buyer session](https://docs.appfreeticket.com/reference/v1/customer/post-customer-logout) - [Start a membership sign-up (returns the payment URL)](https://docs.appfreeticket.com/reference/v1/customer/post-customer-subscriptions) - [Status of a headless purchase (and its tickets, once paid)](https://docs.appfreeticket.com/reference/v1/customer/get-customer-orders-id) - [The purchase the buyer left unfinished for this event date](https://docs.appfreeticket.com/reference/v1/customer/get-customer-orders) - [Update the buyer profile](https://docs.appfreeticket.com/reference/v1/customer/patch-customer-profile) #### content - [List the organization's community feed](https://docs.appfreeticket.com/reference/v1/content/get-content-posts) - [List the organization's live streams](https://docs.appfreeticket.com/reference/v1/content/get-content-lives) - [List the organization's published videos](https://docs.appfreeticket.com/reference/v1/content/get-content-videos) - [Live stream status](https://docs.appfreeticket.com/reference/v1/content/get-content-lives-id) - [Publish community content (including articles)](https://docs.appfreeticket.com/reference/v1/content/post-content-posts) - [Signed token to play a video or a live stream](https://docs.appfreeticket.com/reference/v1/content/post-content-playback-token) ## Agent skills - [freeticket-docs](https://docs.appfreeticket.com/.well-known/agent-skills/freeticket-docs/SKILL.md): Read the FreeTicket Docs instead of answering from memory. Build on FreeTicket: the B2B REST API, the public storefront API, the ft CLI and the MCP server for AI agents. Use when a task involves FreeTicket Docs: how it works, how to set it up or configure it, or its API. ## Agent resources - [llms-full.txt](https://docs.appfreeticket.com/llms-full.txt): The full Markdown of every page in one file. - [Page Markdown](https://docs.appfreeticket.com/index.md): Append `.md` to any page URL to fetch that page as raw Markdown. - [JSON API](https://docs.appfreeticket.com/api/docs/pages.json): Page index of the JSON docs API; each entry links the page's JSON and Markdown forms. Described by the OpenAPI document at https://docs.appfreeticket.com/openapi.json. - [Agent skills](https://docs.appfreeticket.com/.well-known/agent-skills/index.json): Agent Skills discovery index of the skills this site publishes. - [API catalog](https://docs.appfreeticket.com/.well-known/api-catalog): RFC 9727 linkset of the APIs documented here. - [AI catalog](https://docs.appfreeticket.com/.well-known/ai-catalog.json): ARD manifest of the agent-facing resources on this site (MCP server, skills, APIs). - [agent-readability.json](https://docs.appfreeticket.com/agent-readability.json): Manifest of every agent-facing artifact on this site. - [Sitemap](https://docs.appfreeticket.com/sitemap.xml): Every indexable page URL with its last-modified date.