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 does not expire. However, we recommend manually rotating this token every 100 days. You can do this rotation 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 Tanzu Network 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 Tanzu Network API using the GET method.

Note: Tanzu Network Resource and Tanzu Network CLI both work with refresh tokens directly, not access tokens. Therefore, when using these clients, please take care to only provide refresh tokens.

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.tanzu.vmware.com/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 Tanzu Network profile;
  2. Use your legacy token to authenticate against the Tanzu Network 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.tanzu.vmware.com/api/v2/authentication

POST /api/v2/authentication/access_tokens

Note: This method works only for UAA refresh tokens.

  • Exchanges a UAA refresh token for a temporary UAA access token.
  • Required fields: refresh_token
    • returns 200 if successful
    • returns 400 if there is a missing required field in the request payload
    • returns 401 if UAA rejects the refresh token
    • returns 500 if UAA is unavailable
  • Access tokens expire in 1 hour

Example

Curl


curl -X POST https://network.tanzu.vmware.com/api/v2/authentication/access_tokens -d '{"refresh_token":"abc123"}'

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"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/authentication -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: no-cache
Content-Length: 0
Content-Type: application/json
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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
  • Users behind firewalls can whitelist d13k9s5899twdr.cloudfront.net to complete downloads

Example wget request

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

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-2/releases/1/product_files/1/download -H "Authorization: Bearer access_token" 

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.tanzu.vmware.com

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
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


<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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/eulas -H "Authorization: Bearer access_token" 

Request


GET /api/v2/eulas HTTP/1.1
Accept: application/json
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=300, public
Content-Length: 297
Content-Type: application/json; charset=utf-8
Date: Mon, 11 Mar 2024 04:27:43 GMT
ETag: W/"2eeae16cd5b1bc5a9e4dd7ea358e23f9"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "eulas": [
    {
      "id": 2,
      "slug": "vmware_general_terms",
      "content": "This is the context of the legal document.",
      "name": "VMware EULA",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/eulas/2"
        }
      },
      "archived_at": null
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/eulas/vmware_general_terms -H "Authorization: Bearer access_token" 

Request


GET /api/v2/eulas/vmware_general_terms HTTP/1.1
Accept: application/json
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=300, public
Content-Length: 210
Content-Type: application/json; charset=utf-8
Date: Mon, 11 Mar 2024 04:27:43 GMT
ETag: W/"e0f728437aa343fca05dcacb3ab86a20"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 3,
  "slug": "vmware_general_terms",
  "content": "This is the context of the legal document.",
  "name": "VMware EULA",
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/api/v2/eulas/3"
    }
  },
  "archived_at": null
}

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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/eulas/4 -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=300, public
Content-Length: 210
Content-Type: application/json; charset=utf-8
Date: Mon, 11 Mar 2024 04:27:43 GMT
ETag: W/"19d7326bd929b274ffca099aeec3b705"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 4,
  "slug": "vmware_general_terms",
  "content": "This is the context of the legal document.",
  "name": "VMware EULA",
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/api/v2/eulas/4"
    }
  },
  "archived_at": null
}

GET /api/v2/users/countries_states

  • List of non-excluded countries and their states

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/users/countries_states -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 2248
Content-Type: application/json; charset=utf-8
ETag: W/"d12fe602ae0c1c54db83f2be0c1594d8"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


[
  {
    "country": "Honduras",
    "country_code": "HN",
    "states": [
      {
        "state": "Atlántida",
        "state_code": "AT"
      },
      {
        "state": "Choluteca",
        "state_code": "CH"
      },
      {
        "state": "Colón",
        "state_code": "CL"
      },
      {
        "state": "Comayagua",
        "state_code": "CM"
      },
      {
        "state": "Copán",
        "state_code": "CP"
      },
      {
        "state": "Cortés",
        "state_code": "CR"
      },
      {
        "state": "El Paraíso",
        "state_code": "EP"
      },
      {
        "state": "Francisco Morazán",
        "state_code": "FM"
      },
      {
        "state": "Gracias a Dios",
        "state_code": "GD"
      },
      {
        "state": "Islas de la Bahía",
        "state_code": "IB"
      },
      {
        "state": "Intibucá",
        "state_code": "IN"
      },
      {
        "state": "Lempira",
        "state_code": "LE"
      },
      {
        "state": "La Paz",
        "state_code": "LP"
      },
      {
        "state": "Ocotepeque",
        "state_code": "OC"
      },
      {
        "state": "Olancho",
        "state_code": "OL"
      },
      {
        "state": "Santa Bárbara",
        "state_code": "SB"
      },
      {
        "state": "Valle",
        "state_code": "VA"
      },
      {
        "state": "Yoro",
        "state_code": "YO"
      }
    ]
  },
  {
    "country": "Norfolk Island",
    "country_code": "NF",
    "states": [

    ]
  },
  {
    "country": "Afghanistan",
    "country_code": "AF",
    "states": [
      {
        "state": "Balkh",
        "state_code": "BAL"
      },
      {
        "state": "Bāmyān",
        "state_code": "BAM"
      },
      {
        "state": "Bādghīs",
        "state_code": "BDG"
      },
      {
        "state": "Badakhshān",
        "state_code": "BDS"
      },
      {
        "state": "Baghlān",
        "state_code": "BGL"
      },
      {
        "state": "Dāykundī",
        "state_code": "DAY"
      },
      {
        "state": "Farāh",
        "state_code": "FRA"
      },
      {
        "state": "Fāryāb",
        "state_code": "FYB"
      },
      {
        "state": "Ghaznī",
        "state_code": "GHA"
      },
      {
        "state": "Ghōr",
        "state_code": "GHO"
      },
      {
        "state": "Helmand",
        "state_code": "HEL"
      },
      {
        "state": "Herāt",
        "state_code": "HER"
      },
      {
        "state": "Jowzjān",
        "state_code": "JOW"
      },
      {
        "state": "Kābul",
        "state_code": "KAB"
      },
      {
        "state": "Kandahār",
        "state_code": "KAN"
      },
      {
        "state": "Kāpīsā",
        "state_code": "KAP"
      },
      {
        "state": "Kunduz",
        "state_code": "KDZ"
      },
      {
        "state": "Khōst",
        "state_code": "KHO"
      },
      {
        "state": "Kunar",
        "state_code": "KNR"
      },
      {
        "state": "Laghmān",
        "state_code": "LAG"
      },
      {
        "state": "Lōgar",
        "state_code": "LOG"
      },
      {
        "state": "Nangarhār",
        "state_code": "NAN"
      },
      {
        "state": "Nīmrōz",
        "state_code": "NIM"
      },
      {
        "state": "Nūristān",
        "state_code": "NUR"
      },
      {
        "state": "Panjshayr",
        "state_code": "PAN"
      },
      {
        "state": "Parwān",
        "state_code": "PAR"
      },
      {
        "state": "Paktiyā",
        "state_code": "PIA"
      },
      {
        "state": "Paktīkā",
        "state_code": "PKA"
      },
      {
        "state": "Samangān",
        "state_code": "SAM"
      },
      {
        "state": "Sar-e Pul",
        "state_code": "SAR"
      },
      {
        "state": "Takhār",
        "state_code": "TAK"
      },
      {
        "state": "Uruzgān",
        "state_code": "URU"
      },
      {
        "state": "Wardak",
        "state_code": "WAR"
      },
      {
        "state": "Zābul",
        "state_code": "ZAB"
      }
    ]
  }
]

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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/user_groups -H "Authorization: Bearer access_token" 

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.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 268
Content-Type: application/json; charset=utf-8
ETag: W/"7cf74261209dffc3e1445bb113e921ba"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "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.tanzu.vmware.com/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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/user_groups/3 -H "Authorization: Bearer access_token" 

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.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 427
Content-Type: application/json; charset=utf-8
ETag: W/"32abe7e8588a7a443740c7df15924c49"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "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>"
  ],
  "admins": [
    "Joe Schmoe <user@example.net>"
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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 VMware Tanzu Network will not be added to the user group

Example

Curl


curl -X POST https://network.tanzu.vmware.com/api/v2/user_groups -H "Authorization: Bearer access_token" -d '{"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"]}}'

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.tanzu.vmware.com


{
  "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: 380
Content-Type: application/json; charset=utf-8
ETag: W/"6a4fc2d4834ea4a363b034f796fc7f93"
Location: https://network.tanzu.vmware.com/api/v2/user_groups/4
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "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>"
  ],
  "admins": [
    "Joe Schmoe <user@example.net>"
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/user_groups/5 -H "Authorization: Bearer access_token" -d '{"user_group":{"name":"name","description":"description"}}'

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.tanzu.vmware.com


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

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/"1adc2dab8f5ac4c485b30cb1227542a5"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "user_group": {
    "id": 5,
    "name": "name",
    "description": "description",
    "members": [
      "Joe Schmoe <user@example.net>"
    ],
    "admins": [
      "Joe Schmoe <user@example.net>"
    ],
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/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 VMware Tanzu Network account for the requested email address
  • Authentication required
  • NOTE: Users that do not already have an account on VMware Tanzu Network will not be added to the user group

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/user_groups/6/add_member -H "Authorization: Bearer access_token" -d '{"member":{"email":"member_user@example.com","admin":true}}'

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.tanzu.vmware.com


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 371
Content-Type: application/json; charset=utf-8
ETag: W/"1074854392398f23caedbd3efe3caefb"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "user_group": {
    "id": 6,
    "name": "Group Name #2",
    "description": "Group Description #2",
    "members": [
      "Joe Schmoe <member_user@example.com>",
      "Joe Schmoe <user@example.net>"
    ],
    "admins": [
      "Joe Schmoe <member_user@example.com>",
      "Joe Schmoe <user@example.net>"
    ],
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/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 VMware Tanzu Network account for the requested email address
  • Authentication required

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/user_groups/7/remove_member -H "Authorization: Bearer access_token" -d '{"member":{"email":"update_user@example.com"}}'

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.tanzu.vmware.com


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 273
Content-Type: application/json; charset=utf-8
ETag: W/"b1f6d5e0461ae56397e00e35403d2903"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "user_group": {
    "id": 7,
    "name": "Group Name #3",
    "description": "Group Description #3",
    "members": [
      "Joe Schmoe <user@example.net>"
    ],
    "admins": [
      "Joe Schmoe <user@example.net>"
    ],
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/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

Curl


curl -X DELETE https://network.tanzu.vmware.com/api/v2/user_groups/8 -H "Authorization: Bearer access_token" 

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.tanzu.vmware.com

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products HTTP/1.1
Accept: application/json
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 1212
Content-Type: application/json; charset=utf-8
ETag: W/"40873e292d78178e8ee4255cebbdefed"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "products": [
    {
      "id": 5,
      "slug": "product-5",
      "old_slugs": [

      ],
      "name": "Product 5",
      "logo_url": "http://localhost/cloud_front_stub/assets/images/p-logo.png",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-5"
        },
        "releases": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-5/releases"
        },
        "product_files": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-5/product_files"
        },
        "file_groups": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-5/file_groups"
        }
      },
      "platform_compatibility": [

      ],
      "installs_on_pks": false
    },
    {
      "id": 4,
      "slug": "product-4",
      "old_slugs": [

      ],
      "name": "Product 4",
      "logo_url": "http://localhost/cloud_front_stub/assets/images/p-logo.png",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-4"
        },
        "releases": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-4/releases"
        },
        "product_files": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-4/product_files"
        },
        "file_groups": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-4/file_groups"
        }
      },
      "platform_compatibility": [

      ],
      "installs_on_pks": false
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/my-product-slug -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 851
Content-Type: application/json; charset=utf-8
ETag: W/"502ab68120dc20199a9e4c78d1f21c4f"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 6,
  "slug": "my-product-slug",
  "old_slugs": [

  ],
  "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.tanzu.vmware.com/api/v2/products/my-product-slug"
    },
    "releases": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/my-product-slug/releases"
    },
    "product_files": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/my-product-slug/product_files"
    },
    "file_groups": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/my-product-slug/file_groups"
    }
  },
  "platform_compatibility": [

  ],
  "installs_on_pks": false,
  "is_partner_product": false
}

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

  • Change the release display order for the specified product
  • The string param sort_type must be provided, and must contain one of ["custom", "release date", "semver"].
  • The ids array should only be provided when sort_type is custom, and 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 parameters
  • Authentication required

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/container-services-manager/release_sort_order -H "Authorization: Bearer access_token" -d '{"releases":{"ids":[5,6,7]},"sort_type":"custom"}'

