Interfaz de línea de comandos

Tu espacio de trabajo social, programable desde la terminal

La CLI de Styrar pone cada acción del espacio de trabajo — publicaciones, enlaces, páginas bio, campañas, analíticas — detrás de un único comando `styrar`. Inicia sesión en tu panel para obtener tu API key y la CLI. Cada comando se genera directamente a partir del mismo catálogo de herramientas que el servidor MCP de Styrar expone a los asistentes de IA, así que un script que escribas hoy se comporta exactamente igual que la acción de IA equivalente.

Ver todas las integraciones

Qué puedes ejecutar

Algunos de los comandos generados:

  • `styrar list-posts` — lista publicaciones programadas, publicadas y en borrador con filtros
  • `styrar create-post` — crea o programa una publicación en cada plataforma conectada
  • `styrar get-link-analytics` — obtén clics y rendimiento de campañas para un rango de fechas
  • `styrar create-link` / `styrar list-links` — crea y gestiona enlaces cortos y campañas
  • `styrar list-social-accounts` — lista las cuentas conectadas y su estado
  • `styrar search` — busca publicaciones, enlaces, campañas y páginas bio con una sola consulta
  • `styrar api GET /v1/...` — llama directamente a cualquier endpoint de Styrar, incluso sin un comando dedicado

La colección completa de comandos

Cada comando de abajo se ejecuta en tu terminal — organizado por categoría, generado a partir del mismo catálogo que el servidor MCP de Styrar.

147commands across 12 categories
Links & social accounts29
  • styrar list-social-accountsList connected Instagram, X (Twitter), TikTok, LinkedIn, YouTube, Threads, Facebook, and other social accounts. Optional companyId for company scope.
  • styrar create-linkCreate a shortened URL with optional title, shortCode, company scope, expiresAt, activeFrom, campaignIds, linkGroupId, tagIds, customDomainId, qrStyle, and custom OG fields (ogTitle, ogDescription, ogImageUrl, ogInterstitialEnabled).
  • styrar list-linksList shortened URLs; filter by companyId, campaignId, linkGroupId, tagId, or unassigned (no campaign).
  • styrar get-linkFetch a single short link by linkId including click count and campaign metadata.
  • styrar update-linkUpdate a short link: originalUrl, title, isActive, activeFrom, expiresAt, campaignId/campaignIds, linkGroupId, tagIds, qrStyle, and custom OG fields.
  • styrar delete-linkPermanently delete a short link by linkId.
  • styrar list-link-groupsList link groups (folders) for personal or company scope.
  • styrar create-link-groupCreate a link group/folder with title and optional companyId or campaignId.
  • styrar update-link-groupRename a link group by groupId.
  • styrar delete-link-groupDelete a link group; links in the folder become unassigned.
  • styrar list-link-tagsList tags used to label short links in personal or company scope.
  • styrar create-link-tagCreate a link tag by name in personal or company scope.
  • styrar update-link-tagRename a link tag by tagId.
  • styrar delete-link-tagDelete a link tag and remove it from assigned links.
  • styrar list-link-routing-rulesList geo/device routing rules that redirect visitors to alternate destination URLs.
  • styrar create-link-routing-ruleAdd a geo or device rule mapping conditions to an HTTPS destinationUrl.
  • styrar update-link-routing-ruleUpdate priority, conditions, destination URL, or active state on a link routing rule.
  • styrar delete-link-routing-ruleRemove a geo/device routing rule from a short link.
  • styrar get-link-experimentFetch the A/B experiment on a short link (variants, weights, status, click counts).
  • styrar update-link-experimentCreate or replace a draft link experiment with HTTPS destinationUrl variants and weights.
  • styrar delete-link-experimentRemove the A/B experiment configuration from a short link.
  • styrar control-link-experimentStart, pause, or complete a link A/B experiment. Pass winningVariantId when completing.
  • styrar bulk-create-linksCreate up to 100 links from a links array or CSV string. Set upsert true for idempotent shortCode imports.
  • styrar bulk-update-linksUpdate up to 100 links in one request via an updates array (each entry needs id).
  • styrar bulk-delete-linksDelete multiple short links by linkIds in personal or company scope.
  • styrar import-link-ogScrape og:title, og:description, and og:image from the link destination URL into custom OG fields.
  • styrar get-link-qrReturn short link QR metadata (shortCode, qrStyle). Binary PNG/SVG download uses the dashboard or GET /v1/links/:id/qr.
  • styrar get-link-analyticsAggregated click counts across all short links; optional companyId and date range (from, to).
  • styrar get-link-analytics-by-idClick analytics for a single linkId; optional date range (from, to).
