API Authentication

View as Markdown

NVIDIA DSX Air uses NGC API keys for authenticating API requests. This page covers Air-specific authentication details. For general information about NGC API keys, see the NGC API Keys documentation.

For the full API reference, navigate the API reference.

API Key Types

NGC supports two types of API keys:

Key TypeUse CaseLifecycle
Personal KeyIndividual development, testingTied to user account
Service KeyAutomation, CI/CD pipelinesTied to NGC org (not a user)

For most Air API usage, a Personal Key is sufficient. Use Service Keys when you need automation that shouldn’t depend on an individual user’s account.

Generating API Keys

To generate an API key:

When generating a key, select NVIDIA Air from the services list to grant Air API access.

Using API Keys

Include your API key in the Authorization header:

curl -X GET "https://api.dsx-air.nvidia.com/api/v3/simulations/" \
-H "Authorization: Bearer YOUR_API_KEY"

Roles and Scopes

Air uses a role-based access control system managed through NGC. The Air API checks scopes to authorize requests. How you get scopes depends on the key type:

  • Personal API Keys: You assign roles to users in NGC. Air automatically derives scopes from those roles.
  • Service Keys: You assign scopes directly when creating the key, giving you fine-grained control.

Roles

Roles are assigned to users in your NGC organization and apply to Personal API Keys. To manage user roles, see Updating User Roles in the NGC documentation.

RoleDescription
air_userStandard Air user with full simulation access
air_org_adminOrganization-wide access with the same permissions as air_user, applied across the organization
air_instructorCan create and manage training sessions
air_demo_managerCan create, edit, and publish Demo Marketplace content
air_image_uploaderCan upload and edit custom images
air_image_publisherCan upload, edit, and publish images for public availability
air_image_sharerCan create cross-org image sharing links
air_image_claimerCan claim images shared from another organization

Scopes

Scopes are the permissions that the Air API checks to authorize requests. For Personal API Keys, scopes are derived from assigned roles. For Service Keys, you select scopes directly when generating the key.

ScopeDescription
air:simulation_readRead simulation details, nodes, interfaces, services
air:simulation_createCreate simulations via import, clone, or UI
air:simulation_editModify simulation properties and topology
air:simulation_deleteDelete simulations
air:simulation_start_stopStart and stop simulations
air:image_readView published and org images
air:image_writeUpload and edit images
air:image_publishPublish images for public availability (not restricted to any org)
air:image_sharingCreate cross-org image share links
air:image_claimingClaim images shared from another organization
air:marketplace_demo_writeCreate and edit marketplace demos
air:marketplace_demo_publishPublish demos to the marketplace
air:training_instructorCreate and manage training sessions

Role to Scope Mapping

Each role grants the following scopes:

RoleScopes
air_userair:simulation_read, air:simulation_create, air:simulation_edit, air:simulation_delete, air:simulation_start_stop, air:image_read, air:marketplace_demo_write
air_org_adminSame scopes as air_user
air_instructorair:training_instructor
air_demo_managerair:marketplace_demo_write, air:marketplace_demo_publish
air_image_uploaderair:image_read, air:image_write
air_image_publisherair:image_read, air:image_write, air:image_publish
air_image_sharerair:image_sharing
air_image_claimerair:image_claiming