You are using a browser that is not supported.

API Documentation

How to Authenticate

Some products and releases may require authentication to access or modify.

We have introduced a new authentication workflow called the UAA API Token Workflow. This relies on the use of refresh and access tokens. Please see below for more information. The legacy tokens will be deprecated in the coming months.

Currently, your Edit Profile page contains the legacy API token as well as the new UAA API token.

UAA API Token Workflow

Definitions:

  • Access Token: This is a short-lived token that expires in an hour
  • UAA API Token (Refresh token): This token expires in 100 days. You can rotate this token periodically on your Edit Profile page.

Below are the steps you’d follow to authenticate with the new workflow:

  1. Retrieve a UAA API Token (refresh token) from your Pivnet profile;
  2. Use your UAA API Token to retrieve access tokens using the below POST method;
  3. Use your access token to authenticate against the Pivnet API using the GET method.

Request Headers

HEADER          VALUE
------          -----
Accept:         application/json
Content-Type:   application/json
Authorization:  Bearer <Access Token>

Example cURL request

curl -i -H "Accept: application/json" -H "Content-Type: application/json" -H "Authorization: Bearer <Access Token>" -X GET https://network.pivotal.io/api/v2/authentication

Legacy API Token Workflow

Below are the steps you’d follow to authenticate with the new workflow:

  1. Retrieve a Legacy Token from your Pivnet profile;
  2. Use your legacy token to authenticate against the Pivnet API using the GET method.

Request Headers, Legacy Tokens

HEADER          VALUE
------          -----
Accept:         application/json
Content-Type:   application/json
Authorization:  Token <Legacy API Token>

Example cURL request

curl -i -H "Accept: application/json" -H "Content-Type: application/json" -H "Authorization: Token <Legacy API Token>" -X GET https://network.pivotal.io/api/v2/authentication

POST /api/v2/authentication/access_tokens

Note: This method would work only for the new UAA API Token.

  • Exchanges a UAA refresh token for a temporary UAA access token.
    • returns 200 if successful
    • returns 401 if UAA rejects the refresh token
    • returns 500 if UAA is unavailable
  • Access tokens expire in 1 hour

Example

Request


POST /api/v2/authentication/access_tokens HTTP/1.1
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Length: 26
Content-Type: application/x-www-form-urlencoded
Host: www.example.com


{"refresh_token":"abc123"}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 25
Content-Type: application/json; charset=utf-8
ETag: W/"dcd9e9446ed27172c3eff227246daeef"
Vary: Accept-Encoding


{
  "access_token": "xyz890"
}

GET /api/v2/authentication

Tests that your authorization token is valid (UAA API Token Workflow)

  • returns 200 if successful
  • returns 401 if user could not be authenticated

Note: This example explains the UAA API Token Workflow. If you’re looking to use the legacy token workflow, please replace “Bearer” with “Token” in the Authorization parameter of the Request Header.

Example

Request


GET /api/v2/authentication HTTP/1.1
Accept: application/json
Authorization: Bearer access-token
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: no-cache
Content-Length: 0
Content-Type: application/json
Vary: Accept-Encoding

GET /api/v2/products/:product_slug/releases/:release_id/product_files/:id/download

  • Creates a download link for a release's product file. The user can utilize this link to download the file.
    • redirects to a unique file download URL
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to download files from this release
    • returns 404 if the product or release cannot be found
    • returns 451 if user has not accepted the current EULA for this release
  • Authentication required
  • POST supported for backwards compatibility

Example wget request

wget -O "<filename>" --header="Authorization: Token <API Token>" https://network.pivotal.io/api/v2/products/<product-id>/releases/<release-id>/product_files/<product-file-id>/download

Example

Request


GET /api/v2/products/product-2/releases/1/product_files/1/download HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-1"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 302
Cache-Control: no-cache
Content-Length: 128
Content-Type: text/html; charset=utf-8
Location: http://localhost/cloud_front_stub/product-2/product-file-1.txt
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


<html><body>You are being <a href="http://localhost/cloud_front_stub/product-2/product-file-1.txt">redirected</a>.</body></html>

GET /api/v2/eulas

  • Returns list of available End User License Agreements (EULAs).
    • returns 200 if successful
  • No authentication required.

Example

Request


GET /api/v2/eulas HTTP/1.1
Accept: application/json
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=300, public
Content-Length: 277
Content-Type: application/json; charset=utf-8
Date: Wed, 13 Jun 2018 19:52:06 GMT
ETag: W/"7be3ce3eb0a964e013af1b0505799004"
Vary: Accept-Encoding


{
  "eulas": [
    {
      "id": 2,
      "slug": "pivotal_software_eula",
      "content": "This is the context of the legal document.",
      "name": "Pivotal Software EULA",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/eulas/2"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/eulas"
    }
  }
}

GET /api/v2/eulas/:slug

  • Returns the latest version of the requested End User License Agreement (EULA).
    • returns 200 if the EULA is found
    • returns 404 if the EULA cannot be found
  • No authentication required.

Example

Request


GET /api/v2/eulas/pivotal_software_eula HTTP/1.1
Accept: application/json
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=300, public
Content-Length: 196
Content-Type: application/json; charset=utf-8
Date: Wed, 13 Jun 2018 19:52:06 GMT
ETag: W/"d271406ee3704212bc18928db7fa29e2"
Vary: Accept-Encoding


{
  "id": 3,
  "slug": "pivotal_software_eula",
  "content": "This is the context of the legal document.",
  "name": "Pivotal Software EULA",
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/eulas/3"
    }
  }
}

GET /api/v2/eulas/:id

  • Get a single End User License Agreement (EULA).
    • returns 200 if the EULA is found
    • returns 404 if the EULA cannot not be found
  • No authentication required.

Example

Request


GET /api/v2/eulas/4 HTTP/1.1
Accept: application/json
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=300, public
Content-Length: 196
Content-Type: application/json; charset=utf-8
Date: Wed, 13 Jun 2018 19:52:06 GMT
ETag: W/"d1d1bf3fa04c2e1c1afad3befc7f1955"
Vary: Accept-Encoding


{
  "id": 4,
  "slug": "pivotal_software_eula",
  "content": "This is the context of the legal document.",
  "name": "Pivotal Software EULA",
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/eulas/4"
    }
  }
}

GET /api/v2/users/countries_states

  • List of non-excluded countries and their states

Example

Request


GET /api/v2/users/countries_states HTTP/1.1
Accept: application/json
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 1899
Content-Type: application/json; charset=utf-8
ETag: W/"447b5203c17a3d6631a843a8389135d5"
Vary: Accept-Encoding


[
  {
    "country": "Belize",
    "country_code": "BZ",
    "states": [
      {
        "state": "Belize",
        "state_code": "BZ"
      },
      {
        "state": "Cayo",
        "state_code": "CY"
      },
      {
        "state": "Corozal",
        "state_code": "CZL"
      },
      {
        "state": "Orange Walk",
        "state_code": "OW"
      },
      {
        "state": "Stann Creek",
        "state_code": "SC"
      },
      {
        "state": "Toledo",
        "state_code": "TOL"
      }
    ]
  },
  {
    "country": "Somalia",
    "country_code": "SO",
    "states": [
      {
        "state": "Awdal",
        "state_code": "AW"
      },
      {
        "state": "Bakool",
        "state_code": "BK"
      },
      {
        "state": "Banaadir",
        "state_code": "BN"
      },
      {
        "state": "Bari",
        "state_code": "BR"
      },
      {
        "state": "Bay",
        "state_code": "BY"
      },
      {
        "state": "Galguduud",
        "state_code": "GA"
      },
      {
        "state": "Gedo",
        "state_code": "GE"
      },
      {
        "state": "Hiirsan",
        "state_code": "HI"
      },
      {
        "state": "Jubbada Dhexe",
        "state_code": "JD"
      },
      {
        "state": "Jubbada Hoose",
        "state_code": "JH"
      },
      {
        "state": "Mudug",
        "state_code": "MU"
      },
      {
        "state": "Nugaal",
        "state_code": "NU"
      },
      {
        "state": "Saneag",
        "state_code": "SA"
      },
      {
        "state": "Shabeellaha Dhexe",
        "state_code": "SD"
      },
      {
        "state": "Shabeellaha Hoose",
        "state_code": "SH"
      },
      {
        "state": "Sool",
        "state_code": "SO"
      },
      {
        "state": "Togdheer",
        "state_code": "TO"
      },
      {
        "state": "Woqooyi Galbeed",
        "state_code": "WO"
      }
    ]
  },
  {
    "country": "Italy",
    "country_code": "IT",
    "states": [
      {
        "state": "Piemonte",
        "state_code": "21"
      },
      {
        "state": "Valle d'Aosta",
        "state_code": "23"
      },
      {
        "state": "Lombardia",
        "state_code": "25"
      },
      {
        "state": "Trentino-Alto Adige",
        "state_code": "32"
      },
      {
        "state": "Veneto",
        "state_code": "34"
      },
      {
        "state": "Friuli-Venezia Giulia",
        "state_code": "36"
      },
      {
        "state": "Liguria",
        "state_code": "42"
      },
      {
        "state": "Emilia-Romagna",
        "state_code": "45"
      },
      {
        "state": "Toscana",
        "state_code": "52"
      },
      {
        "state": "Umbria",
        "state_code": "55"
      },
      {
        "state": "Marche",
        "state_code": "57"
      },
      {
        "state": "Lazio",
        "state_code": "62"
      },
      {
        "state": "Abruzzo",
        "state_code": "65"
      },
      {
        "state": "Molise",
        "state_code": "67"
      },
      {
        "state": "Campania",
        "state_code": "72"
      },
      {
        "state": "Puglia",
        "state_code": "75"
      },
      {
        "state": "Basilicata",
        "state_code": "77"
      },
      {
        "state": "Calabria",
        "state_code": "78"
      },
      {
        "state": "Sicilia",
        "state_code": "82"
      },
      {
        "state": "Sardegna",
        "state_code": "88"
      }
    ]
  }
]

