{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/scale-ai/json-schema/scale-ai-register-agent-response-schema.json",
  "title": "RegisterAgentResponse",
  "description": "Response model for registering an agent.",
  "x-generated": "2026-10-27",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/scale-ai-agentex-openapi.yml#/components/schemas/RegisterAgentResponse",
  "properties": {
    "id": {
      "type": "string",
      "title": "Id",
      "description": "The unique identifier of the agent."
    },
    "name": {
      "type": "string",
      "title": "Name",
      "description": "The unique name of the agent."
    },
    "description": {
      "type": "string",
      "title": "Description",
      "description": "The description of the action."
    },
    "status": {
      "$ref": "#/$defs/AgentStatus",
      "description": "The status of the action, indicating if it's building, ready, failed, etc.",
      "default": "Unknown"
    },
    "acp_type": {
      "$ref": "#/$defs/ACPType",
      "description": "The type of the ACP Server (Either sync or async)"
    },
    "status_reason": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Status Reason",
      "description": "The reason for the status of the action."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "title": "Created At",
      "description": "The timestamp when the agent was created"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "title": "Updated At",
      "description": "The timestamp when the agent was last updated"
    },
    "registration_metadata": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "title": "Registration Metadata",
      "description": "The metadata for the agent's registration."
    },
    "registered_at": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Registered At",
      "description": "The timestamp when the agent was last registered"
    },
    "agent_input_type": {
      "anyOf": [
        {
          "$ref": "#/$defs/AgentInputType"
        },
        {
          "type": "null"
        }
      ],
      "description": "The type of input the agent expects."
    },
    "production_deployment_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Production Deployment Id",
      "description": "ID of the current production deployment."
    },
    "agent_api_key": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Agent Api Key",
      "description": "The agent's internal API key. Returned for new agents and legacy registration. When authenticated registration is enforced, returned only to an agent presenting one of its valid internal keys; null for a provider-authenticated principal re-registering an existing agent."
    }
  },
  "type": "object",
  "required": [
    "id",
    "name",
    "description",
    "acp_type",
    "created_at",
    "updated_at"
  ],
  "$defs": {
    "ACPType": {
      "type": "string",
      "enum": [
        "sync",
        "async",
        "agentic"
      ],
      "title": "ACPType"
    },
    "AgentInputType": {
      "type": "string",
      "enum": [
        "text",
        "json"
      ],
      "title": "AgentInputType"
    },
    "AgentStatus": {
      "type": "string",
      "enum": [
        "Ready",
        "Failed",
        "Unknown",
        "Deleted",
        "Unhealthy",
        "BuildOnly"
      ],
      "title": "AgentStatus"
    }
  }
}