{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/krimskrams-xyz/json-schema/krimskrams-xyz-build-package-set-request-schema.json",
  "title": "BuildPackageSetRequest",
  "description": "Caller-provided metadata for all selected directory packages.",
  "x-generated": "2026-10-30",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/agent-api-listings_krimskrams_xyz_openapi.json#/components/schemas/BuildPackageSetRequest",
  "properties": {
    "origin": {
      "type": "string",
      "maxLength": 2048,
      "minLength": 1,
      "title": "Origin"
    },
    "openapi": {
      "additionalProperties": true,
      "type": "object",
      "title": "Openapi"
    },
    "service_id": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 100
        },
        {
          "type": "null"
        }
      ],
      "title": "Service Id"
    },
    "name": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 200
        },
        {
          "type": "null"
        }
      ],
      "title": "Name"
    },
    "provider_name": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 200
        },
        {
          "type": "null"
        }
      ],
      "title": "Provider Name"
    },
    "tags": {
      "items": {
        "type": "string"
      },
      "type": "array",
      "maxItems": 20,
      "title": "Tags"
    },
    "targets": {
      "anyOf": [
        {
          "items": {
            "type": "string",
            "enum": [
              "mpp.dev",
              "x402-list"
            ]
          },
          "type": "array",
          "maxItems": 2,
          "minItems": 1
        },
        {
          "type": "null"
        }
      ],
      "title": "Targets"
    },
    "email": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 320
        },
        {
          "type": "null"
        }
      ],
      "title": "Email",
      "description": "Required for a ready x402-list package unless openapi.info.contact.email contains a valid email"
    },
    "website_url": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 2048
        },
        {
          "type": "null"
        }
      ],
      "title": "Website Url"
    },
    "category": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 100
        },
        {
          "type": "null"
        }
      ],
      "title": "Category"
    },
    "notes": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 2000
        },
        {
          "type": "null"
        }
      ],
      "title": "Notes"
    },
    "endpoint_paths": {
      "items": {
        "type": "string"
      },
      "type": "array",
      "maxItems": 50,
      "title": "Endpoint Paths"
    }
  },
  "type": "object",
  "required": [
    "origin",
    "openapi"
  ]
}