GET /api/v2/user_groups

  • Lists all user groups
    • returns 401 if you do not have a valid API token
    • returns 403 if you do not have access to user groups
  • Authentication required

Example

Request


GET /api/v2/user_groups HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-2"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 262
Content-Type: application/json; charset=utf-8
ETag: W/"2cad38fd4ea1bb5d7d8166df1dd25b6a"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "user_groups": [
    {
      "id": 2,
      "name": "Fancy Users",
      "description": "Limit access to fancy people only"
    },
    {
      "id": 1,
      "name": "Product X Users",
      "description": "users for the next version of Product X"
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/user_groups"
    }
  }
}

GET /api/v2/user_groups/:id

  • Returns a specific user group
    • returns 200 if the user group is found
    • returns 401 if you do not have a valid API token
    • returns 404 if the user group cannot be found
  • Authentication required

Example

Request


GET /api/v2/user_groups/3 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-5"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 368
Content-Type: application/json; charset=utf-8
ETag: W/"ed2b5ac7957184f959ed95449bace3b1"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "id": 3,
  "name": "VIP Users",
  "description": "Important users with early access to next version of Product X",
  "members": [
    "Joe Schmoe <alpha@example.net>",
    "Joe Schmoe <bravo@example.net>",
    "Joe Schmoe <charlie@example.net>",
    "Joe Schmoe <user@example.net>"
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/user_groups/3"
    }
  }
}

POST /api/v2/user_groups

  • Create a new user group with yourself as an admin member
    • returns 201 if the user group is created
    • the Location header will point to the newly created user group
    • returns 400 if there is no user_group key in the request payload
    • returns 401 if you do not have a valid API token
    • returns 403 if user does not have access to create user groups
    • returns 422 if the user group cannot be created due to invalid request data
  • Authentication required
  • NOTE: Users that do not already have an account on Pivotal Network will not be added to the user group

Example

Request


POST /api/v2/user_groups HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-9"
Content-Length: 164
Content-Type: application/json
Host: network.pivotal.io


{
  "user_group": {
    "name": "Brand New User Group",
    "description": "These users have early access to Products X and Y",
    "members": [
      "alpha@example.net",
      "bravo@example.net"
    ]
  }
}

Response


HTTP/1.1 201
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 321
Content-Type: application/json; charset=utf-8
ETag: W/"07170e547e86ce9fd2e5a8ba403d2411"
Location: https://network.pivotal.io/api/v2/user_groups/4
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "id": 4,
  "name": "Brand New User Group",
  "description": "These users have early access to Products X and Y",
  "members": [
    "Joe Schmoe <alpha@example.net>",
    "Joe Schmoe <bravo@example.net>",
    "Joe Schmoe <user@example.net>"
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/user_groups/4"
    }
  }
}

PATCH /api/v2/user_groups/:user_group_id

  • Update an existing user group that you manage. Only the keys you provide will be modified.
    • returns 200 if the user group is updated
    • returns 400 if there is no user_group key in the request payload
    • returns 401 if you do not have a valid API token
    • returns 403 if you do not have access to update this user group
    • returns 404 if the user group cannot be found
    • returns 422 if the user group cannot be updated due to invalid request data
  • Authentication required
  • The members key cannot be updated by this method. Please use /api/v2/user_groups/:user_group_id/add_member or /api/v2/user_groups/:user_group_id/remove_member.

Example

Request


PATCH /api/v2/user_groups/5 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-12"
Content-Length: 58
Content-Type: application/json
Host: network.pivotal.io


{
  "user_group": {
    "name": "name",
    "description": "description"
  }
}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 196
Content-Type: application/json; charset=utf-8
ETag: W/"1c078dec7afe15759ea7ca96da7511b5"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "user_group": {
    "id": 5,
    "name": "name",
    "description": "description",
    "members": [
      "Joe Schmoe <user@example.net>"
    ],
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/user_groups/5"
      }
    }
  }
}

PATCH /api/v2/user_groups/:user_group_id/add_member

  • Add a new member to an existing user group that you manage
    • Required fields: email
    • Optional fields: admin. Set to true if you would like this new member to also manage the user group.
    • returns 200 if the member has been added to the user group (includes when the user was already a member)
    • returns 400 if there is no member or email key in the request payload
    • returns 401 if you do not have a valid API token
    • returns 403 if you do not have access to modify this user group
    • returns 404 if the user group cannot be found or if there is no Pivotal Network account for the requested email address
  • Authentication required
  • NOTE: Users that do not already have an account on Pivotal Network will not be added to the user group

Example

Request


PATCH /api/v2/user_groups/6/add_member HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-13"
Content-Length: 59
Content-Type: application/json
Host: network.pivotal.io


{
  "member": {
    "email": "member_user@example.com",
    "admin": true
  }
}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 263
Content-Type: application/json; charset=utf-8
ETag: W/"48834a2e23274bba7ec22ce1c610dbdc"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "user_group": {
    "id": 6,
    "name": "Group Name #2",
    "description": "Group Description #2",
    "members": [
      "Joe Schmoe <member_user@example.com>",
      "Joe Schmoe <user@example.net>"
    ],
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/user_groups/6"
      }
    }
  }
}

PATCH /api/v2/user_groups/:user_group_id/remove_member

  • Remove a member from an existing user group that you manage
    • returns 200 if the member has been removed from the user group
    • returns 400 if there is no member or email key in the request payload
    • returns 401 if you do not have a valid API token
    • returns 403 if you do not have access to modify this user group
    • returns 404 if the user group cannot be found or if there is no Pivotal Network account for the requested email address
  • Authentication required

Example

Request


PATCH /api/v2/user_groups/7/remove_member HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-15"
Content-Length: 46
Content-Type: application/json
Host: network.pivotal.io


{
  "member": {
    "email": "update_user@example.com"
  }
}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 214
Content-Type: application/json; charset=utf-8
ETag: W/"14957d95dbf1838e9d801186d982b8f3"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "user_group": {
    "id": 7,
    "name": "Group Name #3",
    "description": "Group Description #3",
    "members": [
      "Joe Schmoe <user@example.net>"
    ],
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/user_groups/7"
      }
    }
  }
}

DELETE /api/v2/user_groups/:user_group_id

  • Delete a user group that you manage
    • returns 204 if the user group has been deleted
    • returns 401 if you do not have a valid API token
    • returns 403 if you do not have access to delete this user group
    • returns 404 if the user group cannot be found
  • Authentication required

Example

Request


DELETE /api/v2/user_groups/8 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-17"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

GET /api/v2/products

  • Returns a list of products
    • returns 200 if successful
    • returns 401 if user could not be authenticated
  • Authentication optional, but required to view products not publicly available

Example

Request


GET /api/v2/products HTTP/1.1
Accept: application/json
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 87
Content-Type: application/json; charset=utf-8
ETag: W/"fbcfb6bd3789f1ffab8a5d0d52984540"
Vary: Accept-Encoding


{
  "products": [

  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products"
    }
  }
}

GET /api/v2/products/:product_slug

  • Returns a specific product
    • returns 200 if product is found
    • returns 401 if user could not be authenticated
    • returns 404 if product cannot be found or user is not permitted to view
    • returns 410 if product no longer exists but user was permitted to view
  • Authentication optional, but required to view products not publicly available

Example

Request


GET /api/v2/products/my-product-slug HTTP/1.1
Accept: application/json
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 831
Content-Type: application/json; charset=utf-8
ETag: W/"8715ef57e25d8f79d6e24afcbfedb950"
Vary: Accept-Encoding


{
  "id": 6,
  "slug": "my-product-slug",
  "name": "Product 6",
  "logo_url": "http://localhost/cloud_front_stub/assets/images/p-logo.png",
  "category": "Data",
  "description": "Description",
  "feature_list": [
    "Features.",
    "More features.",
    "Zero bugs."
  ],
  "docs_url": "https://docs.example.com",
  "support_email": null,
  "license_url": null,
  "partner_sales_email": null,
  "lifecycle_state": "Beta",
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/my-product-slug"
    },
    "releases": {
      "href": "https://network.pivotal.io/api/v2/products/my-product-slug/releases"
    },
    "product_files": {
      "href": "https://network.pivotal.io/api/v2/products/my-product-slug/product_files"
    },
    "file_groups": {
      "href": "https://network.pivotal.io/api/v2/products/my-product-slug/file_groups"
    }
  },
  "compatibility_url": "http://docs.pivotal.io/compatibility-matrix.pdf",
  "platform_compatibility": [

  ]
}

