Skill Numbering Changes: - 01-03: OurDigital core (was 30-32) - 31-32: Notion tools (was 01-02) - 99_archive: Renamed from _archive for sorting New Files: - AGENTS.md: Claude Code agent routing guide - requirements.txt for 00-claude-code-setting, 32-notion-writer, 43-jamie-youtube-manager Documentation Updates: - CLAUDE.md: Updated skill inventory (23 skills) - AUDIT_REPORT.md: Current completion status (91%) - Archived REFACTORING_PLAN.md (most tasks complete) Removed: - ga-agent-skills/ (moved to separate repo ~/Project/dintel-ga4-agent) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
75 lines
2.0 KiB
Markdown
75 lines
2.0 KiB
Markdown
# Ghost Admin API Configuration
|
|
|
|
## Configured Channels
|
|
|
|
| Channel | Domain | API Status |
|
|
|---------|--------|------------|
|
|
| blog.ourdigital.org | Korean main blog | ✅ Configured |
|
|
| journal.ourdigital.org | English journal | ✅ Configured |
|
|
| ourstory.day | Personal essays | ✅ Configured |
|
|
|
|
## API Endpoints
|
|
|
|
Base URL pattern: `https://{domain}/ghost/api/admin/`
|
|
|
|
### Authentication
|
|
Ghost Admin API uses JWT tokens generated from Admin API keys.
|
|
|
|
```
|
|
Admin API Key Format: {id}:{secret}
|
|
- id: 24 hex characters
|
|
- secret: 64 hex characters
|
|
```
|
|
|
|
### Key Endpoints
|
|
|
|
| Endpoint | Method | Purpose |
|
|
|----------|--------|---------|
|
|
| `/posts/` | POST | Create new post |
|
|
| `/posts/{id}/` | PUT | Update existing post |
|
|
| `/images/upload/` | POST | Upload image |
|
|
| `/tags/` | GET/POST | Manage tags |
|
|
|
|
### Post Creation Payload
|
|
|
|
```json
|
|
{
|
|
"posts": [{
|
|
"title": "Post Title",
|
|
"html": "<p>Content in HTML</p>",
|
|
"status": "draft",
|
|
"tags": [{"name": "tag1"}, {"name": "tag2"}],
|
|
"feature_image": "https://...",
|
|
"meta_title": "SEO Title",
|
|
"meta_description": "SEO Description",
|
|
"og_title": "Social Title",
|
|
"og_description": "Social Description",
|
|
"published_at": "2024-01-15T09:00:00.000Z"
|
|
}]
|
|
}
|
|
```
|
|
|
|
### Status Options
|
|
- `draft`: Save without publishing
|
|
- `published`: Publish immediately
|
|
- `scheduled`: Schedule for future (requires `published_at`)
|
|
|
|
## Future Automation Opportunities
|
|
|
|
### Zapier Integration Points
|
|
1. **Trigger**: New Notion page in "Working with AI" → Create Ghost draft
|
|
2. **Trigger**: Ghost post published → Share to social channels
|
|
3. **Trigger**: New MD file in iCloud folder → Create Ghost draft
|
|
|
|
### n8n Workflow Ideas
|
|
1. Research complete → Auto-create drafts across all relevant channels
|
|
2. Scheduled publishing queue management
|
|
3. Cross-posting between Ghost instances
|
|
|
|
## Security Notes
|
|
|
|
- API keys stored in environment variables
|
|
- Never expose keys in code or logs
|
|
- Rotate keys if compromised
|
|
- Use separate keys for different integrations
|