To use the API, you're required to be a registered user of freshmeat.net. This makes sense because, for now, the primary use of it is release submission automation through scripted release managers and the like.
Currently, the feature set includes the retrieval of branches for a given project and the data of pending release submissions, submission of new releases, and withdrawal of pending releases. This obviously only works for projects for which you're an admin. (We have instructions available on how to request ownership in case you're developing an application but do not own its freshmeat project record.)
All functions return appropriate error codes for error conditions (a list of which can be found in the API docs linked to below) and exit gracefully upon encountering an error.
The first sample implementation is freshmeat-submit and comes from Eric S. Raymond of fetchmail fame. He and I worked closely together to make this interface as usable and error-free as possible. Thanks for your co-operation, Eric!
The most recent copy of the API docs is (and always will be) available in the FAQ.
All that being said, the API is evolving. We'll have more features available as you request them (and they make sense). And keep in mind, don't ruin the fun for everybody by abusing or excessively using the API.
Patrick Lenz (scoop)
freshmeat.net Site Manager and Senior Developer