PATCH /api/v2/products/:product_slug/release_sort_order

  • Change the release display order for the specified product
  • The ids array must contain exactly the release ids associated with this product
    • returns 204 if the release sort order is updated
    • returns 400 if there is no releases key in the request payload
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to update the release sort order for this product
    • returns 404 if the product cannot be found
    • returns 422 if the release sort order cannot be updated due to invalid data
  • Authentication required

Example

Request


PATCH /api/v2/products/pivotal-cf/release_sort_order HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-18"
Content-Length: 28
Content-Type: application/json
Host: network.pivotal.io


{
  "releases": {
    "ids": [
      5,
      6,
      7
    ]
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

GET /api/v2/products/:product_slug/product_files

  • Lists files associated with the specified product
    • returns 200 if the product is found
    • returns 401 if you do not have a valid API token
    • returns 403 if the user is not permissioned to view product files
    • returns 404 if the product cannot be found
  • Authentication required

Example

Request


GET /api/v2/products/your-product-slug/product_files HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-19"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 711
Content-Type: application/json; charset=utf-8
ETag: W/"8d37fb02b4719413ba674bd4d5d4ea84"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "product_files": [
    {
      "id": 4,
      "aws_object_key": "product-8/pivnet-1.0.0a.bz2",
      "file_version": "1.0.0",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "PivNet (packaged)",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/your-product-slug/product_files/4"
        }
      }
    },
    {
      "id": 3,
      "aws_object_key": "product-8/really_great_software.exe",
      "file_version": "1.0.0",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Really Great Software",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/your-product-slug/product_files/3"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/your-product-slug/product_files"
    }
  }
}

GET /api/v2/products/:product_slug/product_files/:id

  • Show a product file for a product
    • returns 200 if the product file is found
    • returns 401 if the user could not be authenticated
    • returns 403 if the user is not permissioned to view the product file
    • returns 404 if the product or the product file cannot be found
  • Authentication required

Example

Request


GET /api/v2/products/your-product-slug/product_files/5 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-20"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 666
Content-Type: application/json; charset=utf-8
ETag: W/"c35836604214df50f992cc89df080de1"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "product_file": {
    "id": 5,
    "aws_object_key": "product-10/pcf-1.1.0.0.ova",
    "description": "OVA Release of Pivotal CF v1.1.0.0",
    "docs_url": "http://zombo.com",
    "file_transfer_status": "failed_to_transfer",
    "file_type": "Software",
    "file_version": "1.1.0.0",
    "included_files": [
      "pcf-server.exe",
      "pcf-client.exe"
    ],
    "md5": "c705c6e6339ebb3417ed1f118efbe620",
    "sha256": "c705c6e6339ebb3417ed1f118efbe620c705c6e6339ebb3417ed1f118efbe620",
    "name": "Pivotal CF",
    "ready_to_serve": false,
    "released_at": "2015-12-31",
    "size": 1024,
    "system_requirements": [
      "Windows Vista",
      "Microsoft Office 1995"
    ],
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/your-product-slug/product_files/5"
      }
    }
  }
}

POST /api/v2/products/:product_slug/product_files

  • Creates a product file associated with the specified product
    • Required fields: name, aws_object_key, file_type, file_version, sha256
    • Optional fields: description, docs_url, included_files, released_at (defaults to today's date), system_requirements
    • Valid file types: Software, Documentation, Open Source License
    • returns 201 if the product file is successfully created
    • returns 400 if there is a missing required field in the request payload
    • returns 401 if you do not have a valid API token
    • returns 403 if user does not have access to create product files on the product
    • returns 404 if the product cannot be found
    • returns 422 if the product file cannot be created due to invalid product file data
  • Authentication required

Example

Request


POST /api/v2/products/your-product-slug/product_files HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-21"
Content-Length: 433
Content-Type: application/json
Host: network.pivotal.io


{
  "product_file": {
    "aws_object_key": "product-12/pcf-1.1.0.0.ova",
    "description": "OVA Release of Pivotal CF v1.1.0.0",
    "docs_url": "http://zombo.com",
    "file_type": "Software",
    "file_version": "1.1.0.0",
    "included_files": [
      "pcf-server.exe",
      "pcf-client.exe"
    ],
    "sha256": "cb55094ebd6cc8028bffed128372ac4f1099b5978582125fcc76de725d24a873",
    "name": "Pivotal CF",
    "released_at": "2015/12/31",
    "system_requirements": [
      "Windows Vista",
      "Microsoft Office 1995"
    ]
  }
}

Response


HTTP/1.1 201
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 629
Content-Type: application/json; charset=utf-8
ETag: W/"55f632337739c3f872bd1c10f945afe5"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "product_file": {
    "id": 6,
    "aws_object_key": "product-12/pcf-1.1.0.0.ova",
    "description": "OVA Release of Pivotal CF v1.1.0.0",
    "docs_url": "http://zombo.com",
    "file_transfer_status": "in_progress",
    "file_type": "Software",
    "file_version": "1.1.0.0",
    "included_files": [
      "pcf-server.exe",
      "pcf-client.exe"
    ],
    "md5": null,
    "sha256": "cb55094ebd6cc8028bffed128372ac4f1099b5978582125fcc76de725d24a873",
    "name": "Pivotal CF",
    "ready_to_serve": false,
    "released_at": "2015-12-31",
    "size": 1024,
    "system_requirements": [
      "Windows Vista",
      "Microsoft Office 1995"
    ],
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/your-product-slug/product_files/6"
      }
    }
  }
}

PATCH /api/v2/products/:product_slug/product_files/:id

  • Updates an existing product file for the specified product
    • Valid file types: Software, Documentation, Open Source License
    • returns 200 if the product file is updated
    • returns 400 if there is a missing required field in the request payload
    • returns 401 if the user could not be authenticated
    • returns 403 if the user does not have access to update the product
    • returns 404 if the product or the product file cannot be found
    • returns 422 if the product file cannot be due to invalid product file data
  • Authentication required

Example

Request


PATCH /api/v2/products/your-product-slug/product_files/7 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-22"
Content-Length: 68
Content-Type: application/json
Host: network.pivotal.io


{
  "product_file": {
    "description": "new description",
    "name": "Law Blog"
  }
}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 542
Content-Type: application/json; charset=utf-8
ETag: W/"0a3c874a150465e89c42d170cf08d33b"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "product_file": {
    "id": 7,
    "aws_object_key": "product-14/path/to/key",
    "description": "new description",
    "docs_url": null,
    "file_transfer_status": "complete",
    "file_type": "Software",
    "file_version": "1.0.0",
    "included_files": [

    ],
    "md5": "c705c6e6339ebb3417ed1f118efbe620",
    "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
    "name": "Law Blog",
    "ready_to_serve": true,
    "released_at": "2018-06-13",
    "size": 1024,
    "system_requirements": [

    ],
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/your-product-slug/product_files/7"
      }
    }
  }
}

DELETE /api/v2/products/:product_slug/product_files/:id

  • Deletes the specified product file
    • returns 200 if the product file is deleted
    • returns 401 if the user could not be authenticated
    • returns 403 if the user does not have access to delete this product file
    • returns 404 if the product or the product file cannot be found
  • Authentication required

Example

Request


DELETE /api/v2/products/your-product-slug/product_files/8 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-23"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 561
Content-Type: application/json; charset=utf-8
ETag: W/"f8246b5312d844345d770da985d1585a"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "product_file": {
    "id": 8,
    "aws_object_key": "product-16/product-file-4.txt",
    "description": "product description 6",
    "docs_url": null,
    "file_transfer_status": "complete",
    "file_type": "Software",
    "file_version": "1.0.0",
    "included_files": [

    ],
    "md5": "c705c6e6339ebb3417ed1f118efbe620",
    "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
    "name": "Product File 4",
    "ready_to_serve": true,
    "released_at": "2018-06-13",
    "size": 1024,
    "system_requirements": [

    ],
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/your-product-slug/product_files/8"
      }
    }
  }
}

GET /api/v2/products/:product_slug/file_groups

  • List file groups for a product
    • returns 200 if the product's file groups are found
    • returns 401 if the user could not be authenticated
    • returns 403 if the user is not permissioned to view file groups
    • returns 404 if the product is not found
  • Authentication required

Example

Request


GET /api/v2/products/product-11/file_groups HTTP/1.1
Accept: application/json
Authorization: Token token="validtoken"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 538
Content-Type: application/json; charset=utf-8
ETag: W/"f627c5f0ecb9f8a8bf5ee2e0474ce32d"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "file_groups": [
    {
      "id": 1,
      "name": "File Group 1",
      "product_files": [
        {
          "id": 9,
          "aws_object_key": "product-18/product-file-5.txt",
          "file_version": "1.0.0",
          "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
          "name": "Product File 5",
          "_links": {
            "self": {
              "href": "https://network.pivotal.io/api/v2/products/product-11/product_files/9"
            }
          }
        }
      ],
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-11/file_groups/1"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-11/file_groups"
    }
  }
}

