Command-line interface

Je social workspace, scriptbaar vanuit de terminal

De Styrar CLI zet elke werkruimte-actie — posts, links, bio-pagina's, campagnes, analytics — achter één `styrar`-commando. Log in op je dashboard om je API-sleutel en de CLI te krijgen. Elk commando wordt rechtstreeks gegenereerd uit dezelfde toolcatalogus die de Styrar MCP-server aan AI-assistenten aanbiedt, dus een script dat je vandaag schrijft, gedraagt zich precies als de bijbehorende AI-actie.

Alle integraties bekijken

Wat je kunt uitvoeren

Een paar van de gegenereerde commando's:

  • `styrar list-posts` — geplande, gepubliceerde en concept-posts opvragen met filters
  • `styrar create-post` — een post opstellen of plannen voor elk gekoppeld platform
  • `styrar get-link-analytics` — klikgegevens en campagneprestaties over een periode ophalen
  • `styrar create-link` / `styrar list-links` — korte links en campagnes aanmaken en beheren
  • `styrar list-social-accounts` — gekoppelde accounts en hun status opvragen
  • `styrar search` — posts, links, campagnes en bio-pagina's doorzoeken met één query
  • `styrar api GET /v1/...` — elk Styrar-endpoint rechtstreeks aanroepen, ook zonder eigen commando

De volledige commandocollectie

Elk commando hieronder draait in je terminal — georganiseerd per categorie, gegenereerd uit dezelfde catalogus als de Styrar MCP-server.

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.

Aan de slag

Log in om te starten

  1. Log in op je Styrar dashboard en maak een API-sleutel aan onder Instellingen → API-sleutels.
  2. De CLI is beschikbaar voor ingelogde Team- en Agency-werkruimtes — open je account voor de CLI en de actuele installatie-instructies voor jouw platform.
  3. Voer `styrar login` uit, plak je sleutel en stel een standaardwerkruimte in met `styrar config set companyId <id>`.
  4. Voer `styrar list-tools` uit om alle beschikbare commando's te zien, of `styrar <command> --help` voor de opties.
styrar login
styrar config set companyId <id>
styrar list-tools

Waarom teams Styrar scripten met de CLI

Eén commando per werkruimte-actie

`list-links`, `create-post`, `get-link-analytics` en meer — elke Styrar-functie is een getypt, gedocumenteerd `styrar`-commando met eigen `--help`.

Gebouwd voor automatisering en CI

Stuur JSON-output door naar `jq`, koppel het aan een cronjob, een releasepijplijn of een bulk-importscript. Elk commando print schone JSON naar stdout.

Dezelfde catalogus als de MCP-server

De CLI wordt gegenereerd uit dezelfde tooldefinities die de Styrar MCP-server aan AI-assistenten aanbiedt, zodat scripts, AI-agents en het dashboard automatisch synchroon blijven.

Beperkte, intrekbare API-sleutels

Verifieer met een dashboard-API-sleutel die je zelf beheert en op elk moment kunt intrekken. Stel eenmalig een standaard company en brand in en gebruik `styrar` daarna in je hele werkruimte.

In een paar minuten aan de slag

De Styrar CLI verifieert met dezelfde API-sleutels als de Styrar API en MCP-server. Log in op je dashboard, genereer een sleutel, log in vanuit je terminal en je kunt aan de slag.

  • Log in en haal een API-sleutel opMaak een sleutel aan onder Instellingen → API-sleutels zodra je bent ingelogd op je Styrar dashboard.
  • Log in vanuit je terminalVoer `styrar login` uit, plak de sleutel en deze wordt lokaal opgeslagen voor elk volgend commando.
  • Stel je standaardwaarden inVoer `styrar config set companyId <id>` uit zodat je niet bij elke aanroep `--company-id` hoeft mee te geven.

Wat je kunt scripten

De Styrar CLI biedt een volledige set commando's voor de kernworkflow van je social OS, met dezelfde waarborgen als het dashboard.

  • Posts plannen en opstellenMaak met één commando een geplande of concept-post voor een of meer platforms, klaar om in een releasescript te verwerken.
  • Analytics en prestatiegegevens ophalenHaal linkkliks, campagneprestaties en bio-analytics op voor elke periode als schone JSON.
  • Korte links aanmaken en beherenGenereer branded korte links, bekijk klikstatistieken en organiseer links in campagnes vanuit de terminal.
  • Gekoppelde accounts opvragenBekijk je gekoppelde social accounts of controleer welke platforms actief zijn in de huidige werkruimte.
  • Elk endpoint rechtstreeks aanroepen`styrar api <method> <path>` bereikt elke Styrar-API-route, ook zonder eigen commando.

Gemaakt voor

Developers en agencies

Script terugkerende werkruimtetaken, koppel Styrar aan een releasepijplijn of beheer meerdere klantwerkruimtes vanuit één terminal.

Marketing operations

Importeer links in bulk, plan posts in batches of exporteer analytics naar een rapport — zonder handmatig door het dashboard te klikken.

AI- en automatiseringsbouwers

Gebruik dezelfde commando's die je AI-agent via MCP aanroept rechtstreeks in een shellscript, zodat gedrag voorspelbaar en makkelijk te debuggen blijft.

Related solutions

Veelgestelde vragen over de CLI

Hoe krijg ik de Styrar CLI?

Log in op je Styrar dashboard — de CLI en de actuele installatie-instructies voor jouw platform zijn beschikbaar voor ingelogde Team- en Agency-werkruimtes.

Hoe verifieert de CLI?

De CLI gebruikt dezelfde dashboard-API-sleutels als de Styrar REST API en MCP-server. Maak een sleutel aan onder Instellingen → API-sleutels, voer daarna `styrar login` uit en plak de sleutel — deze wordt lokaal opgeslagen voor volgende commando's.

Is de CLI hetzelfde als de Styrar MCP-server?

Ze delen dezelfde onderliggende toolcatalogus, dus dezelfde acties zijn in beide beschikbaar, met identieke validatie en aanvraaggedrag. De MCP-server is voor AI-assistenten zoals Claude en Cursor; de CLI is voor scripts, terminals en CI-pijplijnen.

Kan ik de CLI gebruiken in een CI-pijplijn of cronjob?

Ja. Elk commando verifieert met een API-sleutel (via flag, omgevingsvariabele of opgeslagen configuratie) en print JSON naar stdout, dus het is eenvoudig aan te roepen vanuit een script, geplande taak of CI-stap.

Omzeilt de CLI goedkeuringsworkflows of rechten?

Nee. CLI-acties lopen via dezelfde rechten en goedkeuringsflows als het dashboard en de API. De scopes van je API-sleutel en je rol in de werkruimte bepalen wat een commando mag doen.

Wat kan ik vandaag met de CLI doen?

De CLI dekt de volledige Styrar-werkruimte: posts, korte links, bio-pagina's, campagnes, automatiseringen, goedkeuringsflows, media, notities en zoeken — plus een raw `styrar api`-commando voor elk endpoint zonder eigen commando.

Breng Styrar naar je terminal

Log in, haal een API-sleutel op en begin binnen enkele minuten met scripten.

View pricing

Join the beta waitlist

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