Skip to content
This repository has been archived by the owner on Jan 6, 2023. It is now read-only.

Mail function not working #488

Closed
Nitwel opened this issue Oct 15, 2018 · 9 comments
Closed

Mail function not working #488

Nitwel opened this issue Oct 15, 2018 · 9 comments
Assignees
Labels
invalid This doesn't seem right
Projects

Comments

@Nitwel
Copy link
Member

Nitwel commented Oct 15, 2018

When trying to make a simple POST request to the "[project]/mail" endpoint, I always get the error: "code": 13,
"message": "Invalid or Empty Payload"

I just used the example code from the API Doc, which obviusly should work.

Api Version: 2.0.1

@benhaynes benhaynes added bug Something isn't working hacktoberfest labels Oct 15, 2018
@benhaynes benhaynes added this to Needs triage in Bug Triage via automation Oct 15, 2018
@rijkvanzanten rijkvanzanten moved this from Needs triage to Critical in Bug Triage Oct 15, 2018
@benhaynes
Copy link
Sponsor Member

Thank you @Nitwel – good catch. We're fixing this one now...

@wellingguzman
Copy link
Contributor

Hey @Nitwel, are you making sure the request content-type is a JSON object?

Can you tell me more about how are you making this request?

@Nitwel
Copy link
Member Author

Nitwel commented Oct 15, 2018

Well, maybe I am doing something wrong. Im using a REST client but I also tested many others.

Heres an example:
grafik

@wellingguzman wellingguzman added bug Something isn't working and removed bug Something isn't working labels Oct 15, 2018
@wellingguzman
Copy link
Contributor

@Nitwel Well this is progress in a way, this is a different type of error.

I tested and there's a bug with the default configuration of mailing transport, and it seems this may be the same issue you are experiencing.

Can you look at your logs in Directus in the logs directory and tell me what the error message?

@Nitwel
Copy link
Member Author

Nitwel commented Oct 15, 2018

Yes, as said, I tested many programms, the image is from a different programm.