GET /api/v2/products/:product_slug/file_groups/:file_group_id

  • Show a file group for a product
    • returns 200 if the file group is found
    • returns 401 if the user could not be authenticated
    • returns 403 if the user is not permissioned to view the file group
    • returns 404 if the product or file group is not found
  • Authentication required

Example

Request


GET /api/v2/products/product-12/file_groups/2 HTTP/1.1
Accept: application/json
Authorization: Token token="validtoken"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 821
Content-Type: application/json; charset=utf-8
ETag: W/"9b3685af9324b5a5c8620e9b07618e99"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "id": 2,
  "name": "File Group 2",
  "product": {
    "id": 19,
    "name": "Product 19",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/product-12"
      },
      "releases": {
        "href": "https://network.pivotal.io/api/v2/products/product-12/releases"
      },
      "product_files": {
        "href": "https://network.pivotal.io/api/v2/products/product-12/product_files"
      },
      "file_groups": {
        "href": "https://network.pivotal.io/api/v2/products/product-12/file_groups"
      }
    }
  },
  "product_files": [
    {
      "id": 10,
      "aws_object_key": "product-19/product-file-6.txt",
      "file_version": "1.0.0",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 6",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-12/product_files/10"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-12/file_groups/2"
    }
  }
}

POST /api/v2/products/:product_slug/file_groups

  • Create a new file group for a product
    • returns 201 if a new file group is successfully created
    • returns 401 if the user could not be authenticated
    • returns 403 if the user is not permissioned to create file groups
    • returns 404 if the product or a product file is not found
    • returns 422 error creating the file group
  • Authentication required
  • The product_files key cannot be updated by this method. Please use /api/v2/products/:product.slug/file_groups/:file_group_id/add_product_file /api/v2/products/:product.slug/file_groups/:file_group_id/remove_product_file

Example

Request


POST /api/v2/products/product-13/file_groups HTTP/1.1
Accept: application/json
Authorization: Token token="validtoken"
Content-Length: 43
Content-Type: application/json
Host: network.pivotal.io


{
  "file_group": {
    "name": "my new file group"
  }
}

Response


HTTP/1.1 201
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 545
Content-Type: application/json; charset=utf-8
ETag: W/"d271154f76bde58268f0f91f66f29c8d"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "id": 3,
  "name": "my new file group",
  "product": {
    "id": 20,
    "name": "Product 20",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/product-13"
      },
      "releases": {
        "href": "https://network.pivotal.io/api/v2/products/product-13/releases"
      },
      "product_files": {
        "href": "https://network.pivotal.io/api/v2/products/product-13/product_files"
      },
      "file_groups": {
        "href": "https://network.pivotal.io/api/v2/products/product-13/file_groups"
      }
    }
  },
  "product_files": [

  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-13/file_groups/3"
    }
  }
}

PATCH /api/v2/products/:product_slug/file_groups/:file_group_id

  • Updates an existing file group for a product
    • returns 200 if the file group is successfully updated
    • returns 401 if the user could not be authenticated
    • returns 403 if the user is not permissioned to update file groups
    • returns 404 if the product or file group is not found
    • returns 422 error updating the file group
  • Authentication required
  • The product_files key cannot be updated by this method. Please use /api/v2/products/:product.slug/file_groups/:file_group_id/add_product_file /api/v2/products/:product.slug/file_groups/:file_group_id/remove_product_file

Example

Request


PATCH /api/v2/products/product-14/file_groups/5 HTTP/1.1
Accept: application/json
Authorization: Token token="validtoken"
Content-Length: 46
Content-Type: application/json
Host: network.pivotal.io


{
  "file_group": {
    "name": "new file group name!"
  }
}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 829
Content-Type: application/json; charset=utf-8
ETag: W/"31ca483d8c99918f34f0204d7ebf54c5"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "id": 5,
  "name": "new file group name!",
  "product": {
    "id": 21,
    "name": "Product 21",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/product-14"
      },
      "releases": {
        "href": "https://network.pivotal.io/api/v2/products/product-14/releases"
      },
      "product_files": {
        "href": "https://network.pivotal.io/api/v2/products/product-14/product_files"
      },
      "file_groups": {
        "href": "https://network.pivotal.io/api/v2/products/product-14/file_groups"
      }
    }
  },
  "product_files": [
    {
      "id": 12,
      "aws_object_key": "product-21/product-file-8.txt",
      "file_version": "1.0.0",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 8",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-14/product_files/12"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-14/file_groups/5"
    }
  }
}

PATCH /api/v2/products/:product_slug/file_groups/:file_group_id/add_product_file

  • Adds a product file to a file group
  • Required fields: product_file
    • returns 204 if the product file is successfully added to the file group
    • returns 400 if there is a missing required field in the request payload
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to modify this file group
    • returns 404 if the product, file group, or product file cannot be found
    • returns 422 error adding the product file
  • Authorization: user api token

Example

Request


PATCH /api/v2/products/product-15/file_groups/6/add_product_file HTTP/1.1
Accept: application/json
Authorization: Token token="validtoken"
Content-Length: 26
Content-Type: application/json
Host: network.pivotal.io


{
  "product_file": {
    "id": 13
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

PATCH /api/v2/products/:product_slug/file_groups/:file_group_id/remove_product_file

  • Removes a product file from the specified file group
  • Required fields: product_file
    • returns 204 if the product file is removed
    • returns 400 if there is a missing required field in the request payload
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to modify this file group
    • returns 404 if the product, file group, or product file cannot be found
  • Authorization: user api token

Example

Request


PATCH /api/v2/products/product-16/file_groups/7/remove_product_file HTTP/1.1
Accept: application/json
Authorization: Token token="validtoken"
Content-Length: 26
Content-Type: application/json
Host: network.pivotal.io


{
  "product_file": {
    "id": 14
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

DELETE /api/v2/products/:product_slug/file_groups/:file_group_id

  • Deletes a file group
    • returns 200 if the file group is deleted
    • returns 401 if the user could not be authenticated
    • returns 403 if the user is not permissioned to delete file groups
    • returns 404 if the product or file group is not found
  • Authentication required

Example

Request


DELETE /api/v2/products/product-17/file_groups/8 HTTP/1.1
Accept: application/json
Authorization: Token token="validtoken"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 823
Content-Type: application/json; charset=utf-8
ETag: W/"c32a2c7cdd02bddfd8bd9c81db389104"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "id": 8,
  "name": "File Group 7",
  "product": {
    "id": 24,
    "name": "Product 24",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/product-17"
      },
      "releases": {
        "href": "https://network.pivotal.io/api/v2/products/product-17/releases"
      },
      "product_files": {
        "href": "https://network.pivotal.io/api/v2/products/product-17/product_files"
      },
      "file_groups": {
        "href": "https://network.pivotal.io/api/v2/products/product-17/file_groups"
      }
    }
  },
  "product_files": [
    {
      "id": 15,
      "aws_object_key": "product-24/product-file-11.txt",
      "file_version": "1.0.0",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 11",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-17/product_files/15"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-17/file_groups/8"
    }
  }
}

GET /api/v2/reports/:report_title/download

  • Redirects to a report of all product-file downloads
    • returns 302 if the report is found
    • returns 401 if you do not have a valid API token
    • returns 403 if the user is not permissioned to view the report
    • returns 404 if the report cannot be found
  • Authentication required

Example

Request


GET /api/v2/reports/your-product-slug/download HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-24"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 302
Cache-Control: no-cache
Content-Length: 132
Content-Type: text/html; charset=utf-8
Location: http://localhost/cloud_front_stub/reports/product-25-downloads.csv
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


<html><body>You are being <a href="http://localhost/cloud_front_stub/reports/product-25-downloads.csv">redirected</a>.</body></html>

GET /api/v2/products/:product_slug/releases

  • Lists releases associated with the specified product
    • returns 200 if the releases are found
    • returns 401 if user could not be authenticated
    • returns 404 if the product cannot be found
  • Authentication optional, but required to view releases not available to public

Example

Request


GET /api/v2/products/product-18/releases HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-25"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 4669
Content-Type: application/json; charset=utf-8
ETag: W/"385e0d6e85182ff0955b1f5d68832b90"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "releases": [
    {
      "id": 24,
      "version": "1.2.1-alpha",
      "release_type": "Minor Release",
      "release_date": "2018-06-13",
      "release_notes_url": "http://example.com/release",
      "availability": "Admins Only",
      "description": "Release description",
      "eula": {
        "id": 21,
        "slug": "pivotal_software_eula",
        "name": "Pivotal Software EULA",
        "_links": {
          "self": {
            "href": "https://network.pivotal.io/api/v2/eulas/21"
          }
        }
      },
      "end_of_support_date": "2015-05-10",
      "end_of_guidance_date": "2015-06-30",
      "end_of_availability_date": "2015-07-04",
      "eccn": "5D002",
      "license_exception": "ENC Unrestricted",
      "updated_at": "2018-06-13T19:52:10.089Z",
      "software_files_updated_at": "2018-06-13T19:52:10.089Z",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/24"
        },
        "eula_acceptance": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/24/eula_acceptance"
        },
        "product_files": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/24/product_files"
        },
        "file_groups": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/24/file_groups"
        },
        "user_groups": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/24/user_groups"
        }
      }
    },
    {
      "id": 23,
      "version": "2.0.1-beta1",
      "release_type": "Major Release",
      "release_date": "2018-06-13",
      "release_notes_url": "http://example.com/release",
      "availability": "Selected User Groups Only",
      "description": "Release description",
      "eula": {
        "id": 21,
        "slug": "pivotal_software_eula",
        "name": "Pivotal Software EULA",
        "_links": {
          "self": {
            "href": "https://network.pivotal.io/api/v2/eulas/21"
          }
        }
      },
      "end_of_support_date": "2015-05-10",
      "end_of_guidance_date": "2015-06-30",
      "end_of_availability_date": "2015-07-04",
      "eccn": "5D002",
      "license_exception": "ENC Unrestricted",
      "updated_at": "2018-06-13T19:52:10.066Z",
      "software_files_updated_at": "2018-06-13T19:52:10.050Z",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/23"
        },
        "eula_acceptance": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/23/eula_acceptance"
        },
        "product_files": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/23/product_files"
        },
        "file_groups": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/23/file_groups"
        },
        "user_groups": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/23/user_groups"
        }
      }
    },
    {
      "id": 22,
      "version": "1.1.1",
      "release_type": "Minor Release",
      "release_date": "2018-06-13",
      "release_notes_url": "http://example.net/release-notes1",
      "availability": "Admins Only",
      "description": "Interesting release facts",
      "eula": {
        "id": 21,
        "slug": "pivotal_software_eula",
        "name": "Pivotal Software EULA",
        "_links": {
          "self": {
            "href": "https://network.pivotal.io/api/v2/eulas/21"
          }
        }
      },
      "end_of_support_date": "2015-05-10",
      "end_of_guidance_date": "2015-06-30",
      "end_of_availability_date": "2015-07-04",
      "eccn": "5D002",
      "license_exception": "ENC Unrestricted",
      "updated_at": "2018-06-13T19:52:09.996Z",
      "software_files_updated_at": "2018-06-13T19:52:09.996Z",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/22"
        },
        "eula_acceptance": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/22/eula_acceptance"
        },
        "product_files": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/22/product_files"
        },
        "file_groups": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/22/file_groups"
        },
        "user_groups": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/22/user_groups"
        }
      }
    },
    {
      "id": 21,
      "version": "1.0.1",
      "release_type": "Major Release",
      "release_date": "2018-06-13",
      "release_notes_url": "http://example.com/release",
      "availability": "Admins Only",
      "description": "Release description",
      "eula": {
        "id": 21,
        "slug": "pivotal_software_eula",
        "name": "Pivotal Software EULA",
        "_links": {
          "self": {
            "href": "https://network.pivotal.io/api/v2/eulas/21"
          }
        }
      },
      "end_of_support_date": "2015-05-10",
      "end_of_guidance_date": "2015-06-30",
      "end_of_availability_date": "2015-07-04",
      "eccn": "5D002",
      "license_exception": "ENC Unrestricted",
      "updated_at": "2018-06-13T19:52:09.976Z",
      "software_files_updated_at": "2018-06-13T19:52:09.976Z",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/21"
        },
        "eula_acceptance": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/21/eula_acceptance"
        },
        "product_files": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/21/product_files"
        },
        "file_groups": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/21/file_groups"
        },
        "user_groups": {
          "href": "https://network.pivotal.io/api/v2/products/product-18/releases/21/user_groups"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-18/releases"
    }
  }
}

