# Artifacts

Artifacts are the individual files stored in a repository

This tag groups all operations for artifacts.

## Retrieve all Artifacts by Registry

> This endpoint enables retrieving all Artifacts using\
> pagination and optional filters.<br>

```json
{"openapi":"3.0.3","info":{"title":"Container Registry service","version":"1.2.2"},"tags":[{"name":"Artifacts","description":"Artifacts are the individual files stored in a repository\n\nThis tag groups all operations for artifacts.\n"}],"servers":[{"url":"https://api.ionos.com/containerregistries","description":"Production"}],"security":[{"tokenAuth":[]}],"components":{"securitySchemes":{"tokenAuth":{"type":"apiKey","name":"Authorization","in":"header","description":"Please provide header value as 'Bearer' and don't forget to add 'Bearer' HTTP Authorization Scheme before the token        "}},"parameters":{"paginationOffset":{"name":"offset","in":"query","description":"The first element (of the total list of elements) to include in the response. Use this parameter together with the limit for pagination.","required":false,"schema":{"type":"integer","format":"int32","default":0,"minimum":0}},"paginationLimit":{"name":"limit","in":"query","description":"The maximum number of elements to return. Use this parameter together with the offset for pagination.","required":false,"schema":{"type":"integer","format":"int32","default":100,"minimum":1,"maximum":1000}},"vulnerabilityId":{"name":"filter.vulnerabilityId","in":"query","description":"Filter resources by vulnerabilityId.","required":false,"schema":{"type":"string"}}},"schemas":{"RegistryArtifactsReadList":{"required":["id","type","href","offset","limit","_links"],"type":"object","properties":{"id":{"type":"string","enum":["artifacts"]},"type":{"type":"string","enum":["collection"]},"href":{"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/ArtifactRead"}},"offset":{"$ref":"#/components/schemas/Offset"},"limit":{"$ref":"#/components/schemas/Limit"},"_links":{"$ref":"#/components/schemas/Links"}}},"ArtifactRead":{"required":["id","type","href","metadata","properties"],"type":"object","properties":{"id":{"$ref":"#/components/schemas/Digest"},"type":{"type":"string","enum":["artifact"]},"href":{"type":"string"},"metadata":{"$ref":"#/components/schemas/ArtifactMetadata"},"properties":{"$ref":"#/components/schemas/Artifact"}}},"Digest":{"type":"string","description":"The digest of the artifact"},"ArtifactMetadata":{"allOf":[{"$ref":"#/components/schemas/Metadata"},{"required":["lastPushedAt","pushCount","pullCount"],"type":"object","properties":{"lastPushedAt":{"type":"string","format":"date-time","description":"The date and time the artifact was last pushed"},"lastPulledAt":{"type":"string","format":"date-time","description":"The date and time the artifact was last pulled"},"lastScannedAt":{"type":"string","format":"date-time","description":"The date and time the artifact was last scanned"},"pushCount":{"type":"integer","format":"int64","description":"The number of times the artifact was pushed"},"pullCount":{"type":"integer","format":"int64","description":"The number of times the artifact was pulled"},"vulnMaxSeverity":{"description":"The maximum vulnerability severity of the artifact, if any","allOf":[{"$ref":"#/components/schemas/VulnerabilitySeverity"}]},"vulnTotalScore":{"type":"number","format":"float","description":"The total CVSS score of all vulnerabilities of the artifact"},"vulnTotalCount":{"type":"integer","format":"int64","description":"The total number of vulnerabilities of the artifact"},"vulnFixableCount":{"type":"integer","format":"int64","description":"The number of fixable vulnerabilities of the artifact"}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}},"VulnerabilitySeverity":{"type":"string","description":"The CVSS vulnerability severity rating"},"Artifact":{"required":["repositoryName","digest","mediaType"],"type":"object","properties":{"repositoryName":{"type":"string"},"digest":{"$ref":"#/components/schemas/Digest"},"tags":{"$ref":"#/components/schemas/Tags"},"mediaType":{"type":"string","description":"The media type of the artifact"}}},"Tags":{"type":"array","items":{"type":"string"},"description":"The tags of an artifact"},"Offset":{"description":"The offset specified in the request (if none was specified, the default\noffset is 0).\n","type":"integer","minimum":0,"readOnly":true},"Limit":{"description":"The limit specified in the request (if none was specified, use the\nendpoint's default pagination limit).\n","type":"integer","minimum":0,"readOnly":true},"Links":{"description":"URLs to navigate the different pages. As of now we always only return a\nsingle page.\n","type":"object","properties":{"prev":{"description":"URL (with offset and limit parameters) of the previous page; only\npresent if offset is greater than 0.\n","type":"string","format":"uri","readOnly":true},"self":{"description":"URL (with offset and limit parameters) of the current page.\n","type":"string","format":"uri","readOnly":true},"next":{"description":"URL (with offset and limit parameters) of the next page; only\npresent if offset + limit is less than the total number of elements.\n","type":"string","format":"uri","readOnly":true}}},"Error":{"description":"The Error object is used to represent an error response from the API.\n","type":"object","properties":{"httpStatus":{"type":"integer","description":"The HTTP status code of the operation."},"messages":{"type":"array","description":"A list of error messages.\n","items":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code\n"},"message":{"type":"string","description":"A human readable explanation specific to this occurrence of the\nproblem.\n"}}}}}}},"responses":{"BadRequest":{"description":"### Bad Request\nThe request send to the API was malformed.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"### Unauthorized\nThe request is missing authorization information or the authorization information provided are expired.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotAllowed":{"description":"### Not Allowed\nThe user issuing the request does not have the needed permissions.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"TooManyRequests":{"description":"### Too Many Requests\nThe user has sent too many requests in a given amount of time.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalError":{"description":"### Internal Server Error\nAn internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServiceUnavailable":{"description":"### Service Unavailable\nThe server is currently unable to handle the request due to a temporary overloading or maintenance of the server.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnexpectedError":{"description":"### Unexpected Internal Server Error\nAn unexpected internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/registries/{registryId}/artifacts":{"get":{"operationId":"registriesArtifactsGet","summary":"Retrieve all Artifacts by Registry","description":"This endpoint enables retrieving all Artifacts using\npagination and optional filters.\n","parameters":[{"name":"registryId","in":"path","schema":{"type":"string","format":"uuid"},"required":true,"description":"The ID (UUID) of the Registry."},{"$ref":"#/components/parameters/paginationOffset"},{"$ref":"#/components/parameters/paginationLimit"},{"$ref":"#/components/parameters/vulnerabilityId"},{"name":"orderBy","in":"query","description":"The field to order the results by. If not provided, the results will be ordered by the default field.","schema":{"type":"string","default":"-pullCount","enum":["-pullCount","-pushCount","-lastPush","-lastPull","-lastScan","-vulnTotalCount","-vulnFixableCount","pullCount","pushCount","lastPush","lastPull","lastScan","vulnTotalCount","vulnFixableCount"]}}],"tags":["Artifacts"],"responses":{"200":{"description":"Returned all requested Artifacts successfully.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryArtifactsReadList"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/NotAllowed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"},"default":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Retrieve all Artifacts by Repository

> This endpoint enables retrieving all Artifacts using\
> pagination and optional filters.<br>

```json
{"openapi":"3.0.3","info":{"title":"Container Registry service","version":"1.2.2"},"tags":[{"name":"Artifacts","description":"Artifacts are the individual files stored in a repository\n\nThis tag groups all operations for artifacts.\n"}],"servers":[{"url":"https://api.ionos.com/containerregistries","description":"Production"}],"security":[{"tokenAuth":[]}],"components":{"securitySchemes":{"tokenAuth":{"type":"apiKey","name":"Authorization","in":"header","description":"Please provide header value as 'Bearer' and don't forget to add 'Bearer' HTTP Authorization Scheme before the token        "}},"parameters":{"paginationOffset":{"name":"offset","in":"query","description":"The first element (of the total list of elements) to include in the response. Use this parameter together with the limit for pagination.","required":false,"schema":{"type":"integer","format":"int32","default":0,"minimum":0}},"paginationLimit":{"name":"limit","in":"query","description":"The maximum number of elements to return. Use this parameter together with the offset for pagination.","required":false,"schema":{"type":"integer","format":"int32","default":100,"minimum":1,"maximum":1000}}},"schemas":{"ArtifactReadList":{"required":["id","type","href","offset","limit","_links"],"type":"object","properties":{"id":{"type":"string","enum":["artifacts"]},"type":{"type":"string","enum":["collection"]},"href":{"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/ArtifactRead"}},"offset":{"$ref":"#/components/schemas/Offset"},"limit":{"$ref":"#/components/schemas/Limit"},"_links":{"$ref":"#/components/schemas/Links"}}},"ArtifactRead":{"required":["id","type","href","metadata","properties"],"type":"object","properties":{"id":{"$ref":"#/components/schemas/Digest"},"type":{"type":"string","enum":["artifact"]},"href":{"type":"string"},"metadata":{"$ref":"#/components/schemas/ArtifactMetadata"},"properties":{"$ref":"#/components/schemas/Artifact"}}},"Digest":{"type":"string","description":"The digest of the artifact"},"ArtifactMetadata":{"allOf":[{"$ref":"#/components/schemas/Metadata"},{"required":["lastPushedAt","pushCount","pullCount"],"type":"object","properties":{"lastPushedAt":{"type":"string","format":"date-time","description":"The date and time the artifact was last pushed"},"lastPulledAt":{"type":"string","format":"date-time","description":"The date and time the artifact was last pulled"},"lastScannedAt":{"type":"string","format":"date-time","description":"The date and time the artifact was last scanned"},"pushCount":{"type":"integer","format":"int64","description":"The number of times the artifact was pushed"},"pullCount":{"type":"integer","format":"int64","description":"The number of times the artifact was pulled"},"vulnMaxSeverity":{"description":"The maximum vulnerability severity of the artifact, if any","allOf":[{"$ref":"#/components/schemas/VulnerabilitySeverity"}]},"vulnTotalScore":{"type":"number","format":"float","description":"The total CVSS score of all vulnerabilities of the artifact"},"vulnTotalCount":{"type":"integer","format":"int64","description":"The total number of vulnerabilities of the artifact"},"vulnFixableCount":{"type":"integer","format":"int64","description":"The number of fixable vulnerabilities of the artifact"}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}},"VulnerabilitySeverity":{"type":"string","description":"The CVSS vulnerability severity rating"},"Artifact":{"required":["repositoryName","digest","mediaType"],"type":"object","properties":{"repositoryName":{"type":"string"},"digest":{"$ref":"#/components/schemas/Digest"},"tags":{"$ref":"#/components/schemas/Tags"},"mediaType":{"type":"string","description":"The media type of the artifact"}}},"Tags":{"type":"array","items":{"type":"string"},"description":"The tags of an artifact"},"Offset":{"description":"The offset specified in the request (if none was specified, the default\noffset is 0).\n","type":"integer","minimum":0,"readOnly":true},"Limit":{"description":"The limit specified in the request (if none was specified, use the\nendpoint's default pagination limit).\n","type":"integer","minimum":0,"readOnly":true},"Links":{"description":"URLs to navigate the different pages. As of now we always only return a\nsingle page.\n","type":"object","properties":{"prev":{"description":"URL (with offset and limit parameters) of the previous page; only\npresent if offset is greater than 0.\n","type":"string","format":"uri","readOnly":true},"self":{"description":"URL (with offset and limit parameters) of the current page.\n","type":"string","format":"uri","readOnly":true},"next":{"description":"URL (with offset and limit parameters) of the next page; only\npresent if offset + limit is less than the total number of elements.\n","type":"string","format":"uri","readOnly":true}}},"Error":{"description":"The Error object is used to represent an error response from the API.\n","type":"object","properties":{"httpStatus":{"type":"integer","description":"The HTTP status code of the operation."},"messages":{"type":"array","description":"A list of error messages.\n","items":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code\n"},"message":{"type":"string","description":"A human readable explanation specific to this occurrence of the\nproblem.\n"}}}}}}},"responses":{"BadRequest":{"description":"### Bad Request\nThe request send to the API was malformed.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"### Unauthorized\nThe request is missing authorization information or the authorization information provided are expired.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotAllowed":{"description":"### Not Allowed\nThe user issuing the request does not have the needed permissions.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"TooManyRequests":{"description":"### Too Many Requests\nThe user has sent too many requests in a given amount of time.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalError":{"description":"### Internal Server Error\nAn internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServiceUnavailable":{"description":"### Service Unavailable\nThe server is currently unable to handle the request due to a temporary overloading or maintenance of the server.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnexpectedError":{"description":"### Unexpected Internal Server Error\nAn unexpected internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/registries/{registryId}/repositories/{repositoryName}/artifacts":{"get":{"operationId":"registriesRepositoriesArtifactsGet","summary":"Retrieve all Artifacts by Repository","description":"This endpoint enables retrieving all Artifacts using\npagination and optional filters.\n","parameters":[{"name":"registryId","in":"path","schema":{"type":"string","format":"uuid"},"required":true,"description":"The ID (UUID) of the Registry."},{"name":"repositoryName","in":"path","schema":{"type":"string","maxLength":256},"required":true,"description":"The Name of the Repository."},{"$ref":"#/components/parameters/paginationOffset"},{"$ref":"#/components/parameters/paginationLimit"},{"name":"orderBy","in":"query","description":"The field to order the results by. If not provided, the results will be ordered by the default field.","schema":{"type":"string","default":"-lastPush","enum":["-lastPush","-lastPull","-lastScan","-pullCount","-pushCount","-vulnMaxSeverity","-vulnTotalScore","-vulnTotalCount","-vulnFixableCount","lastPush","lastPull","lastScan","pullCount","pushCount","vulnMaxSeverity","vulnTotalScore","vulnTotalCount","vulnFixableCount"]}}],"tags":["Artifacts"],"responses":{"200":{"description":"Returned all requested Artifacts successfully.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArtifactReadList"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/NotAllowed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"},"default":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Retrieve Artifact

> Returns the Artifact by Digest.

```json
{"openapi":"3.0.3","info":{"title":"Container Registry service","version":"1.2.2"},"tags":[{"name":"Artifacts","description":"Artifacts are the individual files stored in a repository\n\nThis tag groups all operations for artifacts.\n"}],"servers":[{"url":"https://api.ionos.com/containerregistries","description":"Production"}],"security":[{"tokenAuth":[]}],"components":{"securitySchemes":{"tokenAuth":{"type":"apiKey","name":"Authorization","in":"header","description":"Please provide header value as 'Bearer' and don't forget to add 'Bearer' HTTP Authorization Scheme before the token        "}},"schemas":{"ArtifactRead":{"required":["id","type","href","metadata","properties"],"type":"object","properties":{"id":{"$ref":"#/components/schemas/Digest"},"type":{"type":"string","enum":["artifact"]},"href":{"type":"string"},"metadata":{"$ref":"#/components/schemas/ArtifactMetadata"},"properties":{"$ref":"#/components/schemas/Artifact"}}},"Digest":{"type":"string","description":"The digest of the artifact"},"ArtifactMetadata":{"allOf":[{"$ref":"#/components/schemas/Metadata"},{"required":["lastPushedAt","pushCount","pullCount"],"type":"object","properties":{"lastPushedAt":{"type":"string","format":"date-time","description":"The date and time the artifact was last pushed"},"lastPulledAt":{"type":"string","format":"date-time","description":"The date and time the artifact was last pulled"},"lastScannedAt":{"type":"string","format":"date-time","description":"The date and time the artifact was last scanned"},"pushCount":{"type":"integer","format":"int64","description":"The number of times the artifact was pushed"},"pullCount":{"type":"integer","format":"int64","description":"The number of times the artifact was pulled"},"vulnMaxSeverity":{"description":"The maximum vulnerability severity of the artifact, if any","allOf":[{"$ref":"#/components/schemas/VulnerabilitySeverity"}]},"vulnTotalScore":{"type":"number","format":"float","description":"The total CVSS score of all vulnerabilities of the artifact"},"vulnTotalCount":{"type":"integer","format":"int64","description":"The total number of vulnerabilities of the artifact"},"vulnFixableCount":{"type":"integer","format":"int64","description":"The number of fixable vulnerabilities of the artifact"}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}},"VulnerabilitySeverity":{"type":"string","description":"The CVSS vulnerability severity rating"},"Artifact":{"required":["repositoryName","digest","mediaType"],"type":"object","properties":{"repositoryName":{"type":"string"},"digest":{"$ref":"#/components/schemas/Digest"},"tags":{"$ref":"#/components/schemas/Tags"},"mediaType":{"type":"string","description":"The media type of the artifact"}}},"Tags":{"type":"array","items":{"type":"string"},"description":"The tags of an artifact"},"Error":{"description":"The Error object is used to represent an error response from the API.\n","type":"object","properties":{"httpStatus":{"type":"integer","description":"The HTTP status code of the operation."},"messages":{"type":"array","description":"A list of error messages.\n","items":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code\n"},"message":{"type":"string","description":"A human readable explanation specific to this occurrence of the\nproblem.\n"}}}}}}},"responses":{"BadRequest":{"description":"### Bad Request\nThe request send to the API was malformed.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"### Unauthorized\nThe request is missing authorization information or the authorization information provided are expired.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotAllowed":{"description":"### Not Allowed\nThe user issuing the request does not have the needed permissions.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFound":{"description":"### Not Found\nThe resource that was requested could not be found.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"TooManyRequests":{"description":"### Too Many Requests\nThe user has sent too many requests in a given amount of time.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalError":{"description":"### Internal Server Error\nAn internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServiceUnavailable":{"description":"### Service Unavailable\nThe server is currently unable to handle the request due to a temporary overloading or maintenance of the server.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnexpectedError":{"description":"### Unexpected Internal Server Error\nAn unexpected internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/registries/{registryId}/repositories/{repositoryName}/artifacts/{digest}":{"get":{"operationId":"registriesRepositoriesArtifactsFindByDigest","summary":"Retrieve Artifact","tags":["Artifacts"],"description":"Returns the Artifact by Digest.","parameters":[{"name":"registryId","in":"path","schema":{"type":"string","format":"uuid"},"required":true,"description":"The ID (UUID) of the Registry."},{"name":"repositoryName","in":"path","schema":{"type":"string","maxLength":256},"required":true,"description":"The Name of the Repository."},{"name":"digest","in":"path","schema":{"type":"string","maxLength":128},"required":true,"description":"The Digest of the Artifact."}],"responses":{"200":{"description":"Getting Artifact was successful.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArtifactRead"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/NotAllowed"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"},"default":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Retrieve all Vulnerabilities

> This endpoint enables retrieving all Vulnerabilities using\
> pagination and optional filters.<br>

```json
{"openapi":"3.0.3","info":{"title":"Container Registry service","version":"1.2.2"},"tags":[{"name":"Artifacts","description":"Artifacts are the individual files stored in a repository\n\nThis tag groups all operations for artifacts.\n"}],"servers":[{"url":"https://api.ionos.com/containerregistries","description":"Production"}],"security":[{"tokenAuth":[]}],"components":{"securitySchemes":{"tokenAuth":{"type":"apiKey","name":"Authorization","in":"header","description":"Please provide header value as 'Bearer' and don't forget to add 'Bearer' HTTP Authorization Scheme before the token        "}},"parameters":{"paginationOffset":{"name":"offset","in":"query","description":"The first element (of the total list of elements) to include in the response. Use this parameter together with the limit for pagination.","required":false,"schema":{"type":"integer","format":"int32","default":0,"minimum":0}},"paginationLimit":{"name":"limit","in":"query","description":"The maximum number of elements to return. Use this parameter together with the offset for pagination.","required":false,"schema":{"type":"integer","format":"int32","default":100,"minimum":1,"maximum":1000}},"severity":{"name":"filter.severity","in":"query","description":"Filter resources by vulnerability severity. Supports comma-separated values (e.g., \"medium,high,critical\").","required":false,"schema":{"$ref":"#/components/schemas/VulnerabilitySeverity"}},"fixable":{"name":"filter.fixable","in":"query","description":"Filter resources by fixable (i.e. remediation action is available)","required":false,"schema":{"type":"boolean"}}},"schemas":{"VulnerabilitySeverity":{"type":"string","description":"The CVSS vulnerability severity rating"},"ArtifactVulnerabilityReadList":{"required":["id","type","href","offset","limit","_links"],"type":"object","properties":{"id":{"type":"string","enum":["vulnerabilities"]},"type":{"type":"string","enum":["collection"]},"href":{"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/VulnerabilityRead"}},"offset":{"$ref":"#/components/schemas/Offset"},"limit":{"$ref":"#/components/schemas/Limit"},"_links":{"$ref":"#/components/schemas/Links"}}},"VulnerabilityRead":{"required":["id","type","href","metadata","properties"],"type":"object","properties":{"id":{"$ref":"#/components/schemas/VulnerabilityId"},"type":{"type":"string","enum":["vulnerability"]},"href":{"type":"string"},"metadata":{"$ref":"#/components/schemas/VulnerabilityMetadata"},"properties":{"$ref":"#/components/schemas/Vulnerability"}}},"VulnerabilityId":{"type":"string","description":"The ID of the vulnerability allocated by the advisory database"},"VulnerabilityMetadata":{"required":["publishedAt"],"type":"object","properties":{"publishedAt":{"type":"string","format":"date-time","description":"The date and time the vulnerability was published"},"updatedAt":{"type":"string","format":"date-time","description":"The date and time the vulnerability was last updated"}}},"Vulnerability":{"required":["description","dataSource","fixable","severity","score","affects"],"type":"object","properties":{"description":{"type":"string","description":"A description of the vulnerability as provided by the source."},"recommendations":{"type":"string","description":"Recommendations for the vulnerability as provided by the source."},"dataSource":{"type":"object","description":"The source that published the vulnerability.","properties":{"id":{"type":"string","description":"The id of the source."},"url":{"type":"string","description":"The URL of the source."}}},"fixable":{"type":"boolean","description":"Indicates whether the vulnerability can be fixed by updating the affected package."},"affects":{"type":"array","items":{"$ref":"#/components/schemas/Purl"}},"references":{"type":"array","description":"Published advisories of the vulnerability if provided.","items":{"type":"string","description":"Location where the advisory can be obtained."}},"severity":{"$ref":"#/components/schemas/VulnerabilitySeverity"},"score":{"type":"number","format":"float","description":"The CVSS score of the vulnerability"}}},"Purl":{"required":["type","name","version"],"type":"object","properties":{"type":{"type":"string","description":"The affected package type"},"name":{"type":"string","description":"The affected package name"},"version":{"type":"string","description":"The affected package version"}}},"Offset":{"description":"The offset specified in the request (if none was specified, the default\noffset is 0).\n","type":"integer","minimum":0,"readOnly":true},"Limit":{"description":"The limit specified in the request (if none was specified, use the\nendpoint's default pagination limit).\n","type":"integer","minimum":0,"readOnly":true},"Links":{"description":"URLs to navigate the different pages. As of now we always only return a\nsingle page.\n","type":"object","properties":{"prev":{"description":"URL (with offset and limit parameters) of the previous page; only\npresent if offset is greater than 0.\n","type":"string","format":"uri","readOnly":true},"self":{"description":"URL (with offset and limit parameters) of the current page.\n","type":"string","format":"uri","readOnly":true},"next":{"description":"URL (with offset and limit parameters) of the next page; only\npresent if offset + limit is less than the total number of elements.\n","type":"string","format":"uri","readOnly":true}}},"Error":{"description":"The Error object is used to represent an error response from the API.\n","type":"object","properties":{"httpStatus":{"type":"integer","description":"The HTTP status code of the operation."},"messages":{"type":"array","description":"A list of error messages.\n","items":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code\n"},"message":{"type":"string","description":"A human readable explanation specific to this occurrence of the\nproblem.\n"}}}}}}},"responses":{"BadRequest":{"description":"### Bad Request\nThe request send to the API was malformed.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"### Unauthorized\nThe request is missing authorization information or the authorization information provided are expired.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotAllowed":{"description":"### Not Allowed\nThe user issuing the request does not have the needed permissions.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"TooManyRequests":{"description":"### Too Many Requests\nThe user has sent too many requests in a given amount of time.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"InternalError":{"description":"### Internal Server Error\nAn internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServiceUnavailable":{"description":"### Service Unavailable\nThe server is currently unable to handle the request due to a temporary overloading or maintenance of the server.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"UnexpectedError":{"description":"### Unexpected Internal Server Error\nAn unexpected internal error occurred. We apologize for the inconvenience!\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/registries/{registryId}/repositories/{repositoryName}/artifacts/{digest}/vulnerabilities":{"get":{"operationId":"registriesRepositoriesArtifactsVulnerabilitiesGet","summary":"Retrieve all Vulnerabilities","description":"This endpoint enables retrieving all Vulnerabilities using\npagination and optional filters.\n","parameters":[{"name":"registryId","in":"path","schema":{"type":"string","format":"uuid"},"required":true,"description":"The ID (UUID) of the Registry."},{"name":"repositoryName","in":"path","schema":{"type":"string","maxLength":256},"required":true,"description":"The Name of the Repository."},{"name":"digest","in":"path","schema":{"type":"string","maxLength":128},"required":true,"description":"The Digest of the Artifact."},{"$ref":"#/components/parameters/paginationOffset"},{"$ref":"#/components/parameters/paginationLimit"},{"$ref":"#/components/parameters/severity"},{"$ref":"#/components/parameters/fixable"},{"name":"orderBy","in":"query","description":"The field to order the results by. If not provided, the results will be ordered by the default field.","schema":{"type":"string","default":"-score","enum":["-score","-severity","-publishedAt","-updatedAt","-fixable","score","severity","publishedAt","updatedAt","fixable"]}}],"tags":["Artifacts"],"responses":{"200":{"description":"Returned all requested Vulnerabilities successfully.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArtifactVulnerabilityReadList"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/NotAllowed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"},"default":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```
