After several days of work and tests at, I'm proud to announce the immediate availability of about 2000 lines of code compiled into Akismet module v1.0.0 for Drupal 4.7.

You are encouraged to visit the Akismet site to learn more about it. In just a few words, when new content is submitted to your site, the akismet module sends a real time request to Akismet where hundreds of tests are applied to get a thumbs up or thumbs down kind of response. It may finally that tell us if the content is spam or not. If it isn't, the content is published, if it is, then it is placed on the moderation queue. Moderators may opt-in to receive e-mail notifications for all content, just content needing approval or nothing at all. The module is fully customizable, almost everything is optional. It also keeps track of a counter that you can use to show your visitors how many spam has been caught by Akismet in your site.

I have also implemented a quite simple method to check for updates at certain intervals, which is customizable from the settings panel. It can also be disabled.

For a complete list of features, support resources and download, please visit the project page for the Akismet module for Drupal.

Please note that in order to use the Akismet Service, you need a API key. If you don't have one already, you can get it by simply signing up for a free account at Please, consult the Akismet FAQ for further information.


Boris Mann’s picture

Markus, great work. Will get to testing this over the next week or so.

Any chance you would maintain this on directly?

markus_petrux’s picture

Will get to testing this over the next week or so.

Thanks, looking forward to your comments. I would highly appreciate it.

Any chance you would maintain this on directly?

I'm not only developing for Drupal, but also for phpBB and WordPress (I'm close to release a new plugin soon). It helps me to save a lot of time to have all resources for support et all on a single place that I can fully control.

I'm mostly working as a hobby (also I may be interested on something else, but that's another story). When I started using/developing for Drupal (a few months ago) I first requested a CVS account and created my projects here, but after some time I realized I could optimize my time a little. This is one of the reasons I decided to use Drupal for my site (I was in fact coding my own portal/cms). Drupal is a great and pretty powerfull framework. So I created my projects area based on CCK and a custom module that builds the menu tabs/subtabs based on taxonomy. Easy and better for me than the project module (that I tried first). For version control I use SourceForge which is pretty fast now that they have increased resources dedicated to their CVS service. I'm thinking also to migrate to SVN, so I can learn something new. And for support... I'm used to (and I love) phpBB.

In fact, I was concerned about not publishing here, not only me, but also because other 3rd party developers may have a similar need, or also because users could miss something that could really be of their interest... so I opened a discussion to think about it and to request some changes to the project module (or something), so contrib stuff not developed using Drupal resources could still be browsed from the downloads area of this site. This is (I believe) what users are used to browse when they need something... this discussion is located here:

Back to the Akismet module, I just got a spambot attack today, and had some thoughts posted here:

Also, besides waiting for any bug that may arise, I'm open to critiques related to this module, to make it better, easier to use and, if possible, more powerfull.

For those worried about not publishing the code here, I promise that if I ever reach I point where I can continue supporting anything I do. I'll donate the code to the cause. Meanwhile, I'll try my best. I'm happy with the way I finally could organize my projects. I hope you can understand that. :-)

Doubt is the beginning, not the end of wisdom.

Boris Mann’s picture

I appreciate the lengthy response. I understand how you want to make the best use of your time, especially if you work on lots of different projects.

It is unlikely that we would modify the project module directly to support remote projects. We already get enough flack for some flaky contrib modules that are hosted here. *Perhaps* a section labelled something like "Offsite Modules" or something like that.

Having modules here just shows another level of commitment, especially when we start talking about "premium" modules that are verified and security audited. The other thread has some good information in it...I would close by saying that it is unlikely to be of interest to site maintainers to do this extra work. Someone is welcome to create an external resource that has module listings...the fact there isn't one seems to indicate that the demand isn't that great.

markus_petrux’s picture

Sorry, probably my fault, but I believe it is better to keep this discussion in the other thread, I have replied here:

Doubt is the beginning, not the end of wisdom.

rickvug’s picture

I'll have to use this soon, this will be extremely helpful.

Rick Vugteveen | Image X Media (work) | Blog (personal)

Rick Vugteveen | @rickvug on Twitter

markus_petrux’s picture

Just wanted to mention that, if life permits, I'll release a new version soon (hopefully this week-end) with:

a) spam moderator queue able to deal with multiple operations at a time.
b) a few new options aimed to protect from DoS caused by spambots.
c) minor fixes here and there.


Doubt is the beginning, not the end of wisdom.

markus_petrux’s picture

Although it took me a bit more time than expected, I'm happy to say that Akismet module version 1.1.0 for Drupal 4.7 is here.


  • Added experimental feature: anti-spambot options to prevent from Denial of Service (DoS) caused by certain spambots.
  • Rewritten moderation queue. It is now a bit more powerful, allowing operations against multiple items.
  • Code related to admin and cron has been moved to external files which are only loaded when needed. This is to minimize resource consumption during normal site operation.
  • Prevent from sending e-mail notifications to the same user who has written the content.
  • Removed unnecessary code in hook_install.
  • Added a couple of columns to the {akismet_spam_marks} table to speed up some queries. Requires running http://site/update.php

For further information, please check out the files README.txt and INSTALL.txt included in the package.

Doubt is the beginning, not the end of wisdom.

chrisada’s picture

thank you thank you thank you thank you thank you! :)

It just works.

markus_petrux’s picture

I found a couple of small bugs and decided to fix and release them asap. I'll be doing this, whenever a critical or anoying issue is found. I apologize for any inconvenient it might cause... I hope it all will be pretty stable soon, however. :-)

Some thoughts about the experience I'm getting with the module at my site (I had close to 0 spam before releasing this module, lol)... well, I posted that to the akismet spam-stopper mailing list:

It is just that I'm wondering if there would be something else to do... maybe it would be possible to join efforts to report spam activies to the corresponding ISP and/or e-mail providers (it seems no one is doing this? ), resources spammer seem to be reusing again and again...

BTW, I also wrote a small guide to theme the "akismet spam counter" block:


Doubt is the beginning, not the end of wisdom.

conkhead’s picture

Does anyone know if this module will perhaps work with Drupal 4.6? I've looked at a little of the code, and I'm guessing not. Is anyone interested in doing a 4.6 version? Markus? Anyone?

markus_petrux’s picture

...I was unable to find an easy way to intercept content/comment posting to perform the akismet requests to check for spam.

Performing the akismet check in real time was only possible after some patches that were included in 4.7. Even then, I had to include code in the akismet module to perform (what I would call) low level tasks, such as publishing/unpublishing content. ie. there was no API for certain functions, which makes the module harder to maintain. This problem was a lot more complex with 4.6, so I abandoned the idea to provide a version for it...

Doubt is the beginning, not the end of wisdom.

sillygwailo’s picture

Because it took me a couple tries to do it, it seemed right to document it: I was able to check the Akismet module out of SourceForge's CVS with the following at the command line:

cvs co drupal/modules/akismet

(Username formerly my full name, Richard Eriksson.)

markus_petrux’s picture


Due to a recent change in my day job (omg, it's been a few months, time passes quickly), I don't have time to maintain this module. I don't believe I'll have it in the short/middle time...

As far as I can tell, the module is working with reasonable success for the Drupal 4.7 branch. AFAIK, no big issues found. There are though some feature requests (support for trackbacks and similar things) that I haven't had the time to deal with. There would be a bit of work to make it Drupal 5.x compatible too.

If anyone is interested in taking over this module, please let me know, so I can send you all I have done to date. If I recall correctly, there're a few changes, related to fighting spambots, that were never released.

happy christmas to all

Doubt is the beginning, not the end of wisdom.