Request


PATCH /api/v2/products/container-services-manager/release_sort_order HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-18"
Content-Length: 49
Content-Type: application/json
Host: network.tanzu.vmware.com


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

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

GET /api/v2/products/:product_slug/slug_alias

  • Returns list of the slugs associated to a 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
  • Authentication required

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/my-product-slug/slug_alias -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/my-product-slug/slug_alias HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-19"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 86
Content-Type: application/json; charset=utf-8
ETag: W/"8d6501b421c4ff672c993e62984c8fea"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "slugs": [
    "my-product-slug",
    "my-product-other-slug"
  ],
  "current_slug": "my-product-slug"
}

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
  • This endpoint is only available for admins. Please use Release Product Files endpoint instead

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/your-product-slug/product_files -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 861
Content-Type: application/json; charset=utf-8
ETag: W/"45682e5041bd8bb02f6a5c887952014e"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "product_files": [
    {
      "id": 7,
      "aws_object_key": "product-9/tanzunet-1.0.0a.bz2",
      "file_type": "Software",
      "file_version": "1.0.0",
      "md5": "c705c6e6339ebb3417ed1f118efbe620",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "TanzuNet (packaged)",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/your-product-slug/product_files/7"
        }
      }
    },
    {
      "id": 6,
      "aws_object_key": "product-9/really_great_software.exe",
      "file_type": "Software",
      "file_version": "1.0.0",
      "md5": "c705c6e6339ebb3417ed1f118efbe620",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Really Great Software",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/your-product-slug/product_files/6"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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
  • This endpoint is only available for admins. Please use Release Product Files endpoint instead

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/your-product-slug/product_files/8 -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/your-product-slug/product_files/8 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-21"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 672
Content-Type: application/json; charset=utf-8
ETag: W/"df1392b755248159f95f73e0d38731e2"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "product_file": {
    "id": 8,
    "aws_object_key": "product-11/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": null,
    "system_requirements": [
      "Windows Vista",
      "Microsoft Office 1995"
    ],
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/your-product-slug/product_files/8"
      }
    }
  }
}

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

Example

Curl


curl -X POST https://network.tanzu.vmware.com/api/v2/products/your-product-slug/product_files -H "Authorization: Bearer access_token" -d '{"product_file":{"aws_object_key":"product-13/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"]}}'

Request


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


{
  "product_file": {
    "aws_object_key": "product-13/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: 635
Content-Type: application/json; charset=utf-8
ETag: W/"ffb12bc69f74817bdddf6b9ae08fc053"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "product_file": {
    "id": 9,
    "aws_object_key": "product-13/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.tanzu.vmware.com/api/v2/products/your-product-slug/product_files/9"
      }
    }
  }
}

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 409 if the product file that is associated with a release in All Users availability
    • 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
  • This endpoint is only available for admins. Please use Release Product Files endpoint instead

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/your-product-slug/product_files/10 -H "Authorization: Bearer access_token" -d '{"product_file":{"description":"new description","name":"Law Blog"}}'

Request


PATCH /api/v2/products/your-product-slug/product_files/10 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-23"
Content-Length: 68
Content-Type: application/json
Host: network.tanzu.vmware.com


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 550
Content-Type: application/json; charset=utf-8
ETag: W/"6ec9efd3f5f79d45969292a580974c86"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "product_file": {
    "id": 10,
    "aws_object_key": "product-15/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": "2024-03-11",
    "size": null,
    "system_requirements": [

    ],
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/your-product-slug/product_files/10"
      }
    }
  }
}

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
    • returns 409 if the product file is associated with a release in All Users availability
  • Authentication required
  • This endpoint is only available for admins. Please use Release Product Files endpoint instead

Example

Curl


curl -X DELETE https://network.tanzu.vmware.com/api/v2/products/your-product-slug/product_files/11 -H "Authorization: Bearer access_token" 

Request


