{
  "opencollection": "1.0.0",
  "info": {
    "name": "Apicurio Registry Admin Search API",
    "version": "3.1.x"
  },
  "items": [
    {
      "info": {
        "name": "Search",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Search for artifacts",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://localhost:8080/apis/registry/v3/search/artifacts",
            "params": [
              {
                "name": "name",
                "value": "",
                "type": "query",
                "description": "Filter by artifact name."
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "The number of artifacts to skip before starting to collect the result set.  Defaults to 0."
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The number of artifacts to return.  Defaults to 20."
              },
              {
                "name": "order",
                "value": "",
                "type": "query",
                "description": "Sort order, ascending (`asc`) or descending (`desc`)."
              },
              {
                "name": "orderby",
                "value": "",
                "type": "query",
                "description": "The field to sort by.  Can be one of:\n\n* `name`\n* `createdOn`\n"
              },
              {
                "name": "labels",
                "value": "",
                "type": "query",
                "description": "Filter by one or more name/value label.  Separate each name/value pair using a colon.  For\nexample `labels=foo:bar` will return only artifacts with a label named `foo`\nand value `bar`."
              },
              {
                "name": "description",
                "value": "",
                "type": "query",
                "description": "Filter by description."
              },
              {
                "name": "groupId",
                "value": "",
                "type": "query",
                "description": "Filter by artifact group."
              },
              {
                "name": "globalId",
                "value": "",
                "type": "query",
                "description": "Filter by globalId."
              },
              {
                "name": "contentId",
                "value": "",
                "type": "query",
                "description": "Filter by contentId."
              },
              {
                "name": "artifactId",
                "value": "",
                "type": "query",
                "description": "Filter by artifactId."
              },
              {
                "name": "artifactType",
                "value": "",
                "type": "query",
                "description": "Filter by artifact type (`AVRO`, `JSON`, etc)."
              }
            ]
          },
          "docs": "Returns a paginated list of all artifacts that match the provided filter criteria.\n\nThis operation can fail for the following reasons:\n\n* A server error occurred (HTTP error `500`)\n"
        },
        {
          "info": {
            "name": "Search for artifacts by content",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "http://localhost:8080/apis/registry/v3/search/artifacts",
            "params": [
              {
                "name": "canonical",
                "value": "",
                "type": "query",
                "description": "Parameter that can be set to `true` to indicate that the server should \"canonicalize\" the content when searching for matching artifacts.  Canonicalization is unique to each artifact type, but typically involves removing any extra whitespace and formatting the content in a consistent manner.  Must be used along with the `artifactType` query parameter."
              },
              {
                "name": "artifactType",
                "value": "",
                "type": "query",
                "description": "Indicates the type of artifact represented by the content being used for the search.  This is only needed when using the `canonical` query parameter, so that the server knows how to canonicalize the content prior to searching for matching artifacts."
              },
              {
                "name": "groupId",
                "value": "",
                "type": "query",
                "description": "Filter by artifact group."
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "The number of artifacts to skip before starting to collect the result set.  Defaults to 0."
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The number of artifacts to return.  Defaults to 20."
              },
              {
                "name": "order",
                "value": "",
                "type": "query",
                "description": "Sort order, ascending (`asc`) or descending (`desc`)."
              },
              {
                "name": "orderby",
                "value": "",
                "type": "query",
                "description": "The field to sort by.  Can be one of:\n\n* `name`\n* `createdOn`\n"
              }
            ]
          },
          "docs": "Returns a paginated list of all artifacts with at least one version that matches the\nposted content.\n\nThis operation can fail for the following reasons:\n\n* Provided content (request body) was empty (HTTP error `400`)\n* A server error occurred (HTTP error `500`)\n"
        },
        {
          "info": {
            "name": "Search for groups",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://localhost:8080/apis/registry/v3/search/groups",
            "params": [
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "The number of artifacts to skip before starting to collect the result set.  Defaults to 0."
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The number of artifacts to return.  Defaults to 20."
              },
              {
                "name": "order",
                "value": "",
                "type": "query",
                "description": "Sort order, ascending (`asc`) or descending (`desc`)."
              },
              {
                "name": "orderby",
                "value": "",
                "type": "query",
                "description": "The field to sort by.  Can be one of:\n\n* `name`\n* `createdOn`\n"
              },
              {
                "name": "labels",
                "value": "",
                "type": "query",
                "description": "Filter by one or more name/value label.  Separate each name/value pair using a colon.  For\nexample `labels=foo:bar` will return only artifacts with a label named `foo`\nand value `bar`."
              },
              {
                "name": "description",
                "value": "",
                "type": "query",
                "description": "Filter by description."
              },
              {
                "name": "groupId",
                "value": "",
                "type": "query",
                "description": "Filter by group name."
              }
            ]
          },
          "docs": "Returns a paginated list of all groups that match the provided filter criteria.\n\nThis operation can fail for the following reasons:\n\n* A server error occurred (HTTP error `500`)\n"
        },
        {
          "info": {
            "name": "Search for versions",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://localhost:8080/apis/registry/v3/search/versions",
            "params": [
              {
                "name": "version",
                "value": "",
                "type": "query",
                "description": "Filter by version number."
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "The number of versions to skip before starting to collect the result set.  Defaults to 0."
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The number of versions to return.  Defaults to 20."
              },
              {
                "name": "order",
                "value": "",
                "type": "query",
                "description": "Sort order, ascending (`asc`) or descending (`desc`)."
              },
              {
                "name": "orderby",
                "value": "",
                "type": "query",
                "description": "The field to sort by.  Can be one of:\n\n* `name`\n* `createdOn`\n"
              },
              {
                "name": "labels",
                "value": "",
                "type": "query",
                "description": "Filter by one or more name/value label.  Separate each name/value pair using a colon.  For\nexample `labels=foo:bar` will return only artifacts with a label named `foo`\nand value `bar`."
              },
              {
                "name": "description",
                "value": "",
                "type": "query",
                "description": "Filter by description."
              },
              {
                "name": "groupId",
                "value": "",
                "type": "query",
                "description": "Filter by artifact group."
              },
              {
                "name": "globalId",
                "value": "",
                "type": "query",
                "description": "Filter by globalId."
              },
              {
                "name": "contentId",
                "value": "",
                "type": "query",
                "description": "Filter by contentId."
              },
              {
                "name": "artifactId",
                "value": "",
                "type": "query",
                "description": "Filter by artifactId."
              },
              {
                "name": "name",
                "value": "",
                "type": "query",
                "description": "Filter by name."
              },
              {
                "name": "state",
                "value": "",
                "type": "query",
                "description": "Filter by version state."
              },
              {
                "name": "artifactType",
                "value": "",
                "type": "query",
                "description": "Filter by artifact type (`AVRO`, `JSON`, etc)."
              },
              {
                "name": "content",
                "value": "",
                "type": "query",
                "description": "Full-text search of artifact content.  Requires the Lucene search index to be enabled."
              },
              {
                "name": "structure",
                "value": "",
                "type": "query",
                "description": "Search by structured content elements (schemas, paths, fields, etc.) using a faceted format. Supports three formats: `type:kind:name` for exact match (e.g. `openapi:schema:Pet`), `kind:name` for cross-type match (e.g. `schema:Pet`), or just `name` for plain text search. Requires the Lucene search index to be enabled."
              }
            ]
          },
          "docs": "Returns a paginated list of all versions that match the provided filter criteria.\n\nThis operation can fail for the following reasons:\n\n* A server error occurred (HTTP error `500`)\n"
        },
        {
          "info": {
            "name": "Search for versions by content",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "http://localhost:8080/apis/registry/v3/search/versions",
            "params": [
              {
                "name": "canonical",
                "value": "",
                "type": "query",
                "description": "Parameter that can be set to `true` to indicate that the server should \"canonicalize\" the content when searching for matching artifacts.  Canonicalization is unique to each artifact type, but typically involves removing any extra whitespace and formatting the content in a consistent manner.  Must be used along with the `artifactType` query parameter."
              },
              {
                "name": "artifactType",
                "value": "",
                "type": "query",
                "description": "Indicates the type of artifact represented by the content being used for the search.  This is only needed when using the `canonical` query parameter, so that the server knows how to canonicalize the content prior to searching for matching versions."
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "The number of versions to skip before starting to collect the result set.  Defaults to 0."
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The number of versions to return.  Defaults to 20."
              },
              {
                "name": "order",
                "value": "",
                "type": "query",
                "description": "Sort order, ascending (`asc`) or descending (`desc`)."
              },
              {
                "name": "orderby",
                "value": "",
                "type": "query",
                "description": "The field to sort by.  Can be one of:\n\n* `name`\n* `createdOn`\n"
              },
              {
                "name": "groupId",
                "value": "",
                "type": "query",
                "description": "Filter by group Id."
              },
              {
                "name": "artifactId",
                "value": "",
                "type": "query",
                "description": "Filter by artifact Id."
              }
            ]
          },
          "docs": "Returns a paginated list of all versions that match the posted content.\n\nThis operation can fail for the following reasons:\n\n* Provided content (request body) was empty (HTTP error `400`)\n* A server error occurred (HTTP error `500`)\n"
        },
        {
          "info": {
            "name": "Search contract rules by tag",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://localhost:8080/apis/registry/v3/search/contract/rules",
            "params": [
              {
                "name": "tag",
                "value": "",
                "type": "query",
                "description": "The tag value to search for in contract rules."
              }
            ]
          },
          "docs": "Returns all contract rules across all artifacts that contain the specified tag."
        },
        {
          "info": {
            "name": "Search contracts",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://localhost:8080/apis/registry/v3/search/contracts",
            "params": [
              {
                "name": "status",
                "value": "",
                "type": "query",
                "description": "Filter by contract status (DRAFT, STABLE, DEPRECATED)."
              },
              {
                "name": "ownerTeam",
                "value": "",
                "type": "query",
                "description": "Filter by owner team."
              },
              {
                "name": "compatibilityGroup",
                "value": "",
                "type": "query",
                "description": "Filter by compatibility group."
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "Number of results to skip."
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "Maximum number of results to return."
              },
              {
                "name": "order",
                "value": "",
                "type": "query",
                "description": "Sort order (asc or desc)."
              },
              {
                "name": "orderby",
                "value": "",
                "type": "query",
                "description": "Field to sort by."
              }
            ]
          },
          "docs": "Searches for artifacts that have contract metadata labels. Filters by status, owner team, and compatibility group."
        }
      ]
    }
  ],
  "bundled": true
}