For developers to have their Transforms listed on the Transform hub the following fields are required:
Field | What it Means | Example |
* Name | Name of your Transform/s | IMDB Transforms |
* Seed URL | Where the Seed of your Transforms are locations (e.g. URL). You can optionally ask that this not be visible in the GUI as well. If this is not specified it will not be displayed. | http://transf.moviesrus.com/seed.xml |
* Description (short) | A short description of your Transform/s' function. | This Transform queries the Internet Movie Database. |
* Description (long) | A longer description of your Transform/s. | This set of Transforms allows you to pivot from movie, director, and actor. |
Modified | A UNIX timestamp of when this entry was last modified. | 474336000 |
* Icon (URL) | A 48x48px PNG icon for your Transforms. | http://www.moviesrus.com/myicon.png |
* Provider Name | You / your company name. | MoviesRUs |
* Provider website | Where users can read about you and your Transforms. | http://www.moviesrus.com/transforms/ |
*Provider email | Where users can email you. | transform_info@moviesrus.com |
Provider phone | Where users can contact you by phone. | 555-123-1234 |
Registration URL | If users need to register for the Transforms, this page should explain the process to them. | http://www.moviesrus.com/transforms/register.php |
Input Fields | If you want to perform access control on your Transforms (e.g. make it commercial) these are the fields you'll use in your transforms to identify users. Fields have the following properties:
| See example below this table. |
Pricing info | Explain to users how much your Transforms cost (if at all). | $0.01 per Transform run. |
Pricing website | At this website they'll pay / enter CC info. | http://www.moviesrus.com/pricing.php |
Note: * - required fields.
Example XML
Below is an example of Transform hub XML, please note this is CaSe SeNsItIvE.
<Seed Pos="10" Display="Commercial TAS v3"> <Url Visible="true">https://alpine.maltego.com/CTAS31.xml</Url> <!--visible is optional, default "false"--> <Description>This is a short description.</Description> <Details>This can be a very very very very very long description. This can be a very very very very very long description.</Details> <Modified>1417531063521</Modified> <!-- unix time --> <Icon><!-- 48x48px png--> <Url>https://www.maltego.com/web7/images/menu/menu5.png</Url> </Icon> <Provider> <Name>Maltego</Name> <Website>www.maltego.com</Website> <Email>support@maltego.com</Email> <Phone>+27 555 5555</Phone> </Provider> <Registration> <Website>http://register.maltego.com</Website> </Registration> <Pricing> <Info>$1 per transform or $100 per month unlimited transforms.</Info> <Website>https://pay.maltego.com</Website> </Pricing> <Inputs> <!-- Examples... --> <Input Name="api-key" Display="API Key" Type="string" Optional="true" Auth="true"/> <Input Name="username" Display="User Name" Type="string" Auth="true"/> <!-- default for Optional and Auth is "false" --> <Input Name="password" Display="Password" Type="string" Auth="true"/> <Input Name="service-url" Display="Main Blah URL" Type="url" Optional="true" DefaultValue="http://some.service.com/blah"/> <Input Name="from" Display="Start Date" Type="date" Optional="true" DefaultValue="1999-04-22"/> <Input Name="netblockSize" Display="Netblock Size" Type="string" Optional="false" DefaultValue="10"/> </Inputs> </Seed>
600 error messages
If your Transform returns the following XML it will result in the Maltego Client popping up an useful error message prompting the user to fill out the fields marked as 'Auth' (as defined in the Transform hub item).
An example of this can be seen below:
<maltegomessage> <maltegotransformexceptionmessage> <exceptions> <exception code="600">Your error message such as API key required</exception> </exceptions> </maltegotransformexceptionmessage> </maltegomessage>