Extension:MassMessage/API

From Linux Web Expert

Sending messages


You can use the API with action=massmessage to send messages.

Parameters

  • spamlist - Page containing list of pages to send messages to
  • subject - Subject line of message
  • message - Body of message
  • token - Edit token from action=tokens

Example

For the sake of simplicity, all parameters are passed in a GET request in this example. However, this API action requires POST requests.


<translate> Result</translate>
<?xml version="1.0"?>
<api>
  <massmessage result="success" count="500" />
</api>

Returned fields

  • result - "success" if message was sent properly.
  • count - how many messages were queued

Modifying delivery lists


ContentHandler-based delivery lists can be edited using the API with action=editmassmessagelist. You can also use the standard action=edit , but that requires serializing the JSON yourself, and will result in less specific error messages.

Parameters

  • spamlist - Title of the delivery list to update
  • add - Titles to add to the list
  • remove - Titles to remove from the list
  • token - Edit token from action=tokens

Example

For the sake of simplicity, all parameters are passed in a GET request in this example. However, this API action requires POST requests.
<translate> Result</translate>
<?xml version="1.0"?>
<api>
  <editmassmessagelist result="Done">
    <added>
      <page title="User talk:Foo" missing="" />
    </added>
    <invalidadd>
      <item invalidtitle="" xml:space="preserve">_</item>
    </invalidadd>
    <removed>
      <page title="User talk:Baz" />
    </removed>
    <invalidremove>
      <item>Baz</item>
    </invalidremove>
  </editmassmessagelist>
</api>

Returned fields

  • result - "Success" if the entire request succeeded; "Done" if some or all of it failed.
  • added - List of pages added, if "add" was specified in the request
    • missing - If the attribute exists, the page does not exist on the wiki (for rendering redlinks)
  • invalidadd - List of pages that could not be added, if any
    • invalidtitle - If the attribute exists, the title is invalid
    • invalidsite - If the attribute exists, the site is invalid
  • removed - List of pages removed, if "remove" was specified in the request
  • invalidremove - List of pages that could not be removed because they weren't in the list, if any