{
  "components": {
    "headers": {
      "X-RateLimit-Limit": {
        "description": "The number of allowed requests in the current period",
        "schema": {
          "format": "int64",
          "maximum": 9223372036854776000,
          "minimum": -9223372036854776000,
          "type": "integer"
        }
      }
    },
    "schemas": {
      "Callback": {
        "properties": {
          "key": {
            "format": "regex",
            "maxLength": 2048,
            "nullable": true,
            "type": "string"
          },
          "uri": {
            "format": "regex",
            "maxLength": 2048,
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "ErrorRsp": {
        "properties": {
          "error_code": {
            "format": "int64",
            "maximum": 9223372036854776000,
            "minimum": -9223372036854776000,
            "type": "integer"
          },
          "error_desc": {
            "format": "regex",
            "maxLength": 1000,
            "type": "string"
          }
        },
        "type": "object"
      },
      "GetActionsRsp": {
        "properties": {
          "actions": {
            "items": {
              "enum": [
                "train",
                "inference",
                "export",
                "evaluate",
                "distill",
                "convert"
              ],
              "type": "string"
            },
            "maxItems": 9223372036854776000,
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetJobStatusRsp": {
        "properties": {
          "status": {
            "enum": [
              "Done",
              "Processing",
              "Error",
              "Pending",
              "Canceled"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "GetJobsRsp": {
        "properties": {
          "jobs": {
            "items": {
              "format": "uuid",
              "maxLength": 36,
              "nullable": true,
              "type": "string"
            },
            "maxItems": 36,
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetNetworksRsp": {
        "properties": {
          "networks": {
            "items": {
              "format": "regex",
              "maxLength": 2048,
              "type": "string"
            },
            "maxItems": 9223372036854776000,
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetPtmsRsp": {
        "properties": {
          "ptms": {
            "items": {
              "format": "regex",
              "maxLength": 2048,
              "type": "string"
            },
            "maxItems": 9223372036854776000,
            "type": "array"
          }
        },
        "type": "object"
      },
      "MLOps": {
        "properties": {
          "key": {
            "format": "regex",
            "maxLength": 2048,
            "nullable": true,
            "type": "string"
          },
          "name": {
            "enum": [
              "ClearML",
              "WeightAndBiases"
            ],
            "type": "string"
          },
          "uri": {
            "format": "regex",
            "maxLength": 2048,
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "PostActionReq": {
        "properties": {
          "callback": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Callback"
              }
            ],
            "nullable": true
          },
          "mlops": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MLOps"
              }
            ],
            "nullable": true
          },
          "ptm": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Ptm"
              }
            ],
            "nullable": true
          },
          "specs": {},
          "storage": {}
        },
        "type": "object"
      },
      "PostActionRsp": {
        "properties": {
          "job_id": {
            "format": "uuid",
            "maxLength": 36,
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "Ptm": {
        "properties": {
          "key": {
            "format": "regex",
            "maxLength": 2048,
            "nullable": true,
            "type": "string"
          },
          "uri": {
            "format": "regex",
            "maxLength": 2048,
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "PtmReq": {
        "properties": {
          "ngc_key": {
            "format": "regex",
            "maxLength": 1000,
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "securitySchemes": {
      "api-key": {
        "in": "header",
        "name": "ngc_key",
        "type": "apiKey"
      }
    }
  },
  "info": {
    "description": "NVIDIA TAO DNN API document",
    "title": "NVIDIA TAO DNN API",
    "version": "v5.3.0"
  },
  "openapi": "3.0.3",
  "paths": {
    "/api/v1/neural_networks": {
      "get": {
        "description": "Returns the supported neural networks",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetNetworksRsp"
                }
              }
            },
            "description": "Retuned the list of supported neural networks",
            "headers": {
              "X-RateLimit-Limit": {
                "$ref": "#/components/headers/X-RateLimit-Limit"
              }
            }
          }
        },
        "summary": "List supported neural networks",
        "tags": [
          "NEURAL NETWORKS"
        ]
      }
    },
    "/api/v1/neural_networks/{neural_network_name}/actions": {
      "get": {
        "description": "Returns the supported actions for a given neural network",
        "parameters": [
          {
            "description": "Neural Network Name",
            "in": "path",
            "name": "neural_network_name",
            "required": true,
            "schema": {
              "enum": [
                "action_recognition",
                "bevfusion",
                "centerpose",
                "classification_pyt",
                "deformable_detr",
                "dino",
                "grounding_dino",
                "mal",
                "mask2former",
                "mask_grounding_dino",
                "ml_recog",
                "ocdnet",
                "ocrnet",
                "optical_inspection",
                "pointpillars",
                "pose_classification",
                "re_identification",
                "segformer",
                "visual_changenet"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetActionsRsp"
                }
              }
            },
            "description": "Retuned the list of supported actions for a given neural network",
            "headers": {
              "X-RateLimit-Limit": {
                "$ref": "#/components/headers/X-RateLimit-Limit"
              }
            }
          }
        },
        "summary": "List supported actions for a given neural network",
        "tags": [
          "NEURAL NETWORKS"
        ],
        "security": [
          {
            "api-key": []
          }
        ]
      }
    },
    "/api/v1/neural_networks/{neural_network_name}/actions/{action_name}": {
      "post": {
        "description": "Returns the job ID for requested action",
        "parameters": [
          {
            "description": "Neural Network Name",
            "in": "path",
            "name": "neural_network_name",
            "required": true,
            "schema": {
              "enum": [
                "action_recognition",
                "bevfusion",
                "centerpose",
                "classification_pyt",
                "deformable_detr",
                "dino",
                "grounding_dino",
                "mal",
                "mask2former",
                "mask_grounding_dino",
                "ml_recog",
                "ocdnet",
                "ocrnet",
                "optical_inspection",
                "pointpillars",
                "pose_classification",
                "re_identification",
                "segformer",
                "visual_changenet"
              ],
              "type": "string"
            }
          },
          {
            "description": "Action Name",
            "in": "path",
            "name": "action_name",
            "required": true,
            "schema": {
              "enum": [
                "convert",
                "distill",
                "evaluate",
                "export",
                "inference",
                "train"
              ],
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PostActionReq"
              }
            }
          },
          "description": "Run action",
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PostActionRsp"
                }
              }
            },
            "description": "Retuned the job ID for requested action",
            "headers": {
              "X-RateLimit-Limit": {
                "$ref": "#/components/headers/X-RateLimit-Limit"
              }
            }
          }
        },
        "summary": "Run an action",
        "tags": [
          "NEURAL NETWORKS"
        ],
        "security": [
          {
            "api-key": []
          }
        ]
      }
    },
    "/api/v1/neural_networks/{neural_network_name}/actions/{action_name}/{job_id}": {
      "get": {
        "description": "Returns the job status",
        "parameters": [
          {
            "description": "Neural Network Name",
            "in": "path",
            "name": "neural_network_name",
            "required": true,
            "schema": {
              "enum": [
                "action_recognition",
                "bevfusion",
                "centerpose",
                "classification_pyt",
                "deformable_detr",
                "dino",
                "grounding_dino",
                "mal",
                "mask2former",
                "mask_grounding_dino",
                "ml_recog",
                "ocdnet",
                "ocrnet",
                "optical_inspection",
                "pointpillars",
                "pose_classification",
                "re_identification",
                "segformer",
                "visual_changenet"
              ],
              "type": "string"
            }
          },
          {
            "description": "Action Name",
            "in": "path",
            "name": "action_name",
            "required": true,
            "schema": {
              "enum": [
                "convert",
                "distill",
                "evaluate",
                "export",
                "inference",
                "train"
              ],
              "type": "string"
            }
          },
          {
            "description": "Job ID",
            "in": "path",
            "name": "job_id",
            "required": true,
            "schema": {
              "format": "uuid",
              "maxLength": 36,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetJobStatusRsp"
                }
              }
            },
            "description": "Retuned the job status",
            "headers": {
              "X-RateLimit-Limit": {
                "$ref": "#/components/headers/X-RateLimit-Limit"
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorRsp"
                }
              }
            },
            "description": "Bad request, see reply body for details",
            "headers": {
              "X-RateLimit-Limit": {
                "$ref": "#/components/headers/X-RateLimit-Limit"
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorRsp"
                }
              }
            },
            "description": "Job ID not found",
            "headers": {
              "X-RateLimit-Limit": {
                "$ref": "#/components/headers/X-RateLimit-Limit"
              }
            }
          }
        },
        "summary": "Get job status",
        "tags": [
          "NEURAL NETWORKS"
        ]
      }
    },
    "/api/v1/neural_networks/{neural_network_name}/actions/{action_name}:ids": {
      "get": {
        "description": "Returns the list of job IDs for a given action",
        "parameters": [
          {
            "description": "Neural Network Name",
            "in": "path",
            "name": "neural_network_name",
            "required": true,
            "schema": {
              "enum": [
                "action_recognition",
                "bevfusion",
                "centerpose",
                "classification_pyt",
                "deformable_detr",
                "dino",
                "grounding_dino",
                "mal",
                "mask2former",
                "mask_grounding_dino",
                "ml_recog",
                "ocdnet",
                "ocrnet",
                "optical_inspection",
                "pointpillars",
                "pose_classification",
                "re_identification",
                "segformer",
                "visual_changenet"
              ],
              "type": "string"
            }
          },
          {
            "description": "Action Name",
            "in": "path",
            "name": "action_name",
            "required": true,
            "schema": {
              "enum": [
                "convert",
                "distill",
                "evaluate",
                "export",
                "inference",
                "train"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetJobsRsp"
                }
              }
            },
            "description": "Retuned the list of job IDs for a given network action",
            "headers": {
              "X-RateLimit-Limit": {
                "$ref": "#/components/headers/X-RateLimit-Limit"
              }
            }
          }
        },
        "summary": "List jobs for a given action",
        "tags": [
          "NEURAL NETWORKS"
        ]
      }
    },
    "/api/v1/neural_networks/{neural_network_name}/actions/{action_name}:schema": {
      "get": {
        "description": "Returns the schema for a given neural network action specs",
        "parameters": [
          {
            "description": "Neural Network Name",
            "in": "path",
            "name": "neural_network_name",
            "required": true,
            "schema": {
              "enum": [
                "action_recognition",
                "bevfusion",
                "centerpose",
                "classification_pyt",
                "deformable_detr",
                "dino",
                "grounding_dino",
                "mal",
                "mask2former",
                "mask_grounding_dino",
                "ml_recog",
                "ocdnet",
                "ocrnet",
                "optical_inspection",
                "pointpillars",
                "pose_classification",
                "re_identification",
                "segformer",
                "visual_changenet"
              ],
              "type": "string"
            }
          },
          {
            "description": "Action Name",
            "in": "path",
            "name": "action_name",
            "required": true,
            "schema": {
              "enum": [
                "convert",
                "distill",
                "evaluate",
                "export",
                "inference",
                "train"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            },
            "description": "Retuned the json-schema object for a given neural network action specs",
            "headers": {
              "X-RateLimit-Limit": {
                "$ref": "#/components/headers/X-RateLimit-Limit"
              }
            }
          }
        },
        "summary": "Get action specs schema",
        "tags": [
          "NEURAL NETWORKS"
        ]
      }
    },
    "/api/v1/neural_networks/{neural_network_name}/pretrained_models": {
      "post": {
        "description": "Returns the supported pretrained models for a given neural network",
        "parameters": [
          {
            "description": "Neural Network Name",
            "in": "path",
            "name": "neural_network_name",
            "required": true,
            "schema": {
              "enum": [
                "action_recognition",
                "bevfusion",
                "centerpose",
                "classification_pyt",
                "deformable_detr",
                "dino",
                "grounding_dino",
                "mal",
                "mask2former",
                "mask_grounding_dino",
                "ml_recog",
                "ocdnet",
                "ocrnet",
                "optical_inspection",
                "pointpillars",
                "pose_classification",
                "re_identification",
                "segformer",
                "visual_changenet"
              ],
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PtmReq"
              }
            }
          },
          "description": "Login request with ngc_key",
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetPtmsRsp"
                }
              }
            },
            "description": "Retuned the list of supported pretrained models for a given neural network",
            "headers": {
              "X-RateLimit-Limit": {
                "$ref": "#/components/headers/X-RateLimit-Limit"
              }
            }
          }
        },
        "security": [
          {
            "api-key": []
          }
        ],
        "summary": "List supported pretrained models for a given neural network",
        "tags": [
          "NEURAL NETWORKS"
        ]
      }
    }
  },
  "tags": [
    {
      "description": "Endpoints related to Neural Network Architectures",
      "name": "NEURAL NETWORKS"
    },
    {
      "description": "Endpoints related to NVIDIA Cloud Functions",
      "name": "NVCF"
    },
    {
      "description": "NSPECT-76DN-OP7I",
      "externalDocs": {
        "url": "https://nspect.nvidia.com/review?id=NSPECT-76DN-OP7I"
      },
      "name": "nSpectId"
    }
  ]
}