DELETE /api/v2/products/your-product-slug/product_files/11 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-24"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 569
Content-Type: application/json; charset=utf-8
ETag: W/"7602a42593e6572291056e44b2cc12eb"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "product_file": {
    "id": 11,
    "aws_object_key": "product-17/product-file-7.txt",
    "description": "product description 9",
    "docs_url": null,
    "file_transfer_status": "complete",
    "file_type": "Software",
    "file_version": "1.0.0",
    "included_files": [

    ],
    "md5": "c705c6e6339ebb3417ed1f118efbe620",
    "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
    "name": "Product File 7",
    "ready_to_serve": true,
    "released_at": "2024-03-11",
    "size": null,
    "system_requirements": [

    ],
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/your-product-slug/product_files/11"
      }
    }
  }
}

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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-11/file_groups -H "Authorization: Bearer access_token" 

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.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 622
Content-Type: application/json; charset=utf-8
ETag: W/"8422c49dad5856ca79cf99ec6091222d"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "file_groups": [
    {
      "id": 1,
      "name": "File Group 1",
      "product_files": [
        {
          "id": 12,
          "aws_object_key": "product-19/product-file-8.txt",
          "file_type": "Software",
          "file_version": "1.0.0",
          "md5": "c705c6e6339ebb3417ed1f118efbe620",
          "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
          "name": "Product File 8",
          "_links": {
            "self": {
              "href": "https://network.tanzu.vmware.com/api/v2/products/product-11/product_files/12"
            }
          }
        }
      ],
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-11/file_groups/1"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-12/file_groups/2 -H "Authorization: Bearer access_token" 

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.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 921
Content-Type: application/json; charset=utf-8
ETag: W/"adea7fa6fbdea6d01159f5d4a322f37e"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 2,
  "name": "File Group 2",
  "product": {
    "id": 20,
    "name": "Product 20",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-12"
      },
      "releases": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-12/releases"
      },
      "product_files": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-12/product_files"
      },
      "file_groups": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-12/file_groups"
      }
    }
  },
  "product_files": [
    {
      "id": 13,
      "aws_object_key": "product-20/product-file-9.txt",
      "file_type": "Software",
      "file_version": "1.0.0",
      "md5": "c705c6e6339ebb3417ed1f118efbe620",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 9",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-12/product_files/13"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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

Curl


curl -X POST https://network.tanzu.vmware.com/api/v2/products/product-13/file_groups -H "Authorization: Bearer access_token" -d '{"file_group":{"name":"my new file group"}}'

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.tanzu.vmware.com


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

Response


HTTP/1.1 201
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 575
Content-Type: application/json; charset=utf-8
ETag: W/"003545fe8239e60bb2f0a893e74f68cb"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


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

  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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 user is not authorized to update this file group
    • returns 404 if the product or file group is not found
    • returns 409 if the file group is associated with a release in All Users availability
    • 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

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-14/file_groups/5 -H "Authorization: Bearer access_token" -d '{"file_group":{"name":"new file group name!"}}'

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.tanzu.vmware.com


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 931
Content-Type: application/json; charset=utf-8
ETag: W/"2d12d3c3dd9a02151c9c60b57a1c3c44"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 5,
  "name": "new file group name!",
  "product": {
    "id": 22,
    "name": "Product 22",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-14"
      },
      "releases": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-14/releases"
      },
      "product_files": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-14/product_files"
      },
      "file_groups": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-14/file_groups"
      }
    }
  },
  "product_files": [
    {
      "id": 15,
      "aws_object_key": "product-22/product-file-11.txt",
      "file_type": "Software",
      "file_version": "1.0.0",
      "md5": "c705c6e6339ebb3417ed1f118efbe620",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 11",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-14/product_files/15"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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 is not authorized to modify this file group
    • returns 404 if the product, file group, or product file cannot be found
    • returns 409 if the file group is associated with a release in All Users availability
    • returns 422 error adding the product file
  • Authorization: user api token

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-15/file_groups/6/add_product_file -H "Authorization: Bearer access_token" -d '{"product_file":{"id":16}}'

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.tanzu.vmware.com


{
  "product_file": {
    "id": 16
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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 is not authorized to modify this file group
    • returns 404 if the product, file group, or product file cannot be found
    • returns 409 if the file group is associated with a release in All Users availability
  • Authorization: user api token

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-16/file_groups/7/remove_product_file -H "Authorization: Bearer access_token" -d '{"product_file":{"id":17}}'

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.tanzu.vmware.com


{
  "product_file": {
    "id": 17
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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 user is not authorized to delete this file group
    • returns 404 if the product or file group is not found
    • returns 409 if the file group is associated with a release in All Users availability
  • Authentication required

Example

Curl


curl -X DELETE https://network.tanzu.vmware.com/api/v2/products/product-17/file_groups/8 -H "Authorization: Bearer access_token" 

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.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 923
Content-Type: application/json; charset=utf-8
ETag: W/"08d5ead135ae15395901f029cea1a90b"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 8,
  "name": "File Group 7",
  "product": {
    "id": 25,
    "name": "Product 25",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-17"
      },
      "releases": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-17/releases"
      },
      "product_files": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-17/product_files"
      },
      "file_groups": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-17/file_groups"
      }
    }
  },
  "product_files": [
    {
      "id": 18,
      "aws_object_key": "product-25/product-file-14.txt",
      "file_type": "Software",
      "file_version": "1.0.0",
      "md5": "c705c6e6339ebb3417ed1f118efbe620",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 14",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-17/product_files/18"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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
    • set optional query parameter 'external_users=true' if the report should only include 'external' users
  • Authentication required

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/reports/your-product-slug/download -H "Authorization: Bearer access_token" 

Request


GET /api/v2/reports/your-product-slug/download?external=true HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-25"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 302
Cache-Control: no-cache
Content-Length: 157
Content-Type: text/html; charset=utf-8
Location: http://localhost/cloud_front_stub/reports/product-downloads-report/product-26-downloads.csv
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


<html><body>You are being <a href="http://localhost/cloud_front_stub/reports/product-downloads-report/product-26-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 400 if invalid argument is passed as query parameter for limit
    • 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
  • optional 'limit' query parameter is (must be a positive integer) specifies the maximum number of releases to return

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-18/releases -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/product-18/releases?limit=4 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-26"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 6542
Content-Type: application/json; charset=utf-8
ETag: W/"8152a747c2fee88cc228b3c7c631b153"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "releases": [
    {
      "id": 25,
      "version": "1.2.1-alpha",
      "release_type": "Minor Release",
      "release_date": "2024-03-11",
      "release_notes_url": "http://example.com/release",
      "availability": "Admins Only",
      "description": "Release description",
      "eula": {
        "id": 22,
        "slug": "vmware_general_terms",
        "name": "VMware EULA",
        "_links": {
          "self": {
            "href": "https://network.tanzu.vmware.com/api/v2/eulas/22"
          }
        },
        "archived_at": null
      },
      "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": "2024-03-11T04:27:47.730Z",
      "software_files_updated_at": "2024-03-11T04:27:47.730Z",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/25"
        },
        "eula_acceptance": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/25/eula_acceptance"
        },
        "product_files": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/25/product_files"
        },
        "file_groups": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/25/file_groups"
        },
        "artifact_references": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/25/artifact_references"
        },
        "user_groups": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/25/user_groups"
        }
      },
      "user_authentication": false,
      "content_protection": false,
      "security_communication_protocols": false,
      "securing_data_at_rest": false,
      "network_infrastructure": false,
      "other_functionality_provided": false,
      "no_encryption_functionality": false,
      "proprietary_encryption_reviewed": false
    },
    {
      "id": 24,
      "version": "2.0.1-beta1",
      "release_type": "Major Release",
      "release_date": "2024-03-11",
      "release_notes_url": "http://example.com/release",
      "availability": "Selected User Groups Only",
      "description": "Release description",
      "eula": {
        "id": 22,
        "slug": "vmware_general_terms",
        "name": "VMware EULA",
        "_links": {
          "self": {
            "href": "https://network.tanzu.vmware.com/api/v2/eulas/22"
          }
        },
        "archived_at": null
      },
      "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": "2024-03-11T04:27:47.701Z",
      "software_files_updated_at": "2024-03-11T04:27:47.678Z",
      "first_attachment_timestamp": "2024-03-11T04:27:47.679Z",
      "last_attachment_timestamp": "2024-03-11T04:27:47.679Z",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/24"
        },
        "eula_acceptance": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/24/eula_acceptance"
        },
        "product_files": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/24/product_files"
        },
        "file_groups": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/24/file_groups"
        },
        "artifact_references": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/24/artifact_references"
        },
        "user_groups": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/24/user_groups"
        }
      },
      "user_authentication": false,
      "content_protection": false,
      "security_communication_protocols": false,
      "securing_data_at_rest": false,
      "network_infrastructure": false,
      "other_functionality_provided": false,
      "no_encryption_functionality": false,
      "proprietary_encryption_reviewed": false
    },
    {
      "id": 23,
      "version": "1.1.1",
      "release_type": "Minor Release",
      "release_date": "2024-03-11",
      "release_notes_url": "http://example.net/release-notes1",
      "availability": "Admins Only",
      "description": "Interesting release facts",
      "eula": {
        "id": 22,
        "slug": "vmware_general_terms",
        "name": "VMware EULA",
        "_links": {
          "self": {
            "href": "https://network.tanzu.vmware.com/api/v2/eulas/22"
          }
        },
        "archived_at": null
      },
      "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": "2024-03-11T04:27:47.640Z",
      "software_files_updated_at": "2024-03-11T04:27:47.640Z",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/23"
        },
        "eula_acceptance": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/23/eula_acceptance"
        },
        "product_files": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/23/product_files"
        },
        "file_groups": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/23/file_groups"
        },
        "artifact_references": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/23/artifact_references"
        },
        "user_groups": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/23/user_groups"
        }
      },
      "user_authentication": false,
      "content_protection": false,
      "security_communication_protocols": false,
      "securing_data_at_rest": false,
      "network_infrastructure": false,
      "other_functionality_provided": false,
      "no_encryption_functionality": false,
      "proprietary_encryption_reviewed": false
    },
    {
      "id": 22,
      "version": "1.0.1",
      "release_type": "Major Release",
      "release_date": "2024-03-11",
      "release_notes_url": "http://example.com/release",
      "availability": "Admins Only",
      "description": "Release description",
      "eula": {
        "id": 22,
        "slug": "vmware_general_terms",
        "name": "VMware EULA",
        "_links": {
          "self": {
            "href": "https://network.tanzu.vmware.com/api/v2/eulas/22"
          }
        },
        "archived_at": null
      },
      "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": "2024-03-11T04:27:47.621Z",
      "software_files_updated_at": "2024-03-11T04:27:47.621Z",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/22"
        },
        "eula_acceptance": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/22/eula_acceptance"
        },
        "product_files": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/22/product_files"
        },
        "file_groups": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/22/file_groups"
        },
        "artifact_references": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/22/artifact_references"
        },
        "user_groups": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-18/releases/22/user_groups"
        }
      },
      "user_authentication": false,
      "content_protection": false,
      "security_communication_protocols": false,
      "securing_data_at_rest": false,
      "network_infrastructure": false,
      "other_functionality_provided": false,
      "no_encryption_functionality": false,
      "proprietary_encryption_reviewed": false
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26 -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 3017
Content-Type: application/json; charset=utf-8
ETag: W/"6797b66ca743f6ffaaf28256da878f55"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 26,
  "version": "1.1.1",
  "release_type": "Major Release",
  "release_date": "2024-03-11",
  "release_notes_url": "http://example.com/release",
  "availability": "Admins Only",
  "description": "Release description",
  "eula": {
    "id": 23,
    "slug": "vmware_general_terms",
    "name": "VMware EULA",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/eulas/23"
      }
    },
    "archived_at": null
  },
  "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-28/product-file-16.txt",
      "file_type": "Software",
      "file_version": "1.0.0",
      "md5": "c705c6e6339ebb3417ed1f118efbe620",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 16",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26/product_files/20"
        },
        "download": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26/product_files/20/download"
        }
      }
    }
  ],
  "file_groups": [
    {
      "id": 9,
      "name": "File Group 8",
      "product_files": [
        {
          "id": 20,
          "aws_object_key": "product-28/product-file-16.txt",
          "file_type": "Software",
          "file_version": "1.0.0",
          "md5": "c705c6e6339ebb3417ed1f118efbe620",
          "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
          "name": "Product File 16",
          "_links": {
            "self": {
              "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26/product_files/20"
            },
            "download": {
              "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26/product_files/20/download"
            }
          }
        }
      ],
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/file_groups/9"
        }
      }
    }
  ],
  "artifact_references": [
    {
      "id": 1,
      "name": "artifact reference name #1",
      "artifact_path": "image:1",
      "image_path": "image:1",
      "digest": "sha256:correctdigest",
      "release_versions": [
        "1.1.1"
      ]
    }
  ],
  "updated_at": "2024-03-11T04:27:47.989Z",
  "software_files_updated_at": "2024-03-11T04:27:47.985Z",
  "first_attachment_timestamp": "2024-03-11T04:27:47.975Z",
  "last_attachment_timestamp": "2024-03-11T04:27:47.975Z",
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26"
    },
    "eula_acceptance": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26/eula_acceptance"
    },
    "product_files": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26/product_files"
    },
    "file_groups": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26/file_groups"
    },
    "artifact_references": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26/artifact_references"
    },
    "user_groups": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-19/releases/26/user_groups"
    }
  },
  "user_authentication": false,
  "content_protection": false,
  "security_communication_protocols": false,
  "securing_data_at_rest": false,
  "network_infrastructure": false,
  "other_functionality_provided": false,
  "no_encryption_functionality": false,
  "proprietary_encryption_reviewed": false
}

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
  • Optional 'major' and 'minor' query parameters (but both must be used at the same time)
  • Only releases with semver-compliant versions will be found

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-20/releases/latest -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 1454
Content-Type: application/json; charset=utf-8
ETag: W/"dac994d74d7d7e2134bd40878bde9831"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 28,
  "version": "1.1.2",
  "release_type": "Major Release",
  "release_date": "2024-03-11",
  "release_notes_url": "https://releasenote.url",
  "availability": "Admins Only",
  "description": "description",
  "eula": {
    "id": 24,
    "slug": "vmware_general_terms",
    "name": "VMware EULA",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/eulas/24"
      }
    },
    "archived_at": null
  },
  "product_files": [

  ],
  "file_groups": [

  ],
  "artifact_references": [

  ],
  "updated_at": "2024-03-11T04:27:48.136Z",
  "software_files_updated_at": "2024-03-11T04:27:48.136Z",
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-20/releases/28"
    },
    "eula_acceptance": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-20/releases/28/eula_acceptance"
    },
    "product_files": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-20/releases/28/product_files"
    },
    "file_groups": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-20/releases/28/file_groups"
    },
    "artifact_references": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-20/releases/28/artifact_references"
    },
    "user_groups": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-20/releases/28/user_groups"
    }
  },
  "user_authentication": false,
  "content_protection": false,
  "security_communication_protocols": false,
  "securing_data_at_rest": false,
  "network_infrastructure": false,
  "other_functionality_provided": false,
  "no_encryption_functionality": false,
  "proprietary_encryption_reviewed": false
}

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, Patch 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.
  • The values Admins Only and All Users 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
  • Reach out on #tanzu-network slack for more information about the Export Control Classification Number (ECCN) and License Exception

