Get Customizations

Get Customizations
Get all customizations available in a catalog

Return a paginated list of customizations in a catalog that match the query params searching ordered by creation date descending. The id of the organization is fetched from CSP token.

Request
URI
GET
https://api.app-catalog.vmware.com/v1/catalogs/{catalog_id}/customizations
COPY
Path Parameters
catalog_id
Required

A string as the identifier of a catalog

Query Parameters
string
product_key
Optional

The key name of the product

base_image_id
Optional

A string as the identifier of a base image

string
branch
Optional

The branch of the product

boolean
active
Optional
Constraints: default: false

It filters the deleted customizations.

active example
true
boolean
global
Optional
Constraints: default: false

It filters for global customizations only.

global example
true
integer
page
Optional
Constraints: minimum: 1 default: 1

An integer that identifies the page number for a paged response

integer
page_size
Optional
Constraints: minimum: 1 maximum: 100 default: 20

An integer that identifies the maximum page size for a paged response


Authentication
This operation uses the following authentication methods.
Responses
200

Paginated list of customizations

Returns CustomizationDetailedPage of type(s) application/json
This response body class contains all of the following: InlineCustomizationDetailedPage0 , InlineCustomizationDetailedPage1
{
    "page": 1,
    "page_size": 5,
    "total_size": 10,
    "total_pages": 2,
    "items": [
        {
            "id": "d16c7f4d-b38a-405b-a1ca-3ac0a79418c1",
            "version": "v4",
            "artifact": {
                "id": "127e6fbfe24a750e72930c220a8e138275656b8e5d8f48a98c3c92df2caba935",
                "url": "/v1/catalogs/46ba3c35-fb85-44a1-8336-694b4d4f4b91/files/81a957b549848a7424eb434d3d10642dd29b6d0577757c27c09b0b9e967eb64b?filename=custom-postgresql-15-15.2.0-r5-debian-11-amd64.ova",
                "filename": "script.sh"
            },
            "name": "my customization",
            "description": "This is the customization required by my org",
            "catalog_id": "d16c7f4d-b38a-405b-a1ca-3ac0a79418c1",
            "status": "CREATED",
            "filter": {
                "base_image_id": "549cfa79-352c-4555-9d28-4442de551829",
                "product_key": "apache_kafka",
                "base_image": {
                    "id": "d16c7f4d-b38a-405b-a1ca-3ac0a79418c1",
                    "name": "Debian 11",
                    "description": "Debian 11 base image",
                    "container_image": "docker.io/library/debian:11",
                    "operating_system": {
                        "id": "d16c7f4d-b38a-405b-a1ca-3ac0a79418c1",
                        "name": "Centos 7",
                        "distro": "centos",
                        "version": "7"
                    },
                    "healthy": true,
                    "last_checked_at": "2023-03-03T00:59:52.762Z"
                },
                "product": {
                    "name": "Argo CD",
                    "key": "argo-cd",
                    "description": "Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes",
                    "long_display_name": "Argo CD packaged by VMware",
                    "disclaimer": "Trademarks: This software listing is packaged by VMware. The respective trademarks mentioned in the offering are owned by the respective companies, and use of them does not imply any affiliation or endorsement",
                    "category": "Developer Tools",
                    "based_on_scratch": true,
                    "latest_free": false
                },
                "branch": "2"
            },
            "created_by": "johndoe",
            "created_at": "2023-03-03T00:59:52.762Z",
            "updated_by": "johndoe",
            "updated_at": "2023-03-03T00:59:52.762Z",
            "removed_by": "johndoe",
            "removed_at": "2023-03-03T00:59:52.762Z",
            "affected_releasables": [
                {
                    "application_id": "d16c7f4d-b38a-405b-a1ca-3ac0a79418c1",
                    "latest_release": {
                        "id": "64455e6bd3c480fd58546c75",
                        "revision": "0",
                        "released_at": "2023-03-03T00:59:52.762Z",
                        "version": "2.6.7"
                    },
                    "latest_pipeline_id": "94bd3a9b-ddfd-4b7e-ac56-200b8a73484d",
                    "product": {
                        "name": "Argo CD",
                        "key": "argo-cd",
                        "description": "Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes",
                        "long_display_name": "Argo CD packaged by VMware",
                        "disclaimer": "Trademarks: This software listing is packaged by VMware. The respective trademarks mentioned in the offering are owned by the respective companies, and use of them does not imply any affiliation or endorsement",
                        "category": "Developer Tools",
                        "based_on_scratch": true,
                        "latest_free": false
                    },
                    "branch": "2",
                    "base_image": {
                        "id": "d16c7f4d-b38a-405b-a1ca-3ac0a79418c1",
                        "name": "Debian 11",
                        "description": "Debian 11 base image",
                        "container_image": "docker.io/library/debian:11",
                        "operating_system": {
                            "id": "d16c7f4d-b38a-405b-a1ca-3ac0a79418c1",
                            "name": "Centos 7",
                            "distro": "centos",
                            "version": "7"
                        },
                        "healthy": true,
                        "last_checked_at": "2023-03-03T00:59:52.762Z"
                    },
                    "registry": {
                        "id": "549cfa79-352c-4555-9d28-4442de551829",
                        "name": "Harbor registry for my org",
                        "url": "https://harbor.mydomain.com",
                        "healthy": true,
                        "last_checked_at": "2023-03-03T00:59:52.762Z"
                    },
                    "status": "PENDING",
                    "failure": {
                        "description": "An error happened when a release with customization was tried to be built",
                        "source_url": "https://app-catalog.vmware.com/api/v1/artifacts/89a6380a7d010648bad74e4de1c2ef17481a7f4715ff62bb8924e5c0b907bf3d?filename=custom-postgresql-15-15.2.0-r5-debian-11-amd64.ova&namespace=68c0f832-5169-4433-ab2f-40e939e3f1bc",
                        "error_date": "2023-03-03T00:59:52.762Z",
                        "cause": "CUSTOMIZATION_BUILD_ERROR"
                    }
                }
            ],
            "global": true,
            "_links": {
                "catalog": {
                    "href": "/v1/catalogs/351c1739-ca01-4a74-8124-1b99257cd7c9"
                },
                "base_image": {
                    "href": "/v1/base-images/cc6c7f4d-405b-a1ca-3ac0a79418c1"
                },
                "affected_releasables": [
                    {
                        "href": "/v1/catalogs/351c1739-ca01-4a74-8124-1b99257cd7c9/pipelines/12sdfe6bd3c480fd58549c03"
                    }
                ]
            }
        }
    ]
}