Here is the error from the last test (the request from the image)
[2018-10-15 15:37:31] api[_].ERROR: Directus\Exception\InvalidPayloadException: Invalid or Empty Payload in /data/web/1/000/114/698/451251/htdocs/api/src/core/Directus/Application/Route.php:154
Stack trace:
#0 /data/web/1/000/114/698/451251/htdocs/api/src/endpoints/Mail.php(20): Directus\Application\Route->validateRequestPayload(Object(Directus\Application\Http\Request))
#1 [internal function]: Directus\Api\Routes\Mail->send(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Array)
#2 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php(41): call_user_func(Array, Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Array)
#3 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/Route.php(356): Slim\Handlers\Strategies\RequestResponse->__invoke(Array, Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Array)
#4 /data/web/1/000/114/698/451251/htdocs/api/src/core/Directus/Application/Http/Middleware/AbstractRateLimitMiddleware.php(34): Slim\Route->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#5 [internal function]: Directus\Application\Http\Middleware\AbstractRateLimitMiddleware->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Slim\Route))
#6 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/DeferredCallable.php(43): call_user_func_array(Object(Directus\Application\Http\Middleware\UserRateLimitMiddleware), Array)
#7 [internal function]: Slim\DeferredCallable->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Slim\Route))
#8 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Slim\Route))
#9 /data/web/1/000/114/698/451251/htdocs/api/src/core/Directus/Application/Http/Middleware/AuthenticationMiddleware.php(79): Slim\Route->Slim{closure}(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#10 [internal function]: Directus\Application\Http\Middleware\AuthenticationMiddleware->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#11 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/DeferredCallable.php(43): call_user_func_array(Object(Directus\Application\Http\Middleware\AuthenticationMiddleware), Array)
#12 [internal function]: Slim\DeferredCallable->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#13 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#14 /data/web/1/000/114/698/451251/htdocs/api/src/core/Directus/Application/Http/Middleware/TableGatewayMiddleware.php(25): Slim\Route->Slim{closure}(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#15 [internal function]: Directus\Application\Http\Middleware\TableGatewayMiddleware->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#16 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/DeferredCallable.php(43): call_user_func_array(Object(Directus\Application\Http\Middleware\TableGatewayMiddleware), Array)
#17 [internal function]: Slim\DeferredCallable->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#18 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#19 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\Route->Slim{closure}(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#20 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/Route.php(334): Slim\Route->callMiddlewareStack(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#21 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/App.php(515): Slim\Route->run(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#22 /data/web/1/000/114/698/451251/htdocs/api/src/core/Directus/Application/Http/Middleware/AbstractRateLimitMiddleware.php(34): Slim\App->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#23 [internal function]: Directus\Application\Http\Middleware\AbstractRateLimitMiddleware->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Directus\Application\Application))
#24 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/DeferredCallable.php(43): call_user_func_array(Object(Directus\Application\Http\Middleware\IpRateLimitMiddleware), Array)
#25 [internal function]: Slim\DeferredCallable->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Directus\Application\Application))
#26 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Directus\Application\Application))
#27 /data/web/1/000/114/698/451251/htdocs/api/vendor/akrabat/rka-ip-address-middleware/src/IpAddress.php(93): Slim\App->Slim{closure}(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#28 [internal function]: RKA\Middleware\IpAddress->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#29 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/DeferredCallable.php(43): call_user_func_array(Object(RKA\Middleware\IpAddress), Array)
#30 [internal function]: Slim\DeferredCallable->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#31 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#32 /data/web/1/000/114/698/451251/htdocs/api/src/core/Directus/Application/Http/Middleware/CorsMiddleware.php(66): Slim\App->Slim{closure}(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#33 [internal function]: Directus\Application\Http\Middleware\CorsMiddleware->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#34 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/DeferredCallable.php(43): call_user_func_array(Object(Directus\Application\Http\Middleware\CorsMiddleware), Array)
#35 [internal function]: Slim\DeferredCallable->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#36 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#37 /data/web/1/000/114/698/451251/htdocs/api/src/core/Directus/Application/Http/Middleware/ResponseCacheMiddleware.php(47): Slim\App->Slim{closure}(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#38 [internal function]: Directus\Application\Http\Middleware\ResponseCacheMiddleware->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#39 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/DeferredCallable.php(43): call_user_func_array(Object(Directus\Application\Http\Middleware\ResponseCacheMiddleware), Array)
#40 [internal function]: Slim\DeferredCallable->__invoke(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#41 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response), Object(Closure))
#42 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\App->Slim{closure}(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#43 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/App.php(406): Slim\App->callMiddlewareStack(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#44 /data/web/1/000/114/698/451251/htdocs/api/vendor/slim/slim/Slim/App.php(314): Slim\App->process(Object(Directus\Application\Http\Request), Object(Directus\Application\Http\Response))
#45 /data/web/1/000/114/698/451251/htdocs/api/src/core/Directus/Application/Application.php(161): Slim\App->run(false)
#46 /data/web/1/000/114/698/451251/htdocs/api/public/index.php(5): Directus\Application\Application->run()
#47 {main} [] []

@wellingguzman
Copy link
Contributor

That error means that the body of the payload is invalid. Can you dump the whole payload you are using.

To me it seems the one that's one the documentation. Is there a way I can test this with your instance?

@Nitwel Also, make sure to not reveal your whole url + secret token in public (the screenshot).

@Nitwel
Copy link
Member Author

Nitwel commented Oct 15, 2018

The payload is the same as in the doc.

How can I contact you via PM?

@wellingguzman wellingguzman added invalid This doesn't seem right and removed bug Something isn't working labels Oct 15, 2018
@wellingguzman
Copy link
Contributor

I feel this is something going on with either #489 (error with the default transport) or there's an issue sending this payload as json with the tools you are using.

You can contact us on Slack https://slack.getdirectus.com

I marked this as invalid because this issue doesn't seem right, and when #489 is closed and this issue still happens we should label as bug as long as someone else can reproduce this issue.

@wellingguzman wellingguzman moved this from Critical to Needs triage in Bug Triage Oct 17, 2018
@wellingguzman wellingguzman moved this from Needs triage to Low priority in Bug Triage Oct 17, 2018
@wellingguzman
Copy link
Contributor

I am going to close this ticket as the error is an expected error when the payload content is an unknown type.

Bug Triage automation moved this from Low priority to Closed Oct 17, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
invalid This doesn't seem right
Projects
Bug Triage
  
Closed
Development

No branches or pull requests

3 participants