GET /api/v2/products/:product_slug/releases/:id

  • Returns a specific release associated with the specified product
    • returns 200 if the release is found
    • returns 401 if user could not be authenticated
    • returns 404 if the product or release cannot be found
  • Authentication optional, but required to view releases not available to public

Example

Request


GET /api/v2/products/product-19/releases/25 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-26"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 2130
Content-Type: application/json; charset=utf-8
ETag: W/"3d83dc9bb2bffd2a9e805222f050f961"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "id": 25,
  "version": "1.1.1",
  "release_type": "Major Release",
  "release_date": "2018-06-13",
  "release_notes_url": "http://example.com/release",
  "availability": "Admins Only",
  "description": "Release description",
  "eula": {
    "id": 22,
    "slug": "pivotal_software_eula",
    "name": "Pivotal Software EULA",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/eulas/22"
      }
    }
  },
  "end_of_support_date": "2015-05-10",
  "end_of_guidance_date": "2015-06-30",
  "end_of_availability_date": "2015-07-04",
  "eccn": "5D002",
  "license_exception": "ENC Unrestricted",
  "product_files": [
    {
      "id": 17,
      "aws_object_key": "product-27/product-file-13.txt",
      "file_version": "1.0.0",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 13",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-19/releases/25/product_files/17"
        },
        "download": {
          "href": "https://network.pivotal.io/api/v2/products/product-19/releases/25/product_files/17/download"
        }
      }
    }
  ],
  "file_groups": [
    {
      "id": 9,
      "name": "File Group 8",
      "product_files": [
        {
          "id": 18,
          "aws_object_key": "product-27/product-file-14.txt",
          "file_version": "1.0.0",
          "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
          "name": "Product File 14",
          "_links": {
            "self": {
              "href": "https://network.pivotal.io/api/v2/products/product-19/releases/25/product_files/18"
            },
            "download": {
              "href": "https://network.pivotal.io/api/v2/products/product-19/releases/25/product_files/18/download"
            }
          }
        }
      ],
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-19/file_groups/9"
        }
      }
    }
  ],
  "updated_at": "2018-06-13T19:52:10.388Z",
  "software_files_updated_at": "2018-06-13T19:52:10.388Z",
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-19/releases/25"
    },
    "eula_acceptance": {
      "href": "https://network.pivotal.io/api/v2/products/product-19/releases/25/eula_acceptance"
    },
    "product_files": {
      "href": "https://network.pivotal.io/api/v2/products/product-19/releases/25/product_files"
    },
    "file_groups": {
      "href": "https://network.pivotal.io/api/v2/products/product-19/releases/25/file_groups"
    },
    "user_groups": {
      "href": "https://network.pivotal.io/api/v2/products/product-19/releases/25/user_groups"
    }
  }
}

GET /api/v2/products/:product_slug/releases/latest

  • Returns the latest release associated with the specified product
    • returns 200 if the release is found
    • returns 401 if user could not be authenticated
    • returns 404 if the product cannot be found or has no semver-compliant releases
  • Authentication optional, but required to view releases not available to public
  • Major and minor query strings are optional (must provide major when querying with minor)
  • Only releases with semver-compliant versions will be found

Example

Request


GET /api/v2/products/product-20/releases/latest?major=1&minor=1 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-27"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 990
Content-Type: application/json; charset=utf-8
ETag: W/"4a04dbf1892c0619edf78aa66108c787"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "id": 27,
  "version": "1.1.2",
  "release_type": "Major Release",
  "release_date": "2018-06-13",
  "release_notes_url": "https://releasenote.url",
  "availability": "Admins Only",
  "description": "description",
  "eula": {
    "id": 23,
    "slug": "pivotal_software_eula",
    "name": "Pivotal Software EULA",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/eulas/23"
      }
    }
  },
  "product_files": [

  ],
  "file_groups": [

  ],
  "updated_at": "2018-06-13T19:52:10.530Z",
  "software_files_updated_at": "2018-06-13T19:52:10.530Z",
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-20/releases/27"
    },
    "eula_acceptance": {
      "href": "https://network.pivotal.io/api/v2/products/product-20/releases/27/eula_acceptance"
    },
    "product_files": {
      "href": "https://network.pivotal.io/api/v2/products/product-20/releases/27/product_files"
    },
    "file_groups": {
      "href": "https://network.pivotal.io/api/v2/products/product-20/releases/27/file_groups"
    },
    "user_groups": {
      "href": "https://network.pivotal.io/api/v2/products/product-20/releases/27/user_groups"
    }
  }
}

POST /api/v2/products/:product_slug/releases

  • Create a release associated with the specified product
    • returns 201 if the release is created
    • returns 400 if there is no release key in the request payload
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to create releases on the product
    • returns 404 if the product or EULA cannot be found
    • returns 422 if the release cannot be created due to invalid release data
  • Authentication required
  • Valid release types: Developer Release, Alpha Release, Beta Release, Release Candidate, Major Release, Minor Release, Security Release, Maintenance Release
  • Set copy_metadata=true to copy metadata from the latest All Users release within the minor. If it is not provided, defaults to false.
  • Only Admins Only can be set for the availability
  • The product_files, file_groups, and user_groups keys cannot be updated by this method. After creating the release, please use:
    • /api/v2/products/:product_slug/releases/:release_id/add_product_file
    • /api/v2/products/:product_slug/releases/:release_id/add_file_group
    • /api/v2/products/:product_slug/releases/:release_id/add_user_group
  • Product Admins must certify that all OSS and third-party software used in this release has been cleared by the legal team by entering a value of confirm for the oss_compliant field
  • Contact product_ops@pivotal.io for more information about the Export Control Classification Number (ECCN) and License Exception

Example

Request


POST /api/v2/products/product-21/releases HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-28"
Content-Length: 457
Content-Type: application/json
Host: network.pivotal.io


