Architecture Overview for NIM Metadata API#
The NIM Metadata API exposes metadata populated by the NIM build process at publish time. A client reads profiles and requirements over HTTP before pulling a container. This page describes that documented publication and consumption flow; endpoint details are in Endpoints.
Components#
The following components publish and consume NIM metadata:
Component |
Role |
|---|---|
NIM build and publishing process |
Populates metadata for a NIM microservice and container tag. |
Tag-level metadata document |
Records profiles, release details, features, and related URLs when those values are supplied at publish time. |
NIM Metadata API |
Returns the document through equivalent HTTP |
HTTP client or automated consumer |
Interprets optional fields and compares profiles against hardware and workload requirements. |
NIM microservice container |
Runs the selected profile after deployment. Access to its metadata does not grant entitlement to pull the container. |
Data Flow#
Metadata moves from publication to profile selection in the following sequence:
The NIM build process populates metadata at publish time.
The client identifies the NIM microservice by
resourceIdand container tag.The client sends an HTTP
GETrequest toapi.ngc.nvidia.com.The API returns JSON metadata or an NGC error envelope.
The client evaluates profiles and records a chosen
profile_idfor deployment.
The response contains only populated values. Missing hardware requirements remain unknown. A 404 response can indicate missing metadata or an incorrect repository path form. Refer to Troubleshooting for 404 checks and Core Concepts Overview for interpretation rules.
Deployment Topologies#
The API is a hosted HTTP service, so there is no metadata server to install as part of this reader workflow. Clients can query it interactively or from automated tooling:
Aspect |
Interactive Client |
Automated Consumer |
|---|---|---|
Purpose |
Inspect a response and compare profiles for known hardware. |
Select candidates from tooling, schedulers, or agents. |
Interface |
curl or a Python HTTP client. |
An HTTP client with explicit handling of absent fields and status codes. |
Guidance |
Service Interactions#
All three metadata request forms return the same JSON body for the same NIM microservice and tag. The following sequence shows the read interaction:
The protocol is HTTPS with JSON responses. For error responses, clients branch
on the HTTP status code and requestStatus.statusCode and record
requestStatus.requestId for diagnosis.
External Integration Points#
The following interfaces provide complementary information:
Integration |
Details |
|---|---|
NGC repository endpoints |
Provide container-level identity and model information in addition to the metadata API’s tag-level document. |
NGC GPU metadata endpoint |
Resolves the device portion of a GPU PCI identifier to display names. |
Deployment tooling |
Consumes the selected |
For request forms and examples, refer to For request forms and examples, refer to Endpoints.