Skip to content
All docs

Medium setup

Credential: Integration token, legacy only

Read this first

Medium no longer issues integration tokens. They stopped accepting new API integrations, and tokens issued before that change continue to work. This connector is therefore only usable if your Medium account already holds a token. If you do not have one, there is no way to obtain one, and no workaround this connector can offer.

It is included rather than dropped because the accounts that do hold a token still work perfectly well, and removing support would strand them.

The canonical rule

Medium is a syndication target, so as with dev.to and Hashnode, BirchSeek publishes there only once the article is live on your own site, and sends that URL as canonicalUrl. Medium honours it.

Configure

Setting What it does
Publish status draft (default), public, or unlisted.
Publication Post into a Medium publication you contribute to, rather than your profile.

Your Medium author id is resolved automatically when you test the connection.

The copy ends with a ## Sources block, the same one your own site’s article carries: each verified claim paired with the page it was checked against. The project setting that can switch that block off for your own site does not reach this copy, and deliberately so - Medium’s API has no citation field, so the body is the only place the evidence can travel. The canonical link back to your page goes with it.

A limitation worth knowing

Medium’s API can create posts but cannot list or update them. There is no endpoint to ask “have I already posted this?”, so unlike every other BirchSeek connector, a republish to Medium can create a second copy rather than updating the first.

This is a property of Medium’s API, not a bug here. BirchSeek’s own publish records prevent duplicates from a retry within a run, but a deliberate refresh of an article already on Medium will post again. If that matters to you, publish to Medium as a draft and merge by hand, or leave Medium out of refresh schedules.

It is also why Automatic cross-posting asks you to accept something before it will switch on. That setting is off on every new project, and while it is off nothing is sent to Medium, dev.to or Hashnode at all. Turning it on under Settings → Project means accepting this specific risk: that a retry after a lost reply can leave a second Medium copy no check will ever find, and a post that cannot be found cannot be deleted. Every other duplicate, on every other platform, is ruled out before the request leaves. Turning the setting back off is never refused - not for a lapsed subscription, not for anything.

Troubleshooting

  • 401 - the integration token was revoked. Medium will not issue a replacement.
  • “article must be live on your own site first” - no live URL yet.