{
  "copy_metadata": false,
  "release": {
    "version": "1.0.12",
    "release_notes_url": "http://example.com/release",
    "description": "Release description",
    "release_date": "2013-12-11",
    "release_type": "Security Release",
    "availability": "Admins Only",
    "eula": {
      "slug": "pivotal_software_eula"
    },
    "oss_compliant": "confirm",
    "end_of_support_date": "2015-5-10",
    "end_of_guidance_date": "2015-6-30",
    "end_of_availability_date": "2015-7-4",
    "eccn": "5D002",
    "license_exception": "ENC Unrestricted"
  }
}

Response


HTTP/1.1 201
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 1266
Content-Type: application/json; charset=utf-8
ETag: W/"3f206d7b29c0e0ad3551a79bc943b8fe"
Location: https://network.pivotal.io/api/v2/products/product-21/releases/29
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "status": 201,
  "message": "successfully created release '29' for product 'product-21'",
  "release": {
    "id": 29,
    "version": "1.0.12",
    "release_type": "Security Release",
    "release_date": "2013-12-11",
    "release_notes_url": "http://example.com/release",
    "availability": "Admins Only",
    "description": "Release description",
    "eula": {
      "id": 24,
      "slug": "pivotal_software_eula",
      "name": "Pivotal Software EULA",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/eulas/24"
        }
      }
    },
    "end_of_support_date": "2015-05-10",
    "end_of_guidance_date": "2015-06-30",
    "end_of_availability_date": "2015-07-04",
    "eccn": "5D002",
    "license_exception": "ENC Unrestricted",
    "product_files": [

    ],
    "file_groups": [

    ],
    "updated_at": "2018-06-13T19:52:10.770Z",
    "software_files_updated_at": "2018-06-13T19:52:10.770Z",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/product-21/releases/29"
      },
      "eula_acceptance": {
        "href": "https://network.pivotal.io/api/v2/products/product-21/releases/29/eula_acceptance"
      },
      "product_files": {
        "href": "https://network.pivotal.io/api/v2/products/product-21/releases/29/product_files"
      },
      "file_groups": {
        "href": "https://network.pivotal.io/api/v2/products/product-21/releases/29/file_groups"
      },
      "user_groups": {
        "href": "https://network.pivotal.io/api/v2/products/product-21/releases/29/user_groups"
      }
    }
  }
}

PATCH /api/v2/products/:product_slug/releases/:id

  • Update an existing release associated with the specified product
    • returns 200 if the release is updated
    • returns 400 if there is no release key in the request payload
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to update releases on the product
    • returns 404 if the product cannot be found
    • returns 422 if the release cannot be updated due to invalid release data
  • Authentication required
  • Valid release types: Developer Release, Alpha Release, Beta Release, Release Candidate, Major Release, Minor Release, Security Release, Maintenance Release
  • Set copy_metadata=true to copy metadata from the latest All Users release within the minor. If it is not provided, defaults to false.
  • Pivotal Product Admins can set the availability to any of the following: Admins Only, Selected User Groups Only, All Users
  • The product_files, file_groups, and user_groups keys cannot be updated by this method. Please use:
    • /api/v2/products/:product_slug/releases/:release_id/add_product_file
    • /api/v2/products/:product_slug/releases/:release_id/remove_product_file
    • /api/v2/products/:product_slug/releases/:release_id/add_file_group
    • /api/v2/products/:product_slug/releases/:release_id/remove_file_group
    • /api/v2/products/:product_slug/releases/:release_id/add_user_group
    • /api/v2/products/:product_slug/releases/:release_id/remove_user_group
  • Product Admins must certify that all OSS and third-party software used in this release has been cleared by the legal team by entering a value of confirm for the oss_compliant field
  • Releases cannot be made available to All Users or Selected User Groups Only if any associated product files have the in_progress or failed_to_transfer file transfer status values.
  • Releases cannot be made available to All Users or Selected User Groups Only if any associated file groups contain product files that have the in_progress or failed_to_transfer file transfer status values.
  • Contact product_ops@pivotal.io for more information about the Export Control Classification Number (ECCN) and License Exception

Example

Request


PATCH /api/v2/products/product-22/releases/30 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-29"
Content-Length: 276
Content-Type: application/json
Host: network.pivotal.io


{
  "release": {
    "version": "9.9.9",
    "availability": "All Users",
    "release_type": "Major Release",
    "end_of_support_date": "2015-5-10",
    "end_of_guidance_date": "2015-6-30",
    "end_of_availability_date": "2015-7-4",
    "oss_compliant": "confirm",
    "eccn": "5D002",
    "license_exception": "ENC Unrestricted"
  }
}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 2215
Content-Type: application/json; charset=utf-8
ETag: W/"fe6efa32485f78afcbb80e9621f79345"
Location: https://network.pivotal.io/api/v2/products/product-22/releases/30
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "status": 200,
  "message": "successfully updated release '30' for product 'product-22'",
  "release": {
    "id": 30,
    "version": "9.9.9",
    "release_type": "Major Release",
    "release_date": "2018-06-13",
    "release_notes_url": "https://releasenote.url",
    "availability": "All Users",
    "description": "description",
    "eula": {
      "id": 26,
      "slug": "pivotal_software_eula",
      "name": "Pivotal Software EULA",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/eulas/26"
        }
      }
    },
    "end_of_support_date": "2015-05-10",
    "end_of_guidance_date": "2015-06-30",
    "end_of_availability_date": "2015-07-04",
    "eccn": "5D002",
    "license_exception": "ENC Unrestricted",
    "product_files": [
      {
        "id": 20,
        "aws_object_key": "product-30/product-file-16.txt",
        "file_version": "1.0.0",
        "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
        "name": "Product File 16",
        "_links": {
          "self": {
            "href": "https://network.pivotal.io/api/v2/products/product-22/releases/30/product_files/20"
          },
          "download": {
            "href": "https://network.pivotal.io/api/v2/products/product-22/releases/30/product_files/20/download"
          }
        }
      }
    ],
    "file_groups": [
      {
        "id": 10,
        "name": "File Group 9",
        "product_files": [
          {
            "id": 20,
            "aws_object_key": "product-30/product-file-16.txt",
            "file_version": "1.0.0",
            "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
            "name": "Product File 16",
            "_links": {
              "self": {
                "href": "https://network.pivotal.io/api/v2/products/product-22/releases/30/product_files/20"
              },
              "download": {
                "href": "https://network.pivotal.io/api/v2/products/product-22/releases/30/product_files/20/download"
              }
            }
          }
        ],
        "_links": {
          "self": {
            "href": "https://network.pivotal.io/api/v2/products/product-22/file_groups/10"
          }
        }
      }
    ],
    "updated_at": "2018-06-13T19:52:10.999Z",
    "software_files_updated_at": "2018-06-13T19:52:10.941Z",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/product-22/releases/30"
      },
      "eula_acceptance": {
        "href": "https://network.pivotal.io/api/v2/products/product-22/releases/30/eula_acceptance"
      },
      "product_files": {
        "href": "https://network.pivotal.io/api/v2/products/product-22/releases/30/product_files"
      },
      "file_groups": {
        "href": "https://network.pivotal.io/api/v2/products/product-22/releases/30/file_groups"
      },
      "user_groups": {
        "href": "https://network.pivotal.io/api/v2/products/product-22/releases/30/user_groups"
      }
    }
  }
}

DELETE /api/v2/products/:product_slug/releases/:id

  • Delete a release from a product.
    • returns 204 if the release has been deleted
    • returns 401 if user could not be authenticated
    • returns 403 if user is not permitted to delete releases from the product
    • returns 404 if the product or release cannot be found
  • Authentication required
  • NOTE: This will not remove files or file groups from the product. This action cannot be undone.

Example

Request


DELETE /api/v2/products/product-23/releases/31 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-30"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

GET /api/v2/releases/release_types

  • Returns the list of Release Types
  • No authentication required

Example

Request


GET /api/v2/releases/release_types HTTP/1.1
Accept: application/json
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 262
Content-Type: application/json; charset=utf-8
ETag: W/"35badab54dfe1637af24c0378315cf16"
Location: https://network.pivotal.io/api/v2/releases/release_types
Vary: Accept-Encoding


{
  "status": 200,
  "release_types": [
    "Developer Release",
    "Alpha Release",
    "Beta Release",
    "Release Candidate",
    "Major Release",
    "Minor Release",
    "Security Release",
    "Maintenance Release"
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/releases/release_types"
    }
  }
}

GET /api/v2/products/:product_slug/releases/:release_id/product_files

  • List product files associated with the specified release
    • returns 200 if the release is found
    • returns 401 if user could not be authenticated
    • returns 404 if the product or release cannot be found
  • Authentication optional, but required to view releases not available to public

Example

Request


GET /api/v2/products/product-24/releases/32/product_files HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-31"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 948
Content-Type: application/json; charset=utf-8
ETag: W/"b05f422534b2e5fe18a5361fa09b4d13"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "product_files": [
    {
      "id": 22,
      "aws_object_key": "product-32/product-file-18.txt",
      "file_version": "1.0.0",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 18",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-24/releases/32/product_files/22"
        },
        "download": {
          "href": "https://network.pivotal.io/api/v2/products/product-24/releases/32/product_files/22/download"
        }
      }
    },
    {
      "id": 21,
      "aws_object_key": "product-32/product-file-17.txt",
      "file_version": "1.0.0",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 17",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-24/releases/32/product_files/21"
        },
        "download": {
          "href": "https://network.pivotal.io/api/v2/products/product-24/releases/32/product_files/21/download"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-24/releases/32/product_files"
    }
  }
}

