Skip to content

[docker-hub-api] add list namespace repositories endpoint #22934

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

vdamery
Copy link

@vdamery vdamery commented Jun 27, 2025

Description

  • Add "new" list repositories in a given namespace endpoint : GET /v2/namespaces/{namespace}/repositories

After the comments from @thaJeztah

  • Split DVP Data API and Docker Hub API for better visiblity
  • Standardize sub entries in the side menu : Changelog, Deprecated and OpenAPI
  • Deprecated is now a table like in https://docs.docker.com/engine/deprecated/

Related issues or tickets

Reviews

  • Technical review
  • Editorial review
  • Product review

@github-actions github-actions bot added the area/api Relates to Docker API docs label Jun 27, 2025
Copy link

netlify bot commented Jun 27, 2025

Deploy Preview for docsdocker ready!

Name Link
🔨 Latest commit 31209ce
🔍 Latest deploy log https://app.netlify.com/projects/docsdocker/deploys/6863e6f66924e30008f68166
😎 Deploy Preview https://deploy-preview-22934--docsdocker.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

### New

- Add [List repositories](/reference/api/hub/latest/#tag/repositories/operation/listNamespaceRepositories) endpoints for a given `namespace`.
- Deprecate undocumented endpoint `GET /v2/repositories/{namespace}` replaced by [List repositories](/reference/api/hub/latest/#tag/repositories/operation/listNamespaceRepositories).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure what we did in the past, but perhaps for visibility (although there’s only 2 things in the bullets), we could use ### New for the new endpoint, and a ### Deprecations (or similar) for what’s deprecated. That could also add a link to the “deprecated” page (refer to “deprecated” for a list of deprecated API endpoints / API features)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably also want to add a mention in deprecated; not sure if we have a good format for that already, but there’s some existing things that were deprecated; https://github.com/docker/docs/blob/main/content/reference/api/hub/deprecated.md

We should probably start thinking of some more formalized deprecation document (what’s our policy, how announced, etc), although in most cases actually removing endpoints / features from the API may be more complicated, or at least, not without a major version bump of the API and ultimately fully dropping support for prior major versions; https://docs.docker.com/engine/deprecated/

Copy link
Author

@vdamery vdamery Jun 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Screenshot 2025-06-27 at 16 01 42
Screenshot 2025-06-27 at 16 00 52
Screenshot 2025-06-27 at 16 00 33
I have reformat and reorganize a bit "Docker Hub API" and "DVP Data API" to have the same structure : Changelog, Deprecated and OpenAPI.

The message in deprecated is pretty generic and strongly inspired by https://docs.docker.com/engine/deprecated/ with "date" instead of "release" and "endpoint" instead of "feature".

@vdamery vdamery requested a review from craig-osterhout as a code owner June 27, 2025 14:02
@github-actions github-actions bot added the area/hub Issue affects Docker Hub label Jun 27, 2025
@vdamery vdamery requested a review from thaJeztah June 27, 2025 14:13
title: Docker Hub API v1 (deprecated)
weight: 3
aliases:
- /docker-hub/api/deprecated/
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We'll probably want to keep the alias, which is used for redirects

Copy link
Author

@vdamery vdamery Jul 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now http://localhost:1313/docker-hub/api/deprecated/ -> http://localhost:1313/reference/api/hub/deprecated/ OK

---
description: Docker Hub API changelog
title: Docker Hub API changelog
linkTitle: Changelog
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add an alias for the previous URL? Something like;

Suggested change
linkTitle: Changelog
linkTitle: Changelog
aliases:
- /reference/api/hub/latest-changelog/

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now http://localhost:1313/reference/api/hub/latest-changelog/ properly redirect to http://localhost:1313/reference/api/hub/changelog/

linkTitle: DVP Data API
title: Docker Verified Publisher API reference
weight: 4
title: OpenAPI
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like the title went missing here as well; can you add those back (title and a short linkTitle for the navigation)

As this page moved, we'd also want to add aliases here;

Suggested change
title: OpenAPI
title: Docker Verified Publisher API reference
linkTitle: DVP Data API
aliases:
- /reference/api/hub/dvp/

Instead of making latest the canonical URL, we could consider keeping it as index (_index.md), adding /reference/api/hub/dvp/latest/ as alias. We do this for the Engine API, where https://docs.docker.com/reference/api/engine/latest/ (for convenience) links to the versioned URL for the latest API version; https://docs.docker.com/reference/api/engine/version/v1.50/

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now http://localhost:1313/reference/api/hub/dvp/ -> http://localhost:1313/reference/api/dvp/latest/` OK

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know the app behind these dvp endpoints so I would not know what to put as version.
Can this be done later when the team responsible for DVP will update there openapi.yaml ?

And for docker hub api, the endpoints are a collection from multiple services so I don't know what should I put as a version too :/

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can't comment inline because there's no diff in the file; not sure if people reference this file directly (if that's the case, we may need to add a redirect through other means).

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now http://localhost:1313/reference/api/hub/dvp.yaml -> http://localhost:1313/reference/api/dvp/latest.yaml OK

@vdamery vdamery requested a review from thaJeztah July 1, 2025 14:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/api Relates to Docker API docs area/hub Issue affects Docker Hub
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants