Knowledge Base: Data API: Projects

Projects

Please make sure you read the introduction to the data API first.

Attributes

  • id (Integer)
  • name (String)
  • permalink (String) - URI Identifier
  • oneliner (String)
  • description (Text)
  • created_at (Datetime, read-only)
  • updated_at (Datetime, read-only)
  • vitality (Vitality score, read-only)
  • popularity (Popularity score, read-only)
  • subscriptions_count (Number of project subscriptions, read-only)
  • project_filters_count (Number of filters placed for this project, read-only)

Virtual Attributes

  • tag_list (Assigned tags in the general context, comma-separated)
  • translation_list (Assigned tags in the translations context, comma-separated)
  • programming_language_list (Assigned tags in the programming language context, comma-separated)
  • operating_system_list (Assigned tags in the operating system context, comma-separated)

Included Associations

  • direct_download (Universal URL record to download this project directly)
  • approved_urls (Array of associated URL records)
  • approved_screenshots (Array of associated Screenshot records)
  • recent_releases (Array of recent project Release records)
  • user (Owner of the record including unique user ID and URL (if any), added 20091005)

Request Root

http://freshmeat.net/projects

Show project

GET /projects/#{permalink}.json

Fetches the project along with its URLs and Releases.

Response:

{
  "project": {
    "id": 6904,
    "permalink": "mysql",
    "name": "MySQL",
    "oneliner": "A fast SQL database server.",
    "description": "MySQL is a widely used and fast SQL database\r\nserver. It is a client\/server implementation that\r\nconsists of a server daemon (mysqld) and many\r\ndifferent client programs\/libraries. ",
    "created_at": "1998-01-11T21:25:26Z",
    "updated_at": "2009-05-31T10:35:42Z",
    "vote_score": 152,
    "popularity": 3455.94,
    "vitality": 380.2,
    "project_filters_count": 284,
    "subscriptions_count": 1817,
    "tag_list": [
      "Database",
      "Database Engines\/Servers"
    ],
    "operating_system_list": [
      "Mac OS X",
      "Windows",
      "OS\/2",
      # ...
    ],
    "license_list": [
      "GPL"
    ],
    "programming_language_list": [
    ],
    "translation_list": [
    ],
    "approved_screenshots": [
    ],
    "direct_download": {
      "redirector": "http:\/\/freshmeat.net\/urls\/5314230aa0028bae43d6cfc51d88e808",
      "id": 27772,
      "host": "dev.mysql.com",
      "label": "Tar\/GZ"
    },
    "approved_urls": [
      {
        "redirector": "http:\/\/freshmeat.net\/urls\/b0d0701ee4d3d19b845940523473529b",
        "id": 112481,
        "host": "mysql.com",
        "label": "Website"
      },
      # ...
    ],
    "recent_releases": [
      {
        "id": 300187,
        "version": "5.0.82",
        "tag_list": [
        ],
        "approved_at": "2009-05-31T10:35:42Z",
        "changelog": "This release contains, among others, changes related to replication, locking, memory allocation, and InnoDB."
      },
      # ...
    ]
  }
}

Update project

PUT /projects/#{permalink}.json

Updates the core attributes of a project

Associated data (apart from Tags) cannot be updated through this function. Please see the specifications for the respective data types in this documentation.

Request:

{
  "auth_code": "XXX",
  "project": {
    "name": "New Project Name",
    "tag_list": "five, six, seven"
  }
}

Response:

Status: 200 OK

Create Project

Note: Project creation is not exposed through the API at this point and will be included in the next update.