{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "pattern": "^[^\\s]+$"
    },
    "projectId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "pattern": "^[^\\s]+$"
    },
    "target": {
      "$ref": "#/components/schemas/ProjectAgentResource"
    },
    "pinnedRevisionId": {
      "anyOf": [
        {
          "type": "string",
          "minLength": 1,
          "maxLength": 512,
          "pattern": "^[^\\s]+$"
        },
        {
          "type": "null"
        }
      ]
    },
    "purpose": {
      "type": "string",
      "maxLength": 200
    },
    "orderKey": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "pattern": "^[^\\s]+$"
    }
  },
  "required": [
    "id",
    "projectId",
    "target",
    "pinnedRevisionId",
    "purpose",
    "orderKey"
  ]
}