Blog Platforms Setup
Configure blog platform integrations for publishing long-form content.
Medium
Authentication Method
Medium uses Integration Tokens (not OAuth):
- Go to Medium Settings
- Scroll to Integration tokens
- Generate a new token
- Store the token securely (shown only once)
Required Scopes
Medium tokens have fixed scopes:
basicProfile- Read user profilepublishPost- Publish postslistPublications- List user's publications
API Endpoint
https://api.medium.com/v1/Platform Limitations
| Feature | Status |
|---|---|
| Draft posts | ✅ Supported |
| Published posts | ✅ Supported |
| Unlisted posts | ✅ Supported |
| Images in posts | ✅ Inline markdown/HTML |
| Publication posting | ✅ Supported (if contributor) |
| Edit existing | ❌ Not supported (create only) |
| Delete posts | ❌ Not supported |
| Analytics | ❌ Not available via API |
WordPress
Authentication Methods
WordPress supports multiple authentication methods:
| Method | Use Case |
|---|---|
| Application Passwords | Self-hosted WordPress |
| Jetpack/WordPress.com | WordPress.com or Jetpack-connected sites |
| OAuth 2.0 | WordPress.com only |
For Self-Hosted WordPress
- Enable Application Passwords (WordPress 5.6+)
- Go to Users → Profile → Application Passwords
- Create new application password
- Use as Basic Auth with username
Required Capabilities
| Capability | Purpose |
|---|---|
edit_posts | Create/edit posts |
publish_posts | Publish posts |
upload_files | Upload media |
REST API Endpoints
https://your-site.com/wp-json/wp/v2/posts
https://your-site.com/wp-json/wp/v2/mediaPlatform Limitations
| Feature | Status |
|---|---|
| Posts | ✅ Full CRUD |
| Pages | ✅ Full CRUD |
| Custom post types | ✅ If enabled |
| Media upload | ✅ Supported |
| Categories/tags | ✅ Supported |
| Featured images | ✅ Supported |
| Gutenberg blocks | ⚠️ HTML only (no block format) |
Ghost
Authentication Method
Ghost uses Admin API Keys:
- Go to Settings → Integrations
- Click Add custom integration
- Name it (e.g., "TendSocial")
- Copy the Admin API Key
API Key Format
Ghost Admin API keys are in the format:
{key_id}:{secret}Use this to generate a JWT for API requests.
API Endpoint
https://your-site.ghost.io/ghost/api/admin/Platform Limitations
| Feature | Status |
|---|---|
| Posts | ✅ Full CRUD |
| Pages | ✅ Full CRUD |
| Tags | ✅ Supported |
| Authors | ✅ Supported |
| Images | ✅ Supported |
| Scheduling | ✅ Supported |
| Members content | ✅ Supported |
| Newsletters | ⚠️ Separate API |
Content Format
Ghost supports:
- Mobiledoc (native format)
- HTML (converted internally)
- Lexical (Ghost 5.0+)
TendSocial uses HTML for maximum compatibility.
Environment Variables
bash
# Medium
MEDIUM_INTEGRATION_TOKEN=your_token
# WordPress (for WordPress.com OAuth)
WORDPRESS_CLIENT_ID=your_client_id
WORDPRESS_CLIENT_SECRET=your_client_secret
# Ghost (stored per-connection, not global)
# Users provide their own Ghost Admin API keysCallback URLs
Only WordPress.com OAuth requires a callback:
https://api.tendsocial.com/api/social/accounts/callback/wordpress