Posts9
  • styrar create-postCreate a DRAFT or SCHEDULED social post across Instagram, LinkedIn, X, TikTok, YouTube, and more. Use scheduledAt to schedule—no separate schedule_post tool. Call list_social_accounts first for socialAccountId in each target.
  • styrar list-postsList posts with optional filters—status (DRAFT, SCHEDULED, PUBLISHED, FAILED), companyId, date range (from, to), page, limit.
  • styrar get-postFetch a single post by postId including platform targets, approval status, media files, and analytics.
  • styrar update-postUpdate a DRAFT or SCHEDULED post by postId. Editable fields: content, title, scheduledAt, status, campaignId, brandId, tags, mediaFileIds.
  • styrar delete-postPermanently delete a post by postId (must be DRAFT, SCHEDULED, or FAILED).
  • styrar list-saved-mentionsList workspace saved @mentions with per-platform handles for compose and publish substitution.
  • styrar create-saved-mentionCreate or upsert a saved @mention with optional per-platform handles (X, LinkedIn, etc.).
  • styrar update-saved-mentionUpdate a saved mention name or platformHandles by mentionId.
  • styrar delete-saved-mentionDelete a workspace saved mention by mentionId.
Bio pages54
  • styrar list-bio-pagesList bio pages for personal or company scope; includes live version and custom domain metadata.
  • styrar get-bio-pageFetch one bio page by id, including live blocks and custom domain details.
  • styrar create-bio-pageCreate a new bio page with title and optional company scope.
  • styrar update-bio-pageUpdate bio page settings: title, custom tenantSlug, allowCustomSlug, trackingConfig (GA/GTM/pixels), and cookiePolicy banner when tracking is enabled.
  • styrar delete-bio-pageDelete a bio page and linked sentinel click-tracking link.
  • styrar list-bio-versionsList versions for a specific bio page id.
  • styrar create-bio-versionSave a new bio page version draft with theme, pages, pageMeta, and chrome blocks. Set copyFromSource true to clone the latest locale version.
  • styrar delete-bio-versionDelete a saved bio version. Cannot delete the only version on a page.
  • styrar publish-bio-versionPublish a specific version id as the live bio page.
  • styrar get-bio-blocksList blocks for a bio page version, optionally filtered by pagePath.
  • styrar replace-bio-blocksReplace chrome blocks for a bio version (hero, nav, footer). For section content use update_bio_version.
  • styrar get-bio-versionFetch a bio version with theme, pages, pageMeta sections, and chrome blocks. Omit versionId for the latest locale draft.
  • styrar update-bio-versionSave a bio draft in place with theme, pages, pageMeta (sections), and chrome blocks. Use for layout and content edits.
  • styrar get-bio-experimentFetch the A/B experiment config for a bio page (variants, scope, status, click counts).
  • styrar update-bio-experimentCreate or replace a draft bio experiment with variants (bioPageVersionId + weight). Scope: page, section, or block.
  • styrar delete-bio-experimentRemove the A/B experiment configuration from a bio page.
  • styrar control-bio-experimentStart, pause, or complete a bio A/B experiment. Pass winningVariantId when completing.
  • styrar list-bio-routing-rulesList geo/device routing rules that serve alternate bio versions to visitors.
  • styrar create-bio-routing-ruleAdd a geo or device routing rule mapping conditions to a bioPageVersionId.
  • styrar update-bio-routing-ruleUpdate priority, conditions, target version, or active state on a bio routing rule.
  • styrar delete-bio-routing-ruleRemove a geo/device routing rule from a bio page.
  • styrar get-bio-domainFetch the custom domain attached to a bio page (company workspaces only).
  • styrar set-bio-domainAttach a custom hostname to a bio page. Returns DNS records to configure.
  • styrar verify-bio-domainRe-check Cloudflare verification status for a bio page custom domain.
  • styrar delete-bio-domainDetach and delete the custom domain from a bio page.
  • styrar list-bio-blog-categoriesList blog categories for a bio page, optionally filtered by locale.
  • styrar create-bio-blog-categoryCreate a blog category on a bio page with name, locale, and optional slug.
  • styrar update-bio-blog-categoryUpdate a bio blog category name or slug.
  • styrar delete-bio-blog-categoryDelete a bio blog category.
  • styrar list-bio-blog-postsList blog posts on a bio page; filter by locale, status, or categoryId.
  • styrar get-bio-blog-postFetch one bio blog post by id.
  • styrar create-bio-blog-postCreate a bio blog post with title, HTML content, excerpt, cover image, SEO fields, and DRAFT or PUBLISHED status.
  • styrar update-bio-blog-postUpdate bio blog post content, metadata, category, slug, or publish status.
  • styrar delete-bio-blog-postDelete a bio blog post.
  • styrar get-bio-booking-settingsFetch appointment booking settings for a bio page: timezone, notice windows, deposit processor (Stripe or Shopify), calendar sync, and notification email.
  • styrar update-bio-booking-settingsConfigure bio booking: IANA timezone, notifyEmail, minNoticeMinutes, maxAdvanceDays, depositProcessor with stripeConnectAccountId or shopifyStoreId, and optional calendar sync fields.
  • styrar list-bio-booking-servicesList bookable services on a bio page with duration, buffer, capacity, custom fields, and optional deposit amounts.
  • styrar get-bio-booking-serviceFetch one bio booking service by bioPageId and serviceId.
  • styrar create-bio-booking-serviceAdd a bookable service with name, durationMinutes, optional description, buffer, capacity, custom intake fields, and optional depositAmountCents.
  • styrar update-bio-booking-serviceUpdate service name, duration, deposits, custom fields, active state, or sort order.
  • styrar delete-bio-booking-serviceRemove a bookable service from a bio page.
  • styrar list-bio-booking-availability-rulesList weekly hours and date-override availability or blackout rules for bio booking.
  • styrar create-bio-booking-availability-ruleAdd weekly hours or a date_override rule. Use ruleType weekly with weekday 0-6, or date_override with YYYY-MM-DD. Set isBlackout for blocked days.
  • styrar update-bio-booking-availability-ruleUpdate startMinute/endMinute, blackout flag, or date on an availability rule.
  • styrar delete-bio-booking-availability-ruleRemove a weekly or date-override availability rule.
  • styrar list-bio-booking-appointmentsList upcoming or past appointments for a bio page with optional limit and cursor pagination.
  • styrar get-bio-booking-appointmentFetch one appointment with service, slot times, guest details, and status.
  • styrar update-bio-booking-appointmentMark a confirmed past appointment as no_show via action no_show.
  • styrar cancel-bio-booking-appointmentCancel a confirmed appointment and notify the guest when configured.
  • styrar list-bio-theme-presetsList workspace-saved custom bio theme presets for personal or company scope.
  • styrar create-bio-theme-presetSave a reusable bio theme preset with label and theme JSON for the active workspace.
  • styrar delete-bio-theme-presetDelete a saved custom bio theme preset by presetId.
  • styrar get-bio-analyticsFetch click analytics for a bio page id with optional from/to date range.
  • styrar get-workspace-bio-analyticsOverview analytics across all bio pages in personal or company scope.