Example

Curl


curl -X POST https://network.tanzu.vmware.com/api/v2/products/product-21/releases -H "Authorization: Bearer access_token" -d '{"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":"vmware_general_terms"},"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"}}'

Request


POST /api/v2/products/product-21/releases HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-29"
Content-Length: 456
Content-Type: application/json
Host: network.tanzu.vmware.com


{
  "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": "vmware_general_terms"
    },
    "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: 1460
Content-Type: application/json; charset=utf-8
ETag: W/"4b164e6842fd9739054d33b36a8f837c"
Location: https://network.tanzu.vmware.com/api/v2/products/product-21/releases/30
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "status": 201,
  "message": "successfully created release '30' for product 'product-21'",
  "release": {
    "id": 30,
    "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": 25,
      "slug": "vmware_general_terms",
      "name": "VMware EULA",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/eulas/25"
        }
      },
      "archived_at": null
    },
    "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": [

    ],
    "artifact_references": [

    ],
    "updated_at": "2024-03-11T04:27:48.411Z",
    "software_files_updated_at": "2024-03-11T04:27:48.411Z",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-21/releases/30"
      },
      "eula_acceptance": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-21/releases/30/eula_acceptance"
      },
      "product_files": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-21/releases/30/product_files"
      },
      "file_groups": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-21/releases/30/file_groups"
      },
      "artifact_references": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-21/releases/30/artifact_references"
      },
      "user_groups": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-21/releases/30/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, Patch 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.
  • Tanzu Network 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.
  • Reach out on #tanzu-network slack for more information about the Export Control Classification Number (ECCN) and License Exception

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31 -H "Authorization: Bearer access_token" -d '{"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"}}'

