Files
MokoJoomCross/wiki/REST-API.md
T
Jonathan Miller 2872ae2b97
Universal: Auto Version Bump / Version Bump (push) Successful in 4s
Update Server / Update Server (push) Successful in 13s
feat: low-priority issues #19-#22
#19 Per-article cross-posting: Content plugin injects "Cross-Posting"
    fieldset into article editor via onContentPrepareForm. Dynamic
    checkbox list of all enabled services. Skip toggle. System plugin
    reads article attribs for mokojoomcross_services (array of service
    IDs) and mokojoomcross_skip (boolean). Unchecked = post to all.

#20 Analytics dashboard: Posts-by-service breakdown table with
    success rate column (color-coded). Top cross-posted articles
    list. DashboardModel methods: getServiceBreakdown(),
    getDailyTrend(), getTopArticles().

#21 OAuth flows: OAuthHelper with authorize URL generation (Facebook,
    LinkedIn, Twitter), PKCE for Twitter, code→token exchange, token
    storage in service credentials. OauthController with authorize
    and callback actions. Reads client ID/secret from plugin params.

#22 Wiki documentation: Services guide (all 9 platforms, default vs
    custom mode), REST API reference, Message Templates guide with
    examples per platform, Troubleshooting guide.

Authored-by: Moko Consulting

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-28 13:42:07 -05:00

1.5 KiB

REST API

MokoJoomCross includes a WebServices plugin that provides REST API endpoints via Joomla's API application.

Authentication

All endpoints require a Joomla API token. Generate one in Users → Manage → [User] → API Tokens.

Include the token in the Authorization header:

Authorization: Bearer YOUR_API_TOKEN

Base URL

https://yoursite.com/api/index.php/v1/mokojoomcross/

Endpoints

Posts

Method Endpoint Description
GET /v1/mokojoomcross/posts List all cross-posts
GET /v1/mokojoomcross/posts/:id Get single post details
POST /v1/mokojoomcross/posts Create a cross-post entry
DELETE /v1/mokojoomcross/posts/:id Delete a post

Services

Method Endpoint Description
GET /v1/mokojoomcross/services List connected services
GET /v1/mokojoomcross/services/:id Get service details

Example

# List all posts
curl -H "Authorization: Bearer YOUR_TOKEN" \
  https://yoursite.com/api/index.php/v1/mokojoomcross/posts

# List services
curl -H "Authorization: Bearer YOUR_TOKEN" \
  https://yoursite.com/api/index.php/v1/mokojoomcross/services

Filtering

Posts support query parameters:

  • filter[status]=posted — Filter by status (queued, posting, posted, failed, scheduled)
  • filter[service_id]=5 — Filter by service
  • page[limit]=20 — Pagination limit
  • page[offset]=0 — Pagination offset