Data API: Releases

Releases

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

Attributes

  • id (Integer, read-only)
  • version (String)
  • changelog (Text)
  • hidden_from_frontpage (Boolean)
  • approved_at (Datetime, read-only)

Update 2009-12-16: Added hidden_from_frontpage attribute.
Update 2010-10-20: Added release withdrawal.
Update 2010-11-23: Creating releases returns the record. Update 2010-11-24: Added pending releases method.

Virtual Attributes

  • tag_list (Gets and sets associated tags, comma-separated)

These tags are release-specific and do not necessarily represent the tags of the project.

Request Root

https://freecode.com/projects/#{permalink}/releases

List Releases

GET /projects/#{permalink}/releases.json

Response:

[
  {
    "release": {
      "id": 290270,
      "version": "6.0.8",
      "tag_list": [
        "6.0.x (Alpha)"
      ],
      "hidden_from_frontpage": false,
      "approved_at": "2008-12-15T18:07:06Z",
      "changelog": "The tables for MySQL Backup logging have been renamed, and the logging capabilities are now more flexible, similar to the capabilities provided for the general query log and slow query log. The '--skip-thread-priority' option is now deprecated in MySQL 5.1, and is removed in MySQL 6.0, such that the server won't change the thread priorities by default. The '--log' option now is deprecated and will be removed (along with the log system variable) in the future."
    }
  }
]

Show Release

GET /projects/#{permalink}/releases/#{id}.json

Response:

{
  "release": {
    "id": 290270,
    "version": "6.0.8",
    "tag_list": [

    ],
    "approved_at": "2008-12-15T18:07:06Z",
    "changelog": "The tables for MySQL Backup logging have been renamed, and the logging capabilities are now more flexible, similar to the capabilities provided for the general query log and slow query log. The '--skip-thread-priority' option is now deprecated in MySQL 5.1, and is removed in MySQL 6.0, such that the server won't change the thread priorities by default. The '--log' option now is deprecated and will be removed (along with the log system variable) in the future."
  }
}

Add Release

POST /projects/#{permalink}/releases.json

Request:

{
  "auth_code": "XXX",
  "release": {
    "tag_list": "stable, security",
    "version": "1.1",
    "changelog": "Security Patch”,
    "hidden_from_frontpage": false
  }
}

Response:

201 Created

List Pending Releases

GET /projects/#{permalink}/releases/pending.json

This method returns a list of releases that are currently pending approval. Please be aware that only releases submitted by the user making the request are included. The id included in the response can then be used to withdraw a release.

Response:

[
  {
    "release": {
      "id": 290270,
      "version": "6.0.8",
      "tag_list": [
        "6.0.x (Alpha)"
      ],
      "hidden_from_frontpage": false,
      "approved_at": null,
      "created_at": "2008-12-15T18:07:06Z",
      "changelog": "The tables for MySQL Backup logging have been renamed, and the logging capabilities are now more flexible, similar to the capabilities provided for the general query log and slow query log. The '--skip-thread-priority' option is now deprecated in MySQL 5.1, and is removed in MySQL 6.0, such that the server won't change the thread priorities by default. The '--log' option now is deprecated and will be removed (along with the log system variable) in the future."
    }
  }
]

Withdraw Release

DELETE /projects/#{permalink}/releases/#{id}.json

This method withdraws a release you submitted through the API which has not been approved yet. It will fail for releases which have already been approved by a Freecode administrator. It will also only ever work for releases that have been submitted by the user making the withdrawal request.

The required auth_code can be supplied either using a query string parameter (?auth_code=XXX) or by supplying an appropriate request body (JSON or XML) with an auth_code value set, such as:

{
  "auth_code": “XXX”
}

Response:

Status: 200 OK