I am currently experiencing issues when creating Joomla articles via POST in Webhooks by Zapier. Although the articles are created, they do not appear in the Joomla backend article list, and I receive errors. My investigation suggests there might be a bug where data is not being created in the #__workflow_associations table when articles are created through the API. If I manually add the item_id, the articles then appear in the backend list.
I am unsure whether this bug originates from the Joomla side or the Zapier side. I also suspect there might be an issue with my configuration, although I have not been able to identify any misconfigurations so far.
Is the current Joomla Core APIs supporting the workflow features introduced in Joomla 4?
For reference, I am using Joomla 4.4.4 with MySQL 8.0.37, PHP 8.1.28 on a LiteSpeed server.
Here are the specific error messages I am encountering:
Code: Select all
A PHP Exception occurred on your site. Here you can find the stack trace:
Exception Type: Joomla\CMS\MVC\Controller\Exception\Save
File: [Joomla Library Path]/libraries/src/MVC/Controller/ApiController.php
Line: 452
Message: Save failed with the following error: Error loading menu: api
#0 [Joomla Library Path]/libraries/src/MVC/Controller/ApiController.php(316): Joomla\CMS\MVC\Controller\ApiController->save()
...
Request information
GET variables: Array ( )
POST variables: Array ( )
COOKIE variables: Array ( )
REQUEST variables: Array ( )
SERVER variables: Array (
[HTTP_ACCEPT] => */*
[HTTP_ACCEPT_ENCODING] => gzip, deflate
[CONTENT_TYPE] => application/json; charset=utf-8
[CONTENT_LENGTH] => 141
[HTTP_USER_AGENT] => Zapier
[DOCUMENT_ROOT] => [Document Root Path]
[REQUEST_SCHEME] => https
[REQUEST_URI] => /api/index.php/v1/content/articles
[HTTPS] => on
[SSL_PROTOCOL] => TLSv1.2
[SSL_CIPHER] => ECDHE-RSA-AES128-GCM-SHA256
[SSL_CIPHER_USEKEYSIZE] => 128
[SSL_CIPHER_ALGKEYSIZE] => 128
[SCRIPT_FILENAME] => [Document Root Path]/api/index.php
[SERVER_PROTOCOL] => HTTP/1.1
[SERVER_SOFTWARE] => LiteSpeed
[REQUEST_METHOD] => POST
[PHP_SELF] => /api/index.php/v1/content/articles
[REQUEST_TIME_FLOAT] => [Timestamp]
[REQUEST_TIME] => [Timestamp]
)
Code: Select all
This is the API request being sent from Zapier:
[b]Post in Webhooks by Zapier[/b]
- [b]App & Event:[/b]
- Webhook by Zapier
- Event: POST
- [b]Action:[/b]
- URL: [Document Root Path]/api/index.php/v1/content/articles
- Payload Type: JSON
- Data:
- title: "Example Title"
- catid: 179
- state: 1
- introtext: "{vimeo}ExampleID{/vimeo}"
- created_by: [User ID]
- language: "*"
- alias: "example-title"
- Wrap Request in Array: No
- Basic Auth: [Redacted]
- Headers: X-Joomla-Token
- [b]Test Steps:[/b]
- Send Outbound Email in Email by Zapier
- [b]App & Event:[/b]
- Email by Zapier
- Event: Send Outbound Email
- [b]Action:[/b]
- To: [Email Address]
- Subject: "RNAJ: [Subject Text]"
- Body: "[Body Text]"
- From Name: "Example User Name"
- Force Line Breaks: False
- Enable Read Receipts: False