Skip to content

Dev.to

Connect Dev.to to OpenQuok with a personal API key — and schedule markdown articles.

4 min read

Connect your agent today

Draft from chat, review in your calendar, and publish only what you approve.

Start for $0

Overview

Dev.to publishing uses a personal API key you paste in the dashboard. There is no operator-registered developer app and no backend env vars such as a client ID or secret. OpenQuok keeps the key on the server so workers can publish markdown articles through the DEV Community API.

CLI walkthroughs: CLI Examples — Dev.to.

How OpenQuok stores the API key

OpenQuok needs a reversible copy of the key to call DEV on your behalf (one-way hashing is not an option for publishing).

LayerWhat happens
BrowserYou paste once in Add Channel. The key is not kept in localStorage or other client storage.
HTTP APIsList, connect, and public integration responses omit token fields — the browser never reads the key back.
DatabaseThe key is stored as AES-GCM ciphertext on the connected channel (when INTEGRATIONS_TOKEN_ENCRYPTION_KEY or SECURITY_SECRET is set) so the API and publish workers can decrypt it only when publishing, refreshing, or triggering tools. Treat it like a password.

OpenQuok uses field-level encryption at rest for provider secrets when a server encryption key is configured. Protect that key and database backups the same way you protect other server secrets. If the Dev.to key leaks, rotate it in DEV Settings → Extensions, then reconnect the channel in OpenQuok.

Features

Supported

FeatureDetails
ConnectPersonal API key from DEV Settings → Extensions
Article bodyMarkdown in the post editor (no separate markdown editor)
TitleRequired; at least 2 characters
TagsUp to 4 names
Cover imageOptional; recommended 1000×420
OrganizationOptional; publish under an organization the key can access
SeriesOptional free-text name; Dev.to creates the series if missing
Canonical URLOptional syndication URL
AnalyticsAccount and per-article page views, reactions, and comments (7 / 30 / 90 days)
Toolstags and organizations via integrations:trigger
Body lengthUp to 100,000 characters

Not supported

FeatureNotes
Operator OAuth appNo OpenQuok env keys; users paste their own API key
Public OAuth connectDashboard only
Follow-up commentsNot implemented

Create an API key

Open DEV Settings → Extensions

Sign in to Dev.to and open Settings → Extensions.

Generate a key

Create an API key. Copy it once — OpenQuok keeps it on the server for publishing after you paste it (see How OpenQuok stores the API key).

Step 1 - Generate an devto key

Connect in OpenQuok

In the workspace, choose Add ChannelDev.to, paste the key, and connect. OpenQuok calls the DEV current-user endpoint to confirm the key, then saves the channel.

To refresh an existing channel, open the same credentials form (do not expect a platform OAuth redirect).

Compose settings

The post body is markdown. Title, tags, cover, organization, series, and canonical URL live in Dev.to settings (composer or CLI).

SettingKeys
Titletitle or devto.title (required, min 2 characters)
Tagstags — up to 4 names; strings or value/label objects
Covermain_image / mainImage with a path from a prior upload
Canonical URLcanonical (aliases canonical_url, canonicalUrl)
Organizationorganization (id; aliases organization_id, organizationId)
Seriesseries or devto.series — free-text name; creates the series on Dev.to if missing

Discover the typed schema with openquok integrations:settings. List tag and organization options with openquok integrations:trigger tags and organizations.

Self-host

Dev.to needs no operator OAuth pair. Leave the social-app ID/secret rows in infra/self-host/.env.example unchanged. Users still paste an API key in the dashboard after the stack is up. See Self-host — Docker Compose.

Search documentation
Find a docs page
Discord Support