400

An error related to the request

Returns ConstraintsViolationsError of type(s) application/problem+json
This response body class contains all of the following: InlineConstraintsViolationsError0
{
    "type": "https://example.com/probs/validation-error",
    "title": "Validation error",
    "status": 400,
    "detail": "There was an error validating the request",
    "violations": [
        {
            "field": "amount",
            "message": "It should be greater than zero"
        }
    ]
}
array of object
violations
Required

It represents a constraints violation error


403

The requesting user is not authorized to get the customizations

Returns Error403 of type(s) application/problem+json
This response body class contains all of the following: InlineError4030
{
    "type": "https://example.com/probs/out-of-credit",
    "title": "You do not have enough credit.",
    "status": 403,
    "detail": "Your current balance is 30, but that costs 50",
    "instance": "/account/2217eb9c-f042-11eb-9a03-0242ac130003/msgs/abc"
}

404

The catalog is not found

Returns Error404 of type(s) application/problem+json
This response body class contains all of the following: InlineError4040
{
    "type": "https://example.com/probs/out-of-credit",
    "title": "You do not have enough credit.",
    "status": 403,
    "detail": "Your current balance is 30, but that costs 50",
    "instance": "/account/2217eb9c-f042-11eb-9a03-0242ac130003/msgs/abc"
}

500

An internal server error object

Returns Error500 of type(s) application/problem+json
This response body class contains all of the following: InlineError5000
{
    "type": "https://example.com/probs/out-of-credit",
    "title": "You do not have enough credit.",
    "status": 403,
    "detail": "Your current balance is 30, but that costs 50",
    "instance": "/account/2217eb9c-f042-11eb-9a03-0242ac130003/msgs/abc"
}

503

The server is temporarily unavailable

Returns Error503 of type(s) application/problem+json
This response body class contains all of the following: InlineError5030
{
    "type": "https://example.com/probs/out-of-credit",
    "title": "You do not have enough credit.",
    "status": 403,
    "detail": "Your current balance is 30, but that costs 50",
    "instance": "/account/2217eb9c-f042-11eb-9a03-0242ac130003/msgs/abc"
}

Code Samples
COPY
                    curl -H 'Authorization: <value>' https://{api_host}/v1/catalogs/{catalog_id}/customizations