GET /api/v2/products/:product_slug/releases/:release_id/product_files/:id

  • Show a product file for a product's release
    • returns 200 if the product file is found
    • returns 401 if the user could not be authenticated
    • returns 403 if the user is not permissioned to view the product file
    • returns 404 if the product, release, or the product file cannot be found
  • Authentication required

Example

Request


GET /api/v2/products/product-25/releases/33/product_files/23 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-32"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 685
Content-Type: application/json; charset=utf-8
ETag: W/"655f0ca2b799aa1e9ac9f983b7bd3195"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "product_file": {
    "id": 23,
    "aws_object_key": "product-33/product-file-19.txt",
    "description": "product description 21",
    "docs_url": null,
    "file_transfer_status": "complete",
    "file_type": "Software",
    "file_version": "1.0.0",
    "included_files": [

    ],
    "md5": "c705c6e6339ebb3417ed1f118efbe620",
    "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
    "name": "Product File 19",
    "ready_to_serve": true,
    "released_at": "2018-06-13",
    "size": 1024,
    "system_requirements": [

    ],
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/product-25/releases/33/product_files/23"
      },
      "download": {
        "href": "https://network.pivotal.io/api/v2/products/product-25/releases/33/product_files/23/download"
      }
    }
  }
}

PATCH /api/v2/products/:product_slug/releases/:release_id/add_product_file

  • Associates a product file with the specified release
  • Required fields: product_file
    • returns 204 if the product file is successfully associated
    • returns 400 if there is a missing required field in the request payload
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to modify this release
    • returns 404 if the product, release, or product file cannot be found
    • returns 422 error associating the product file
  • Authorization: user api token

Example

Request


PATCH /api/v2/products/product-26/releases/34/add_product_file HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-33"
Content-Length: 26
Content-Type: application/json
Host: network.pivotal.io


