{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/oracle/main/json-schema/oracle-endpoint-schema.json",
  "title": "Endpoint",
  "description": "Details of a model endpoint.",
  "x-generated": "2026-10-03",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/oracle-aiservicelanguage-api-openapi.yml#/components/schemas/Endpoint",
  "properties": {
    "alias": {
      "description": "Unique name across user tenancy in a region to identify an endpoint to be used for inferencing.",
      "maxLength": 255,
      "minLength": 1,
      "type": "string"
    },
    "compartmentId": {
      "description": "The [OCID](/Content/General/Concepts/identifiers.htm) for the endpoint compartment.",
      "maxLength": 255,
      "minLength": 1,
      "type": "string"
    },
    "definedTags": {
      "additionalProperties": {
        "additionalProperties": {
          "description": "The value of the tag. Only string, integer and boolean types are supported.\n",
          "type": "object"
        },
        "description": "Key-value pair representing predefined tags' keys and values scoped to a namespace.\nExample: `{\"bar-key\": \"value\"}`\n",
        "type": "object"
      },
      "description": "Defined tags for this resource. Each key is predefined and scoped to a namespace.\nExample: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`\n",
      "type": "object"
    },
    "description": {
      "description": "A short description of the endpoint.",
      "maxLength": 400,
      "minLength": 1,
      "type": "string"
    },
    "displayName": {
      "description": "A user-friendly display name for the resource. It should be unique and can be modified. Avoid entering confidential information.",
      "maxLength": 255,
      "minLength": 1,
      "type": "string"
    },
    "freeformTags": {
      "additionalProperties": {
        "type": "string"
      },
      "description": "Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.\nExample: `{\"bar-key\": \"value\"}`\n",
      "type": "object"
    },
    "id": {
      "description": "Unique identifier endpoint OCID of an endpoint that is immutable on creation.",
      "maxLength": 255,
      "minLength": 1,
      "type": "string"
    },
    "inferenceUnits": {
      "description": "Number of replicas required for this endpoint.",
      "maximum": 10,
      "minimum": 1,
      "type": "integer"
    },
    "lifecycleDetails": {
      "description": "A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in failed state.",
      "maxLength": 400,
      "minLength": 1,
      "type": "string"
    },
    "lifecycleState": {
      "description": "The state of the endpoint.",
      "enum": [
        "DELETING",
        "DELETED",
        "FAILED",
        "CREATING",
        "ACTIVE",
        "UPDATING"
      ],
      "maxLength": 25,
      "minLength": 1,
      "type": "string"
    },
    "modelId": {
      "description": "The [OCID](/iaas/Content/General/Concepts/identifiers.htm) of the model to associate with the endpoint.",
      "maxLength": 255,
      "minLength": 1,
      "type": "string"
    },
    "projectId": {
      "description": "The [OCID](/iaas/Content/General/Concepts/identifiers.htm) of the project to associate with the Endpoint.",
      "maxLength": 255,
      "minLength": 1,
      "type": "string"
    },
    "systemTags": {
      "additionalProperties": {
        "additionalProperties": {
          "description": "The value of the tag. Only string, integer and boolean types are supported.\n",
          "type": "object"
        },
        "description": "Key-value pair representing system tags' keys and values scoped to a namespace.\nExample: `{\"bar-key\": \"value\"}`\n",
        "type": "object"
      },
      "description": "Usage of system tag keys. These predefined keys are scoped to namespaces.\nExample: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }`\n",
      "type": "object"
    },
    "timeCreated": {
      "description": "The time the the endpoint was created. An RFC3339 formatted datetime string.",
      "format": "date-time",
      "type": "string"
    },
    "timeUpdated": {
      "description": "The time the endpoint was updated. An RFC3339 formatted datetime string.",
      "format": "date-time",
      "type": "string"
    }
  },
  "required": [
    "id",
    "compartmentId",
    "projectId",
    "modelId",
    "timeCreated",
    "lifecycleState",
    "displayName"
  ],
  "type": "object"
}