Request


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


{
  "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: 2720
Content-Type: application/json; charset=utf-8
ETag: W/"e48aec8548f13f6c8d76ae5e37c2adb2"
Location: https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "status": 200,
  "message": "successfully updated release '31' for product 'product-22'",
  "release": {
    "id": 31,
    "version": "9.9.9",
    "release_type": "Major Release",
    "release_date": "2024-03-11",
    "release_notes_url": "https://releasenote.url",
    "availability": "All Users",
    "description": "description",
    "eula": {
      "id": 27,
      "slug": "vmware_general_terms",
      "name": "VMware EULA",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/eulas/27"
        }
      },
      "archived_at": null
    },
    "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": 22,
        "aws_object_key": "product-31/product-file-18.txt",
        "file_type": "Software",
        "file_version": "1.0.0",
        "md5": "c705c6e6339ebb3417ed1f118efbe620",
        "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
        "name": "Product File 18",
        "_links": {
          "self": {
            "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31/product_files/22"
          },
          "download": {
            "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31/product_files/22/download"
          }
        }
      }
    ],
    "file_groups": [
      {
        "id": 10,
        "name": "File Group 9",
        "product_files": [
          {
            "id": 22,
            "aws_object_key": "product-31/product-file-18.txt",
            "file_type": "Software",
            "file_version": "1.0.0",
            "md5": "c705c6e6339ebb3417ed1f118efbe620",
            "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
            "name": "Product File 18",
            "_links": {
              "self": {
                "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31/product_files/22"
              },
              "download": {
                "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31/product_files/22/download"
              }
            }
          }
        ],
        "_links": {
          "self": {
            "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/file_groups/10"
          }
        }
      }
    ],
    "artifact_references": [

    ],
    "updated_at": "2024-03-11T04:27:48.734Z",
    "software_files_updated_at": "2024-03-11T04:27:48.685Z",
    "became_ga_at": "2024-03-11T04:27:48.734Z",
    "first_attachment_timestamp": "2024-03-11T04:27:48.676Z",
    "last_attachment_timestamp": "2024-03-11T04:27:48.676Z",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31"
      },
      "eula_acceptance": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31/eula_acceptance"
      },
      "product_files": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31/product_files"
      },
      "file_groups": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31/file_groups"
      },
      "artifact_references": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31/artifact_references"
      },
      "user_groups": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-22/releases/31/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

Curl


curl -X DELETE https://network.tanzu.vmware.com/api/v2/products/product-23/releases/32 -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

GET /api/v2/releases/release_types

  • Returns the list of Release Types
  • No authentication required

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/releases/release_types -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 284
Content-Type: application/json; charset=utf-8
ETag: W/"5f3284395376800a0b57633282957bd9"
Location: https://network.tanzu.vmware.com/api/v2/releases/release_types
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "status": 200,
  "release_types": [
    "Developer Release",
    "Alpha Release",
    "Beta Release",
    "Release Candidate",
    "Major Release",
    "Minor Release",
    "Patch Release",
    "Security Release",
    "Maintenance Release"
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-24/releases/33/product_files -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 1106
Content-Type: application/json; charset=utf-8
ETag: W/"52242c69fb0aefa7d18a2b21eb8fa85d"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "product_files": [
    {
      "id": 24,
      "aws_object_key": "product-33/product-file-20.txt",
      "file_type": "Software",
      "file_version": "1.0.0",
      "md5": "c705c6e6339ebb3417ed1f118efbe620",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 20",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-24/releases/33/product_files/24"
        },
        "download": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-24/releases/33/product_files/24/download"
        }
      }
    },
    {
      "id": 23,
      "aws_object_key": "product-33/product-file-19.txt",
      "file_type": "Software",
      "file_version": "1.0.0",
      "md5": "c705c6e6339ebb3417ed1f118efbe620",
      "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
      "name": "Product File 19",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-24/releases/33/product_files/23"
        },
        "download": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-24/releases/33/product_files/23/download"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-24/releases/33/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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-25/releases/34/product_files/25 -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/product-25/releases/34/product_files/25 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-33"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 697
Content-Type: application/json; charset=utf-8
ETag: W/"3f111d572d73744ce6b2cf07c8027173"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


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

    ],
    "md5": "c705c6e6339ebb3417ed1f118efbe620",
    "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
    "name": "Product File 21",
    "ready_to_serve": true,
    "released_at": "2024-03-11",
    "size": null,
    "system_requirements": [

    ],
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-25/releases/34/product_files/25"
      },
      "download": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/product-25/releases/34/product_files/25/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 409 if the release is in All Users availability
    • returns 422 error associating the product file
  • Authorization: user api token

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-26/releases/35/add_product_file -H "Authorization: Bearer access_token" -d '{"product_file":{"id":26}}'

Request


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