Campaigns5
  • styrar list-campaignsList campaigns for personal or company scope with optional brand and click totals filters.
  • styrar get-campaignFetch one campaign by id including counts and brand metadata.
  • styrar create-campaignCreate a campaign with name and optional company, brand, destination, UTM, and dynamic link settings.
  • styrar update-campaignUpdate a campaign by campaignId. Editable fields: name, description, defaultDestinationUrl, dynamicSourceEnabled, dynamicLinkMode, utmDefaults, brandId.
  • styrar delete-campaignPermanently delete a campaign by campaignId.
Content planning8
  • styrar get-content-planning-boardFetch the company content pipeline board and work items. Use view kanban for /content/plan column order, list for /content/list sorting, or timeline for /content/timeline due-date ranges. Requires company workspace and contentPlanning feature flag. Filters: campaignId, brandId, stage slug/id, tag, assigneeUserId, type (POST|LINK|BIO_UPDATE), q. Timeline view accepts optional from/to ISO dates (defaults to current month through two months ahead).
  • styrar create-content-work-itemAdd a card to the content planning pipeline (Kanban). Requires companyId. Optional stageId, type (POST|LINK|BIO_UPDATE), title, description, campaignId, brandId, assigneeUserId, startDate, endDate, dueDate, linked postId/linkId/bioPageId, and tags.
  • styrar update-content-work-itemUpdate a planning card by workItemId and companyId. Editable fields match create_content_work_item plus stageId and position.
  • styrar delete-content-work-itemPermanently delete a planning card by workItemId and companyId.
  • styrar move-content-work-itemMove a planning card to another pipeline stage (Kanban column). Requires workItemId, companyId, stageId; optional position within the column.
  • styrar add-content-work-item-tagAdd a tag label to a planning card. Requires workItemId, companyId, and tag.
  • styrar remove-content-work-item-tagRemove a tag from a planning card. Requires workItemId, companyId, and tag.
  • styrar reorder-content-planning-stagesReorder or rename Kanban pipeline stages. Requires content_planning:admin. Pass companyId, boardId, and stages array with id plus optional position and name.