{
  "product_file": {
    "id": 24
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

PATCH /api/v2/products/:product_slug/releases/:release_id/remove_product_file

  • Removes a product file from the specified release
  • Required fields: product_file
    • returns 204 if the product file is removed
    • returns 400 if there is a missing required field in the request payload
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to modify this release
    • returns 404 if the product, release, or product file cannot be found
  • Authorization: user api token

Example

Request


PATCH /api/v2/products/product-27/releases/35/remove_product_file HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-34"
Content-Length: 26
Content-Type: application/json
Host: network.pivotal.io


{
  "product_file": {
    "id": 25
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

GET /api/v2/products/:product_slug/releases/:release_id/file_groups

  • List file groups on a release
    • returns 200 on success
    • returns 401 if the user could not be authenticated
    • returns 404 if the product or release cannot be found or the user is not permitted to view
  • Authentication optional, but required to view releases not available to public

Example

Request


GET /api/v2/products/product-28/releases/36/file_groups HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-35"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 1692
Content-Type: application/json; charset=utf-8
ETag: W/"4d485be28328e25ad7c32b4eefe9ab5f"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "file_groups": [
    {
      "id": 11,
      "name": "Alpha Users",
      "product_files": [
        {
          "id": 26,
          "aws_object_key": "product-36/special-product-alpha.txt",
          "file_version": "1.0.0",
          "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
          "name": "Special Product Alpha",
          "_links": {
            "self": {
              "href": "https://network.pivotal.io/api/v2/products/product-28/releases/36/product_files/26"
            },
            "download": {
              "href": "https://network.pivotal.io/api/v2/products/product-28/releases/36/product_files/26/download"
            }
          }
        }
      ],
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-28/file_groups/11"
        }
      }
    },
    {
      "id": 12,
      "name": "Alpha Users",
      "product_files": [
        {
          "id": 28,
          "aws_object_key": "product-36/special-product-alpha-2.txt",
          "file_version": "1.0.0",
          "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
          "name": "Special Product Alpha 2",
          "_links": {
            "self": {
              "href": "https://network.pivotal.io/api/v2/products/product-28/releases/36/product_files/28"
            },
            "download": {
              "href": "https://network.pivotal.io/api/v2/products/product-28/releases/36/product_files/28/download"
            }
          }
        },
        {
          "id": 27,
          "aws_object_key": "product-36/special-product-alpha-1.txt",
          "file_version": "1.0.0",
          "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
          "name": "Special Product Alpha 1",
          "_links": {
            "self": {
              "href": "https://network.pivotal.io/api/v2/products/product-28/releases/36/product_files/27"
            },
            "download": {
              "href": "https://network.pivotal.io/api/v2/products/product-28/releases/36/product_files/27/download"
            }
          }
        }
      ],
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/product-28/file_groups/12"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-28/releases/36/file_groups"
    }
  }
}

PATCH /api/v2/products/:product_slug/releases/:release_id/add_file_group

  • Associates an existing file group to the specified release
  • Required fields: file_group
    • returns 204 if the file group is successfully associated
    • returns 400 if the request payload is malformed
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to attach file groups to the release
    • returns 404 if the product, release, or file group cannot be found
    • returns 422 if the file group could not be added to the release
  • Authorization: user api token

Example

Request


PATCH /api/v2/products/product-29/releases/37/add_file_group HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-36"
Content-Length: 24
Content-Type: application/json
Host: network.pivotal.io


{
  "file_group": {
    "id": 13
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

PATCH /api/v2/products/:product_slug/releases/:release_id/remove_file_group

  • Removes a file group from the specified release
  • Required fields: file_group
    • returns 204 if the file group is successfully removed from the release
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to modify this release
    • returns 404 if the product, release, or file group cannot be found
  • Authorization: user api token

Example

Request


PATCH /api/v2/products/product-30/releases/38/remove_file_group HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-37"
Content-Length: 24
Content-Type: application/json
Host: network.pivotal.io


{
  "file_group": {
    "id": 14
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

GET /api/v2/products/:product_slug/releases/:release_id/user_groups

  • Get user groups associated with the specified release
    • returns 200 if user groups are returned successfully
    • returns 401 if user could not be authenticated
    • returns 403 if user does not have access to manage the product
    • returns 404 if the product or release cannot be found
  • Authentication required

Example

Request


GET /api/v2/products/product-31/releases/39/user_groups HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-39"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 270
Content-Type: application/json; charset=utf-8
ETag: W/"66c03fa853e7401eb711d254834352b9"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "user_groups": [
    {
      "id": 9,
      "name": "Group Name #5",
      "description": "Group Description #5",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/user_groups/9"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-31/releases/39/user_groups"
    }
  }
}

PATCH /api/v2/products/:product_slug/releases/:release_id/add_user_group

  • Grants the user group access to the release
    • returns 204 if the user group is successfully granted access to the release
    • returns 400 if there is no user_group key in the request payload
    • returns 403 if user does not have access to update the release
    • returns 404 if the release or user group cannot be found
    • returns 422 if the user group is already associated with the release
  • Authentication required
  • The user group will only be able to use this access if the release type is Selected User Groups Only

Example

Request


PATCH /api/v2/products/product-32/releases/40/add_user_group HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-40"
Content-Length: 24
Content-Type: application/json
Host: network.pivotal.io


{
  "user_group": {
    "id": 10
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

PATCH /api/v2/products/:product_slug/releases/:release_id/remove_user_group

  • Revokes the user group's access to the release
    • returns 204 if the user group's access to the release is successfully revoked
    • returns 400 if there is no user_group key in the request payload
    • returns 403 if user does not have access to update the release
    • returns 404 if the release or user group cannot be found
  • Authentication required
  • Removing a user group will only affect that group's visibility of the release if the release type is Selected User Groups Only

Example

Request


PATCH /api/v2/products/product-33/releases/41/remove_user_group HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-41"
Content-Length: 24
Content-Type: application/json
Host: network.pivotal.io


{
  "user_group": {
    "id": 11
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

GET /api/v2/products/:product_slug/releases/:release_id/dependencies

  • Returns all individual dependencies associated with the specified release
    • returns 200 on success
    • returns 401 if the user could not be authenticated
    • returns 404 if the product or release cannot be found
  • Also includes dependencies that match any of the release's dependency specifiers
  • Authentication optional, but required to view releases and dependencies not available to public

Example

Request


GET /api/v2/products/product-35/releases/42/dependencies HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-42"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 534
Content-Type: application/json; charset=utf-8
ETag: W/"fd4fc30a7b10f85cf6ddcd6ab395c41c"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "dependencies": [
    {
      "release": {
        "id": 46,
        "version": "1.3.3-included",
        "product": {
          "id": 42,
          "slug": "product-34",
          "name": "Product 42"
        },
        "_links": {
          "self": {
            "href": "https://network.pivotal.io/api/v2/products/product-34/releases/46"
          }
        }
      }
    },
    {
      "release": {
        "id": 45,
        "version": "1.3.2-included",
        "product": {
          "id": 42,
          "slug": "product-34",
          "name": "Product 42"
        },
        "_links": {
          "self": {
            "href": "https://network.pivotal.io/api/v2/products/product-34/releases/45"
          }
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-35/releases/42/dependencies"
    }
  }
}

POST /api/v2/products/:product_slug/releases/:release_id/dependency_specifiers

  • Creates a release dependency specifier. Dependency specifiers are rules for defining acceptable product versions for a given product dependency.
    • returns 201 on success
    • returns 401 if the user could not be authenticated
    • returns 403 if the user does not have permission to edit product
    • returns 404 if the product or release cannot be found
    • returns 422 if the dependency specifier is invalid
  • All public, semver-compliant releases for the chosen product that match the specifier will be included in the response from the dependencies API endpoint
  • Versions of the product created in the future will be compared against the specifier
  • Supported specifiers:
    • Minor version:
      • MAJOR.MINOR.* for products other than 'Stemcells for PCF'
      • NUMBER.* for the 'Stemcells for PCF' product
      • Matches public, semver releases that have the given major and minor (or first number, if Stemcells)
    • All versions above specific patch:
      • ~>MAJOR.MINOR.PATCH
      • Matches public, semver releases within the given minor that have the given patch number or greater
    • Specific patches:
      • RELEASE VERSION
      • Matches the specific patch version(s) only

Example

Request


POST /api/v2/products/release-product-slug/releases/47/dependency_specifiers HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-43"
Content-Length: 87
Content-Type: application/json
Host: network.pivotal.io


{
  "dependency_specifier": {
    "product_slug": "dependency-product-slug",
    "specifier": "1.2.*"
  }
}

Response


HTTP/1.1 201
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 255
Content-Type: application/json; charset=utf-8
ETag: W/"ce578a37de19b974e9811b9bfcdca04d"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "dependency_specifier": {
    "id": 2,
    "product": {
      "id": 44,
      "slug": "dependency-product-slug",
      "name": "Product 44"
    },
    "specifier": "1.2.*",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/release-product-slug/releases/47/dependency_specifiers/2"
      }
    }
  }
}

GET /api/v2/products/:product_slug/releases/:release_id/dependency_specifiers

  • Returns the release dependency specifiers for a release in the format 1.1.1 1.2.* and ~> 1.2.2
    • returns 200 on success
    • returns 404 if the product or release cannot be found
  • Authentication optional, but required to view releases not available to public

Example

Request


GET /api/v2/products/release-product-slug/releases/48/dependency_specifiers HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-44"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 385
Content-Type: application/json; charset=utf-8
ETag: W/"8f6c181bcf172ead80c7d4ee09b96ecb"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "dependency_specifiers": [
    {
      "id": 3,
      "product": {
        "id": 46,
        "slug": "dependency-product-slug",
        "name": "Product 46"
      },
      "specifier": "1.2.*",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/release-product-slug/releases/48/dependency_specifiers/3"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/release-product-slug/releases/48/dependency_specifiers"
    }
  }
}

GET /api/v2/products/:product_slug/releases/:release_id/dependency_specifiers/:id

  • Returns the release dependency specifier
    • returns 200 on success
    • returns 404 if the dependency specifier cannot be found
  • Authentication optional, but required to view releases not available to public

Example

Request


GET /api/v2/products/release-product-slug/releases/49/dependency_specifiers/4 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-45"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 255
Content-Type: application/json; charset=utf-8
ETag: W/"9c44ceb20111441b64795774fdd9408a"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "dependency_specifier": {
    "id": 4,
    "product": {
      "id": 48,
      "slug": "dependency-product-slug",
      "name": "Product 48"
    },
    "specifier": "1.2.*",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/release-product-slug/releases/49/dependency_specifiers/4"
      }
    }
  }
}

DELETE /api/v2/products/:product_slug/releases/:release_id/dependency_specifiers/:id

  • Deletes a release dependency specifier
    • returns 204 on success
    • returns 401 if the user could not be authenticated
    • returns 403 if the user does not have permission to edit the product
    • returns 404 if the dependency specifier cannot be found

Example

Request


DELETE /api/v2/products/release-product-slug/releases/50/dependency_specifiers/5 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-46"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

GET /api/v2/products/:product_slug/releases/:release_id/upgrade_paths

  • Returns all individual upgrade paths associated with the specified release
    • returns 200 on success
    • returns 401 if the user could not be authenticated
    • returns 404 if the product or release cannot be found
  • Also includes upgrade paths that match any of the release's upgrade path specifiers
  • Authentication optional, but required to view releases not available to public

Example

Request


GET /api/v2/products/product-36/releases/53/upgrade_paths HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-47"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 398
Content-Type: application/json; charset=utf-8
ETag: W/"f661db15d352c61734e4e1795bb8ba69"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "upgrade_paths": [
    {
      "release": {
        "id": 51,
        "version": "1.2.1",
        "_links": {
          "self": {
            "href": "https://network.pivotal.io/api/v2/products/product-36/releases/51"
          }
        }
      }
    },
    {
      "release": {
        "id": 52,
        "version": "1.2.2",
        "_links": {
          "self": {
            "href": "https://network.pivotal.io/api/v2/products/product-36/releases/52"
          }
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/product-36/releases/53/upgrade_paths"
    }
  }
}

POST /api/v2/products/:product_slug/releases/:release_id/upgrade_path_specifiers

  • Creates a release upgrade path specifier. Upgrade path specifiers are rules for defining acceptable versions from which to upgrade to the current release.
    • returns 201 on success
    • returns 401 if the user could not be authenticated
    • returns 403 if the user does not have permission to edit product
    • returns 404 if the product or release cannot be found
    • returns 422 if the dependency specifier is invalid
  • All public, semver-compliant releases within the product that match the specifier will be included in the response from the upgrade_paths API endpoint
  • Versions of the product created in the future will be included if they match the specifier
  • Supported specifiers:
    • Minor version:
      • MAJOR.MINOR.*
      • Matches public, semver releases that have the given major and minor
    • All versions above specific patch:
      • ~>MAJOR.MINOR.PATCH
      • Matches public, semver releases within the given minor that have the given patch number or greater
    • Specific patches:
      • RELEASE VERSION
      • Matches the specific patch version(s) only

Example

Request


POST /api/v2/products/release-product-slug/releases/54/upgrade_path_specifiers HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-48"
Content-Length: 48
Content-Type: application/json
Host: network.pivotal.io


{
  "upgrade_path_specifier": {
    "specifier": "1.2.*"
  }
}

Response


HTTP/1.1 201
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 186
Content-Type: application/json; charset=utf-8
ETag: W/"578d8e04b3167a0588f810d544145e95"
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."


{
  "upgrade_path_specifier": {
    "id": 3,
    "specifier": "1.2.*",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/release-product-slug/releases/54/upgrade_path_specifiers/3"
      }
    }
  }
}

DELETE /api/v2/products/:product_slug/releases/:release_id/upgrade_path_specifiers/:id

  • Deletes a release upgrade path specifier
    • returns 204 on success
    • returns 401 if the user could not be authenticated
    • returns 403 if the user does not have permission to edit the product
    • returns 404 if the upgrade path specifier cannot be found

Example

Request


DELETE /api/v2/products/release-product-slug/releases/55/upgrade_path_specifiers/4 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-49"
Content-Length: 0
Content-Type: application/json
Host: network.pivotal.io

Response


HTTP/1.1 204
Cache-Control: no-cache
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.pivotal.io/docs/api#how-to-authenticate for new UAA API Token mechanism."

GET /api/v2/products/:slug/releases/:release_id/upgrade_path_specifiers/:id

  • Returns the release upgrade path specifier
    • returns 200 on success
    • returns 404 if the upgrade path specifier cannot be found
  • Authentication optional, but required to view releases not available to public

Example

Request


GET /api/v2/products/release-product-slug/releases/56/upgrade_path_specifiers/5 HTTP/1.1
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Length: 0
Host: www.example.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 186
Content-Type: application/json; charset=utf-8
ETag: W/"ebc3b69c0eb0aa86fd39ba1ad9772402"
Vary: Accept-Encoding


{
  "upgrade_path_specifier": {
    "id": 5,
    "specifier": "2.3.*",
    "_links": {
      "self": {
        "href": "https://network.pivotal.io/api/v2/products/release-product-slug/releases/56/upgrade_path_specifiers/5"
      }
    }
  }
}

GET /api/v2/products/:slug/releases/:release_id/upgrade_path_specifiers

  • Returns the upgrade path specifiers for a release in the format 1.1.1 1.2.* and ~> 1.2.2
    • returns 200 on success
  • Authentication optional, but required to view releases not available to public

Example

Request


GET /api/v2/products/release-product-slug/releases/57/upgrade_path_specifiers HTTP/1.1
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Length: 0
Host: www.example.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 318
Content-Type: application/json; charset=utf-8
ETag: W/"84b9300c9461f26c64253d9fcc618896"
Vary: Accept-Encoding


{
  "upgrade_path_specifiers": [
    {
      "id": 6,
      "specifier": "2.3.*",
      "_links": {
        "self": {
          "href": "https://network.pivotal.io/api/v2/products/release-product-slug/releases/57/upgrade_path_specifiers/6"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.pivotal.io/api/v2/products/release-product-slug/releases/57/upgrade_path_specifiers"
    }
  }
}