{
  "product_file": {
    "id": 26
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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
    • returns 409 if the release is in All Users availability
  • Authorization: user api token

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-27/releases/36/remove_product_file -H "Authorization: Bearer access_token" -d '{"product_file":{"id":27}}'

Request


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


{
  "product_file": {
    "id": 27
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-28/releases/37/file_groups -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 1938
Content-Type: application/json; charset=utf-8
ETag: W/"dd8a43b81741109aa64eae379004f8fb"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "file_groups": [
    {
      "id": 11,
      "name": "Alpha Users",
      "product_files": [
        {
          "id": 28,
          "aws_object_key": "product-37/special-product-alpha.txt",
          "file_type": "Software",
          "file_version": "1.0.0",
          "md5": "c705c6e6339ebb3417ed1f118efbe620",
          "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
          "name": "Special Product Alpha",
          "_links": {
            "self": {
              "href": "https://network.tanzu.vmware.com/api/v2/products/product-28/releases/37/product_files/28"
            },
            "download": {
              "href": "https://network.tanzu.vmware.com/api/v2/products/product-28/releases/37/product_files/28/download"
            }
          }
        }
      ],
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-28/file_groups/11"
        }
      }
    },
    {
      "id": 12,
      "name": "Alpha Users",
      "product_files": [
        {
          "id": 30,
          "aws_object_key": "product-37/special-product-alpha-2.txt",
          "file_type": "Software",
          "file_version": "1.0.0",
          "md5": "c705c6e6339ebb3417ed1f118efbe620",
          "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
          "name": "Special Product Alpha 2",
          "_links": {
            "self": {
              "href": "https://network.tanzu.vmware.com/api/v2/products/product-28/releases/37/product_files/30"
            },
            "download": {
              "href": "https://network.tanzu.vmware.com/api/v2/products/product-28/releases/37/product_files/30/download"
            }
          }
        },
        {
          "id": 29,
          "aws_object_key": "product-37/special-product-alpha-1.txt",
          "file_type": "Software",
          "file_version": "1.0.0",
          "md5": "c705c6e6339ebb3417ed1f118efbe620",
          "sha256": "2ddafaea87cde937577c90d172b82daa143da75e071d99113a49fbdb2605a3bc",
          "name": "Special Product Alpha 1",
          "_links": {
            "self": {
              "href": "https://network.tanzu.vmware.com/api/v2/products/product-28/releases/37/product_files/29"
            },
            "download": {
              "href": "https://network.tanzu.vmware.com/api/v2/products/product-28/releases/37/product_files/29/download"
            }
          }
        }
      ],
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/product-28/file_groups/12"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-28/releases/37/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 409 if the release is in All Users availability
    • returns 422 if the file group could not be added to the release
  • Authorization: user api token

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-29/releases/38/add_file_group -H "Authorization: Bearer access_token" -d '{"file_group":{"id":13}}'

Request


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


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

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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
    • returns 409 if the release is in All Users availability
  • Authorization: user api token

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-30/releases/39/remove_file_group -H "Authorization: Bearer access_token" -d '{"file_group":{"id":14}}'

Request


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


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

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-31/releases/40/user_groups -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 282
Content-Type: application/json; charset=utf-8
ETag: W/"bad353c66cd382f105ad2aefa4a4d67d"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "user_groups": [
    {
      "id": 9,
      "name": "Group Name #5",
      "description": "Group Description #5",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/user_groups/9"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-31/releases/40/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

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-32/releases/41/add_user_group -H "Authorization: Bearer access_token" -d '{"user_group":{"id":10}}'

Request


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


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

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-33/releases/42/remove_user_group -H "Authorization: Bearer access_token" -d '{"user_group":{"id":11}}'

Request


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


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

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-35/releases/43/dependencies -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 552
Content-Type: application/json; charset=utf-8
ETag: W/"2fb100068fa5eb3e51a36ce4942c3006"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "dependencies": [
    {
      "release": {
        "id": 47,
        "version": "1.3.3-included",
        "product": {
          "id": 43,
          "slug": "product-34",
          "name": "Product 43"
        },
        "_links": {
          "self": {
            "href": "https://network.tanzu.vmware.com/api/v2/products/product-34/releases/47"
          }
        }
      }
    },
    {
      "release": {
        "id": 46,
        "version": "1.3.2-included",
        "product": {
          "id": 43,
          "slug": "product-34",
          "name": "Product 43"
        },
        "_links": {
          "self": {
            "href": "https://network.tanzu.vmware.com/api/v2/products/product-34/releases/46"
          }
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-35/releases/43/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

Curl


curl -X POST https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/48/dependency_specifiers -H "Authorization: Bearer access_token" -d '{"dependency_specifier":{"product_slug":"dependency-product-slug","specifier":"1.2.*"}}'

Request


POST /api/v2/products/release-product-slug/releases/48/dependency_specifiers HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-44"
Content-Length: 87
Content-Type: application/json
Host: network.tanzu.vmware.com


{
  "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: 261
Content-Type: application/json; charset=utf-8
ETag: W/"0e5e31bd7a7faf9d9e9fbdc28864b0c5"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "dependency_specifier": {
    "id": 2,
    "product": {
      "id": 45,
      "slug": "dependency-product-slug",
      "name": "Product 45"
    },
    "specifier": "1.2.*",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/48/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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/49/dependency_specifiers -H "Authorization: Bearer access_token" 

Request


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

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 397
Content-Type: application/json; charset=utf-8
ETag: W/"7c0661ea608f85b55cf05e5d6e2970f8"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "dependency_specifiers": [
    {
      "id": 3,
      "product": {
        "id": 47,
        "slug": "dependency-product-slug",
        "name": "Product 47"
      },
      "specifier": "1.2.*",
      "_links": {
        "self": {
          "href": "https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/49/dependency_specifiers/3"
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/49/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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/50/dependency_specifiers/4 -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/release-product-slug/releases/50/dependency_specifiers/4 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-46"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 261
Content-Type: application/json; charset=utf-8
ETag: W/"bc992da5fef40b90e0c5c0cb72a34746"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "dependency_specifier": {
    "id": 4,
    "product": {
      "id": 49,
      "slug": "dependency-product-slug",
      "name": "Product 49"
    },
    "specifier": "1.2.*",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/50/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

Curl


curl -X DELETE https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/51/dependency_specifiers/5 -H "Authorization: Bearer access_token" 

Request


DELETE /api/v2/products/release-product-slug/releases/51/dependency_specifiers/5 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-47"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-36/releases/54/upgrade_paths -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/product-36/releases/54/upgrade_paths HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-48"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 416
Content-Type: application/json; charset=utf-8
ETag: W/"9c2a8d8dd9c333bba6a22bd94184f3c8"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "upgrade_paths": [
    {
      "release": {
        "id": 52,
        "version": "1.2.1",
        "_links": {
          "self": {
            "href": "https://network.tanzu.vmware.com/api/v2/products/product-36/releases/52"
          }
        }
      }
    },
    {
      "release": {
        "id": 53,
        "version": "1.2.2",
        "_links": {
          "self": {
            "href": "https://network.tanzu.vmware.com/api/v2/products/product-36/releases/53"
          }
        }
      }
    }
  ],
  "_links": {
    "self": {
      "href": "https://network.tanzu.vmware.com/api/v2/products/product-36/releases/54/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

Curl


curl -X POST https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/55/upgrade_path_specifiers -H "Authorization: Bearer access_token" -d '{"upgrade_path_specifier":{"specifier":"1.2.*"}}'

Request


POST /api/v2/products/release-product-slug/releases/55/upgrade_path_specifiers HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-49"
Content-Length: 48
Content-Type: application/json
Host: network.tanzu.vmware.com


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

Response


HTTP/1.1 201
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 192
Content-Type: application/json; charset=utf-8
ETag: W/"e02abd8ca2df5eac713b5e2140e571cd"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "upgrade_path_specifier": {
    "id": 3,
    "specifier": "1.2.*",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/55/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

Curl


curl -X DELETE https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/56/upgrade_path_specifiers/4 -H "Authorization: Bearer access_token" 

Request


DELETE /api/v2/products/release-product-slug/releases/56/upgrade_path_specifiers/4 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-50"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/57/upgrade_path_specifiers/5 -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/release-product-slug/releases/57/upgrade_path_specifiers/5 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-51"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 192
Content-Type: application/json; charset=utf-8
ETag: W/"a9a3f0ad1dafde8366ec1431be6385fc"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "upgrade_path_specifier": {
    "id": 5,
    "specifier": "2.3.*",
    "_links": {
      "self": {
        "href": "https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/57/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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/release-product-slug/releases/58/upgrade_path_specifiers -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/release-product-slug/releases/58/upgrade_path_specifiers HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-52"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 330
Content-Type: application/json; charset=utf-8
ETag: W/"e350d379864bcbab205602bfcabd0b7c"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


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

POST /api/v2/federation_token

  • Returns a federation token to upload files to AWS S3 bucket
    • returns 200 if successful
    • returns 403 if user does not have access
  • User must be product admin of specified product

Example

Curl


curl -X POST https://network.tanzu.vmware.com/api/v2/federation_token -H "Authorization: Bearer access_token" -d '{"product_id":"product-37"}'

Request


POST /api/v2/federation_token HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-53"
Content-Length: 27
Content-Type: application/json
Host: network.tanzu.vmware.com


{
  "product_id": "product-37"
}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 166
Content-Type: application/json; charset=utf-8
ETag: W/"99bf9b69d7b7a51d0d6c41e83d721034"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "access_key_id": "fake-access-key-id",
  "secret_access_key": "fake-secret_access_key",
  "session_token": "fake-session_token",
  "bucket": "fake-bucket",
  "region": "fake-region"
}

GET /api/v2/product_details/:product_slug

  • Returns serialized product details
    • returns 200 if product is found
    • returns 404 if product cannot be found or user is not permitted to view
  • Authentication optional, but required to view products not publicly available
  • Does not return releases with type alpha_release, developer_release, or release_candidate
  • Due to a known implementation bug, choosing to not call this endpoint with the upgrade_specifiers flag set to true may result in some 4-digit releases being excluded from some upgrade paths.
  • The optional parameters:
    • current_version and target_version, which accepts semver version, delimits returned release versions
    • dependency_specifiers and upgrade_specifiers, which accepts a boolean value, when true returns unexpanded specifiers
    • filter_list, which accepts a comma separated list of strings and filters out release versions containing any of those string from the result.

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/product_details/my-product-slug -H "Authorization: Bearer access_token" 

Request


GET /api/v2/product_details/my-product-slug HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-54"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 1472
Content-Type: application/json; charset=utf-8
ETag: W/"f32781f6f9b8edb464b2a2835790a9cf"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 59,
  "slug": "my-product-slug",
  "name": "Product 59",
  "logo_url": "http://localhost/cloud_front_stub/assets/images/p-logo.png",
  "category": "Data",
  "knowledge_base_url": null,
  "more_info_url": null,
  "docs_url": "https://docs.example.com",
  "support_forum_url": null,
  "lifecycle_state": "Beta",
  "platform_compatibility": [

  ],
  "installs_on_pks": false,
  "partner_product": false,
  "releases": [
    {
      "id": 59,
      "version": "2.0.0",
      "release_type": "Major Release",
      "date": "2024-03-11",
      "notes": "https://releasenote.url",
      "availability": "All Users",
      "end_of_support_date": null,
      "end_of_guidance_date": null,
      "end_of_availability_date": null,
      "was_ever_general_availability": true,
      "dependencies": [

      ],
      "upgrade_paths": [
        {
          "id": 5,
          "version": "1.0.0",
          "was_ever_general_availability": true
        }
      ],
      "release_removal_details": null,
      "release_removal_recommended_actions": null,
      "release_removal_cve_number": null
    },
    {
      "id": 5,
      "version": "1.0.0",
      "release_type": "Major Release",
      "date": "2024-03-11",
      "notes": "https://releasenote.url",
      "availability": "All Users",
      "end_of_support_date": null,
      "end_of_guidance_date": null,
      "end_of_availability_date": null,
      "was_ever_general_availability": true,
      "dependencies": [
        {
          "slug": "dependency-product-slug",
          "name": "dependency-name",
          "versions": [
            {
              "id": 11,
              "link": "https://network.tanzu.vmware.com/products/dependency-product-slug/releases/11",
              "version": "1.0.1",
              "was_ever_general_availability": true
            }
          ]
        }
      ],
      "upgrade_paths": [

      ],
      "release_removal_details": null,
      "release_removal_recommended_actions": null,
      "release_removal_cve_number": null
    }
  ]
}

GET /api/v2/products/:product_slug/artifact_references

  • List artifact references associated with the specified product
    • returns 200 if the product is found
    • returns 401 if user could not be authenticated
    • returns 403 if the user is not permissioned to view artifact references
    • returns 404 if the product cannot be found
  • Authentication required

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-39/artifact_references -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/product-39/artifact_references HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-55"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 638
Content-Type: application/json; charset=utf-8
ETag: W/"6d21d0732fa4d3eaa1b1ecacc5e1f948"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "artifact_references": [
    {
      "id": 3,
      "name": "artifact reference name #3",
      "artifact_path": "image:3",
      "image_path": "image:3",
      "digest": "sha256:correctdigest",
      "release_versions": [

      ]
    },
    {
      "id": 2,
      "name": "artifact reference name #2",
      "artifact_path": "image:2",
      "image_path": "image:2",
      "digest": "sha256:correctdigest",
      "release_versions": [

      ]
    }
  ],
  "image_references": [
    {
      "id": 3,
      "name": "artifact reference name #3",
      "artifact_path": "image:3",
      "image_path": "image:3",
      "digest": "sha256:correctdigest",
      "release_versions": [

      ]
    },
    {
      "id": 2,
      "name": "artifact reference name #2",
      "artifact_path": "image:2",
      "image_path": "image:2",
      "digest": "sha256:correctdigest",
      "release_versions": [

      ]
    }
  ]
}

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

  • Show an artifact reference associated with the specified product
    • returns 200 if the product is found
    • returns 401 if user could not be authenticated
    • returns 403 if the user is not permissioned to view the artifact reference
    • returns 404 if the product cannot be found
  • Authentication required

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-41/artifact_references/4 -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/product-41/artifact_references/4 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-56"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 558
Content-Type: application/json; charset=utf-8
ETag: W/"2f7ed08a75c1303deeeb24458ee37505"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "artifact_reference": {
    "id": 4,
    "name": "pivnet-artifact",
    "artifact_path": "pivnet-artifact:latest",
    "image_path": "pivnet-artifact:latest",
    "digest": "sha256:correctdigest",
    "description": null,
    "docs_url": null,
    "system_requirements": [

    ],
    "release_versions": [

    ],
    "replication_status": "complete"
  },
  "image_reference": {
    "id": 4,
    "name": "pivnet-artifact",
    "artifact_path": "pivnet-artifact:latest",
    "image_path": "pivnet-artifact:latest",
    "digest": "sha256:correctdigest",
    "description": null,
    "docs_url": null,
    "system_requirements": [

    ],
    "release_versions": [

    ],
    "replication_status": "complete"
  }
}

POST /api/v2/products/:product_slug/artifact_references

  • This endpoint creates an artifact reference and returns its data.
  • This endpoint is only available for product admins.

Example

Curl


curl -X POST https://network.tanzu.vmware.com/api/v2/products/product-43/artifact_references -H "Authorization: Bearer access_token" -d '{"artifact_reference":{"name":"artifact name","artifact_path":"path:123","digest":"sha256:correctdigest","description":"my description","docs_url":"my.docs.url","system_requirements":["requirement1","requirement2"]}}'

Request


POST /api/v2/products/product-43/artifact_references HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-57"
Content-Length: 216
Content-Type: application/json
Host: network.tanzu.vmware.com


{
  "artifact_reference": {
    "name": "artifact name",
    "artifact_path": "path:123",
    "digest": "sha256:correctdigest",
    "description": "my description",
    "docs_url": "my.docs.url",
    "system_requirements": [
      "requirement1",
      "requirement2"
    ]
  }
}

Response


HTTP/1.1 201
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 604
Content-Type: application/json; charset=utf-8
ETag: W/"33d976aa8e48454aa94309dce5c31aa9"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "artifact_reference": {
    "id": 5,
    "name": "artifact name",
    "artifact_path": "path:123",
    "image_path": "path:123",
    "digest": "sha256:correctdigest",
    "description": "my description",
    "docs_url": "my.docs.url",
    "system_requirements": [
      "requirement1",
      "requirement2"
    ],
    "release_versions": [

    ],
    "replication_status": "in_progress"
  },
  "image_reference": {
    "id": 5,
    "name": "artifact name",
    "artifact_path": "path:123",
    "image_path": "path:123",
    "digest": "sha256:correctdigest",
    "description": "my description",
    "docs_url": "my.docs.url",
    "system_requirements": [
      "requirement1",
      "requirement2"
    ],
    "release_versions": [

    ],
    "replication_status": "in_progress"
  }
}

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

  • Updates an existing artifact reference for the specified product
    • returns 200 if the artifact reference 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 409 if the artifact reference that is associated with a release in All Users availability
    • returns 404 if the product or the artifact reference cannot be found
    • returns 422 if the artifact reference cannot be due to invalid artifact reference data
  • Authentication required
  • This endpoint is only available for admins. Please use Release Artifact References endpoint instead

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-45/artifact_references/6 -H "Authorization: Bearer access_token" -d '{"artifact_reference":{"name":"Law Blog"}}'

Request


PATCH /api/v2/products/product-45/artifact_references/6 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-58"
Content-Length: 42
Content-Type: application/json
Host: network.tanzu.vmware.com


{
  "artifact_reference": {
    "name": "Law Blog"
  }
}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 484
Content-Type: application/json; charset=utf-8
ETag: W/"976d7b6abab353c3a03a94148548a422"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "artifact_reference": {
    "id": 6,
    "name": "Law Blog",
    "artifact_path": "image:5",
    "image_path": "image:5",
    "digest": "sha256:correctdigest",
    "description": null,
    "docs_url": null,
    "system_requirements": [

    ],
    "release_versions": [

    ],
    "replication_status": "complete"
  },
  "image_reference": {
    "id": 6,
    "name": "Law Blog",
    "artifact_path": "image:5",
    "image_path": "image:5",
    "digest": "sha256:correctdigest",
    "description": null,
    "docs_url": null,
    "system_requirements": [

    ],
    "release_versions": [

    ],
    "replication_status": "complete"
  }
}

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

  • Deletes the specified artifact reference
    • returns 200 if the artifact reference is deleted
    • returns 401 if the user could not be authenticated
    • returns 403 if the user does not have access to delete this artifact reference
    • returns 404 if the product or the artifact reference cannot be found
    • returns 409 if the artifact reference is associated with a release in All Users availability
  • Authentication required
  • This endpoint is only available for admins. Please use Release Artifact References endpoint instead

Example

Curl


curl -X DELETE https://network.tanzu.vmware.com/api/v2/products/product-46/artifact_references/7 -H "Authorization: Bearer access_token" 

Request


DELETE /api/v2/products/product-46/artifact_references/7 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-59"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 520
Content-Type: application/json; charset=utf-8
ETag: W/"976c2395d95cd8644ed36c015aff9e90"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "artifact_reference": {
    "id": 7,
    "name": "artifact reference name #5",
    "artifact_path": "image:6",
    "image_path": "image:6",
    "digest": "sha256:correctdigest",
    "description": null,
    "docs_url": null,
    "system_requirements": [

    ],
    "release_versions": [

    ],
    "replication_status": "complete"
  },
  "image_reference": {
    "id": 7,
    "name": "artifact reference name #5",
    "artifact_path": "image:6",
    "image_path": "image:6",
    "digest": "sha256:correctdigest",
    "description": null,
    "docs_url": null,
    "system_requirements": [

    ],
    "release_versions": [

    ],
    "replication_status": "complete"
  }
}

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

  • List artifact references 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

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-48/releases/60/artifact_references -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/product-48/releases/60/artifact_references HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-60"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 694
Content-Type: application/json; charset=utf-8
ETag: W/"f8970983d46a662a3cac5f100a844fde"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "artifact_references": [
    {
      "id": 9,
      "name": "artifact reference name #7",
      "artifact_path": "image:8",
      "image_path": "image:8",
      "digest": "sha256:correctdigest",
      "release_versions": [
        "1.0.41-alpha"
      ]
    },
    {
      "id": 8,
      "name": "artifact reference name #6",
      "artifact_path": "image:7",
      "image_path": "image:7",
      "digest": "sha256:correctdigest",
      "release_versions": [
        "1.0.41-alpha"
      ]
    }
  ],
  "image_references": [
    {
      "id": 9,
      "name": "artifact reference name #7",
      "artifact_path": "image:8",
      "image_path": "image:8",
      "digest": "sha256:correctdigest",
      "release_versions": [
        "1.0.41-alpha"
      ]
    },
    {
      "id": 8,
      "name": "artifact reference name #6",
      "artifact_path": "image:7",
      "image_path": "image:7",
      "digest": "sha256:correctdigest",
      "release_versions": [
        "1.0.41-alpha"
      ]
    }
  ]
}

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

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

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/products/product-49/releases/61/artifact_references/10 -H "Authorization: Bearer access_token" 

Request


GET /api/v2/products/product-49/releases/61/artifact_references/10 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-61"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 550
Content-Type: application/json; charset=utf-8
ETag: W/"1241042ca0547c0eaca0cdf1160eab0f"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "artifact_reference": {
    "id": 10,
    "name": "artifact reference name #8",
    "artifact_path": "image:9",
    "image_path": "image:9",
    "digest": "sha256:correctdigest",
    "description": null,
    "docs_url": null,
    "system_requirements": [

    ],
    "release_versions": [
      "1.0.42-alpha"
    ],
    "replication_status": "complete"
  },
  "image_reference": {
    "id": 10,
    "name": "artifact reference name #8",
    "artifact_path": "image:9",
    "image_path": "image:9",
    "digest": "sha256:correctdigest",
    "description": null,
    "docs_url": null,
    "system_requirements": [

    ],
    "release_versions": [
      "1.0.42-alpha"
    ],
    "replication_status": "complete"
  }
}

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

  • Associates a artifact reference with the specified release
  • Required fields: artifact_reference
    • returns 204 if the artifact reference 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 artifact reference cannot be found
    • returns 409 if the release is in All Users availability
    • returns 422 error associating the artifact reference
  • Authorization: user api token

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-50/releases/62/add_artifact_reference -H "Authorization: Bearer access_token" -d '{"artifact_reference":{"id":11}}'

Request


PATCH /api/v2/products/product-50/releases/62/add_artifact_reference HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-62"
Content-Length: 32
Content-Type: application/json
Host: network.tanzu.vmware.com


{
  "artifact_reference": {
    "id": 11
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

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

  • Removes a artifact reference from the specified release
  • Required fields: artifact_reference
    • returns 204 if the artifact reference 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 artifact reference cannot be found
    • returns 409 if the release is in All Users availability
  • Authorization: user api token

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/products/product-51/releases/63/remove_artifact_reference -H "Authorization: Bearer access_token" -d '{"artifact_reference":{"id":12}}'

Request


PATCH /api/v2/products/product-51/releases/63/remove_artifact_reference HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-63"
Content-Length: 32
Content-Type: application/json
Host: network.tanzu.vmware.com


{
  "artifact_reference": {
    "id": 12
  }
}

Response


HTTP/1.1 204
Cache-Control: no-cache
Referrer-Policy: strict-origin-when-cross-origin
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none

GET /api/v2/subscription_groups

  • Lists all managed subscription groups
    • returns 401 if you do not have a valid API token
  • Authentication required

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/subscription_groups -H "Authorization: Bearer access_token" 

Request


GET /api/v2/subscription_groups HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-64"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 91
Content-Type: application/json; charset=utf-8
ETag: W/"3375ddb8aedec5fd306086d91aa7f363"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "subscription_groups": [
    {
      "id": 1,
      "name": "Subscription X"
    },
    {
      "id": 2,
      "name": "Subscription Y"
    }
  ]
}

GET /api/v2/subscription_groups/:subscription_group_id

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

Example

Curl


curl -X GET https://network.tanzu.vmware.com/api/v2/subscription_groups/3 -H "Authorization: Bearer access_token" 

Request


GET /api/v2/subscription_groups/3 HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-65"
Content-Length: 0
Content-Type: application/json
Host: network.tanzu.vmware.com

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 355
Content-Type: application/json; charset=utf-8
ETag: W/"fb32981171fcf5755dd45abf6eb202fb"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 3,
  "name": "Subscription X",
  "members": [
    {
      "id": 74,
      "name": "Person A",
      "email": "alpha@example.net",
      "admin": false
    },
    {
      "id": 73,
      "name": "The Admin",
      "email": "theta@example.net",
      "admin": true
    },
    {
      "id": 75,
      "name": "Person B",
      "email": "bravo@example.net",
      "admin": false
    }
  ],
  "pending_invitations": [

  ],
  "subscriptions": [
    {
      "id": 76,
      "name": "Product B"
    },
    {
      "id": 75,
      "name": "Product A"
    }
  ]
}

PATCH /api/v2/subscription_groups/:subscription_group_id/add_member

  • Add a new member to an existing subscription group that you manage
    • returns 200 if the member already exists in the subscription group or the member has been added to the subscription group or an email invite is sent if no VMware Tanzu Network account is found for the requested email address
    • 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 404 if the subscription group cannot be found for the user
    • returns 422 if the email provided is in an invalid format or user tries to change their own admin state
  • Authentication required

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/subscription_groups/4/add_member -H "Authorization: Bearer access_token" -d '{"member":{"email":"alpha@example.net","admin":true}}'

Request


PATCH /api/v2/subscription_groups/4/add_member HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-68"
Content-Length: 53
Content-Type: application/json
Host: network.tanzu.vmware.com


{
  "member": {
    "email": "alpha@example.net",
    "admin": true
  }
}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 227
Content-Type: application/json; charset=utf-8
ETag: W/"50c06be6f1138937392040c859dc5181"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 4,
  "name": "Subscription X",
  "members": [
    {
      "id": 76,
      "name": "The Admin",
      "email": "theta@example.net",
      "admin": true
    },
    {
      "id": 77,
      "name": "Person A",
      "email": "alpha@example.net",
      "admin": true
    }
  ],
  "pending_invitations": [

  ],
  "subscriptions": [

  ]
}

PATCH /api/v2/subscription_groups/:subscription_group_id/remove_member

  • Removes member from an existing subscription group that you manage
    • returns 200 if the member exists and gets deleted or was not 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 user attempts to remove themselves from the subscription group
    • returns 404 if the subscription group cannot be found for the user
    • returns 422 if the email provided is in an invalid format
  • Authentication required

Example

Curl


curl -X PATCH https://network.tanzu.vmware.com/api/v2/subscription_groups/5/remove_member -H "Authorization: Bearer access_token" -d '{"member":{"email":"alpha@example.net"}}'

Request


PATCH /api/v2/subscription_groups/5/remove_member HTTP/1.1
Accept: application/json
Authorization: Token token="api-token-70"
Content-Length: 40
Content-Type: application/json
Host: network.tanzu.vmware.com


{
  "member": {
    "email": "alpha@example.net"
  }
}

Response


HTTP/1.1 200
Cache-Control: max-age=0, private, must-revalidate
Content-Length: 158
Content-Type: application/json; charset=utf-8
ETag: W/"6dc79d9c920cf18b4fda232376bce4f0"
Referrer-Policy: strict-origin-when-cross-origin
Vary: Accept-Encoding
Warning: 299 - "Static Pivnet API tokens deprecated. https://network.tanzu.vmware.com/docs/api#how-to-authenticate for new UAA API Token mechanism."
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none


{
  "id": 5,
  "name": "Subscription X",
  "members": [
    {
      "id": 78,
      "name": "The Admin",
      "email": "theta@example.net",
      "admin": true
    }
  ],
  "pending_invitations": [

  ],
  "subscriptions": [

  ]
}