Automations8
  • styrar list-automationsList automation flows for personal or company scope.
  • styrar get-automationFetch one automation by id including recent runs and nodes.
  • styrar create-automationCreate an automation with name and optional description or company scope.
  • styrar update-automationUpdate automation fields such as name, description, status, or viewport coordinates.
  • styrar list-automation-runsList run history for a specific automation id.
  • styrar run-automationTrigger a manual run for an automation with optional input payload.
  • styrar create-automation-nodeAdd a step to an automation (kind, label, x, y required) with optional visual and config fields.
  • styrar create-automation-edgeConnect two automation steps with a link between them.
Approval flows7
  • styrar list-approval-flowsList approval flows for a company (companyId required).
  • styrar get-approval-flowFetch one approval flow by id including nodes and edges.
  • styrar create-approval-flowCreate a company approval flow with name, optional description, and optional default flag.
  • styrar update-approval-flowUpdate approval flow fields such as name, description, status, and default flag.
  • styrar delete-approval-flowDelete an approval flow by id.
  • styrar test-approval-flowSimulate a flow test run with optional dummy post fields and get step and notification results.
  • styrar post-approval-actionPerform post approval actions (approve, reject, request_changes, reassign, override) on post tasks.
AI skill documents6
  • styrar list-skill-documentsList Markdown skill documents for the current user or a specific brand (provide both companyId and brandId for brand scope). Returns id, slug, title, sortOrder.
  • styrar get-skill-documentFetch a single skill document by id, including the full Markdown body. Optionally scope to a brand with companyId + brandId.
  • styrar create-skill-documentCreate a new Markdown skill document for the user or a brand (provide both companyId and brandId for brand scope). Use list_skill_templates to get ready-made starting content.
  • styrar update-skill-documentUpdate an existing skill document's title, Markdown body, slug, or sortOrder by id.
  • styrar delete-skill-documentDelete a skill document by id. Optionally scope to a brand with companyId + brandId.
  • styrar list-skill-templatesList ready-made Markdown templates — brand voice, Instagram strategy, LinkedIn strategy, content calendar, campaign planner, and hashtag strategy. Copy a template body into create_skill_document to add it to a workspace.
Media library6
  • styrar upload-mediaStore an image in the media library by passing its content as a base64-encoded string (fileData). Requires fileName and mimeType (must be image/*). The file is stored securely in S3 and automatically processed. Returns the stored file id and a signed view URL. Use when the user sends an image directly in the conversation.
  • styrar upload-media-from-urlFetch a public image URL and store it in the media library. Requires url (must resolve to an image). Optional fileName and companyId. Returns the stored file id and a signed view URL.
  • styrar generate-imageGenerate a new image from a text prompt and save it to the media library. Requires prompt. Optional fileName, companyId, provider (openai or gemini), and size (1024x1024, 1536x1024, or 1024x1536). Returns the stored file id and signed viewUrl.
  • styrar list-mediaReturns the 25 most recent images and videos from the media library as an interactive picker with inline previews. Images are shown directly; videos are shown with their thumbnail frame. Each item includes fileName, id, mimeType, sizeBytes, and duration (for videos). Call this whenever the user needs to choose a media file. Optional filters: companyId, q (filename search), tag, page.
  • styrar get-mediaFetch a single library file by id, including a signed view URL and processing status.
  • styrar delete-mediaPermanently delete a library file by id. The file is removed from S3 and the account.
Companies & brands9
  • styrar list-companiesList all companies the authenticated user belongs to, with role and member counts. Call this first to discover available companyId values.
  • styrar get-companyFetch a single company by id including brand count, member count, and subscription plan.
  • styrar create-companyCreate a new company workspace with a name and unique slug. The authenticated user becomes the owner.
  • styrar update-companyUpdate a company's name or other profile fields by companyId.
  • styrar list-brandsList all brands for a company by companyId. Returns id, name, slug, isArchived, and logo. Call before scoping posts, campaigns, or skill documents to a brand.
  • styrar get-brandFetch a single brand by companyId and brandId including guidelines and logo.
  • styrar create-brandCreate a new brand inside a company by companyId. Requires a name; slug is auto-derived.
  • styrar update-brandUpdate a brand's name, guidelines, or archive status by companyId and brandId.
  • styrar list-company-membersList members of a company by companyId. Returns user name, email, role, and brand access. Useful for approval flow setup.
Workspace notes5
  • styrar list-notesList workspace notes for personal or company scope. Optional companyId to filter to a company workspace.
  • styrar get-noteFetch a single workspace note by noteId including full body text.
  • styrar create-noteCreate a markdown workspace note with title and body. Optional companyId and visibility (PRIVATE or COMPANY).
  • styrar update-noteUpdate a workspace note's title, body, or visibility by noteId.
  • styrar delete-notePermanently delete a workspace note by noteId.
Search1
  • styrar searchGlobal search across posts, links, campaigns, bio pages, and notes. Returns matched items with type labels. Use for broad 'find me something' queries.

Primeros pasos

Inicia sesión para empezar

  1. Inicia sesión en tu panel de Styrar y crea una API key en Configuración → Claves API.
  2. La CLI está disponible para espacios de trabajo Team y Agency con sesión iniciada — abre tu cuenta para obtenerla junto con las instrucciones de instalación actuales para tu plataforma.
  3. Ejecuta `styrar login`, pega tu clave y define un espacio de trabajo predeterminado con `styrar config set companyId <id>`.
  4. Ejecuta `styrar list-tools` para ver todos los comandos disponibles, o `styrar <command> --help` para sus opciones.
styrar login
styrar config set companyId <id>
styrar list-tools

Por qué los equipos automatizan Styrar con la CLI

Un comando por cada acción del espacio de trabajo

`list-links`, `create-post`, `get-link-analytics` y más — cada función de Styrar es un comando `styrar` tipado y documentado, con su propio `--help`.

Diseñada para automatización y CI

Canaliza la salida JSON hacia `jq`, intégrala en un cron job, un pipeline de release o un script de importación masiva. Cada comando imprime JSON limpio en stdout.

El mismo catálogo que el servidor MCP

La CLI se genera a partir de las mismas definiciones de herramientas que el servidor MCP de Styrar expone a los asistentes de IA, de modo que scripts, agentes de IA y el panel permanecen sincronizados automáticamente.

API keys con alcance limitado y revocables

Autentícate con una API key del panel que tú controlas y puedes revocar en cualquier momento. Define una vez una empresa y una marca predeterminadas y usa `styrar` en todo tu espacio de trabajo.

Listo en un par de minutos

La CLI de Styrar se autentica con las mismas API keys que la API y el servidor MCP de Styrar. Inicia sesión en tu panel, genera una clave, inicia sesión desde tu terminal y ya está.

  • Inicia sesión y consigue una API keyCrea una clave en Configuración → Claves API una vez que hayas iniciado sesión en tu panel de Styrar.
  • Inicia sesión desde tu terminalEjecuta `styrar login`, pega la clave: se guarda localmente para cada comando futuro.
  • Define tus valores predeterminadosEjecuta `styrar config set companyId <id>` para no tener que pasar `--company-id` en cada llamada.

Qué puedes automatizar

La CLI de Styrar expone un conjunto completo de comandos que cubren el flujo de trabajo principal del social OS, con las mismas protecciones que el panel.

  • Programa y crea borradores de publicacionesCrea una publicación programada o en borrador para una o varias plataformas con un solo comando, lista para integrar en un script de release.
  • Obtén analíticas y datos de rendimientoObtén clics de enlaces, rendimiento de campañas y analíticas de bio para cualquier rango de fechas, como JSON limpio.
  • Crea y gestiona enlaces cortosGenera enlaces cortos con marca, consulta estadísticas de clics y organiza enlaces en campañas desde la terminal.
  • Consulta cuentas conectadasLista tus cuentas sociales conectadas o comprueba qué plataformas están activas en el espacio de trabajo actual.
  • Llama directamente a cualquier endpoint`styrar api <method> <path>` accede a cualquier ruta de la API de Styrar, incluso sin un comando dedicado.

Pensada para

Desarrolladores y agencias

Automatiza tareas recurrentes del espacio de trabajo, integra Styrar en un pipeline de release o gestiona varios espacios de clientes desde una sola terminal.

Operaciones de marketing

Importa enlaces en bloque, programa publicaciones por lotes o exporta analíticas a un informe, sin hacer clic manualmente en el panel.

Creadores de IA y automatizaciones

Usa directamente en un script de shell los mismos comandos que tu agente de IA llama a través de MCP, para un comportamiento predecible y fácil de depurar.

Related solutions

Preguntas frecuentes sobre la CLI

¿Cómo consigo la CLI de Styrar?

Inicia sesión en tu panel de Styrar — la CLI y las instrucciones de instalación actuales para tu plataforma están disponibles para espacios de trabajo Team y Agency con sesión iniciada.

¿Cómo se autentica la CLI?

La CLI usa las mismas API keys del panel que la API REST y el servidor MCP de Styrar. Crea una clave en Configuración → Claves API, luego ejecuta `styrar login` y pégala: se guarda localmente para comandos futuros.

¿La CLI es lo mismo que el servidor MCP de Styrar?

Comparten el mismo catálogo de herramientas subyacente, así que las mismas acciones están disponibles en ambos, con validación y comportamiento de solicitud idénticos. El servidor MCP está pensado para asistentes de IA como Claude y Cursor; la CLI está pensada para scripts, terminales y pipelines de CI.

¿Puedo usar la CLI en un pipeline de CI o un cron job?

Sí. Cada comando se autentica con una API key (mediante flag, variable de entorno o configuración guardada) e imprime JSON en stdout, así que es sencillo llamarlo desde un script, una tarea programada o un paso de CI.

¿La CLI se salta los flujos de aprobación o los permisos?

No. Las acciones de la CLI pasan por las mismas reglas de permisos y flujos de aprobación que el panel y la API. Los scopes de tu API key y tu rol en el espacio de trabajo determinan qué puede hacer un comando.

¿Qué puedo hacer hoy con la CLI?

La CLI cubre todo el espacio de trabajo de Styrar: publicaciones, enlaces cortos, páginas bio, campañas, automatizaciones, flujos de aprobación, medios, notas y búsqueda — además de un comando `styrar api` sin procesar para cualquier endpoint sin un comando dedicado.

Lleva Styrar a tu terminal

Inicia sesión, consigue una API key y empieza a automatizar tu espacio de trabajo en minutos.

View pricing

Join the beta waitlist

By signing up you agree to receive marketing email. See our Privacy Policy.