Server Plugins API ================== The pulp server itself has very little built in functionality, so it loads number of plugins that provide the desired functionality required by administrators. Loaded plugins can define ``types``, ``importers`` and ``distributors``. .. _retrieve_content_unit_types: Retrieve All Content Unit Types ------------------------------- Queries the server for the loaded content unit type definitions. | :method:`get` | :path:`/v2/plugins/types/` | :permission:`read` | :response_list:`_` * :response_code:`200, list of loaded content types` | :return:`JSON document showing all loaded content unit types` :sample_response:`200`:: [ { "_href": "/pulp/api/v2/plugins/types/puppet_module/", "_id": { "$oid": "55a391ea45ef481ffab6ac26" }, "_ns": "content_types", "description": "Puppet Module", "display_name": "Puppet Module", "id": "puppet_module", "referenced_types": [], "search_indexes": [ "author", "tag_list" ], "unit_key": [ "name", "version", "author" ] }, { "_href": "/pulp/api/v2/plugins/types/iso/", "_id": { "$oid": "55a391ea45ef481ffab6ac27" }, "_ns": "content_types", "description": "ISO", "display_name": "ISO", "id": "iso", "referenced_types": [], "search_indexes": [], "unit_key": [ "name", "checksum", "size" ] }, { "_href": "/pulp/api/v2/plugins/types/docker_image/", "_id": { "$oid": "55a391ea45ef481ffab6ac28" }, "_ns": "content_types", "description": "Docker Image", "display_name": "Docker Image", "id": "docker_image", "referenced_types": [], "search_indexes": [], "unit_key": [ "image_id" ] }, { "_href": "/pulp/api/v2/plugins/types/rpm/", "_id": { "$oid": "55a391ea45ef481ffab6ac32" }, "_ns": "content_types", "description": "RPM", "display_name": "RPM", "id": "rpm", "referenced_types": [ "erratum" ], "search_indexes": [ "name", "epoch", "version", "release", "arch", "filename", "checksum", "checksumtype", "version_sort_index", [ "version_sort_index", "release_sort_index" ] ], "unit_key": [ "name", "epoch", "version", "release", "arch", "checksumtype", "checksum" ] } ] Retrieve a Specific Content Unit Type ------------------------------------- Retrieves information about a specific content unit type. | :method:`get` | :path:`/v2/plugins/types//` | :permission:`read` | :response_list:`_` * :response_code:`200, the content type exists` * :response_code:`404, the content type does not exist` | :return:`JSON document showing queried content unit type` :sample_response:`200`:: { "_href": "/pulp/api/v2/plugins/types/iso/", "_id": { "$oid": "55a391ea45ef481ffab6ac27" }, "_ns": "content_types", "description": "ISO", "display_name": "ISO", "id": "iso", "referenced_types": [], "search_indexes": [], "unit_key": [ "name", "checksum", "size" ] } .. _getting_importers: Retrieve All Importer Plugins ----------------------------- Queries the server for the loaded importer plugins. | :method:`get` | :path:`/v2/plugins/importers/` | :permission:`read` | :response_list:`_` * :response_code:`200, list of loaded importer plugins` | :return:`JSON document showing all loaded importer plugins` :sample_response:`200`:: [ { "_href": "/pulp/api/v2/plugins/importers/puppet_importer/", "display_name": "Puppet Importer", "id": "puppet_importer", "types": [ "puppet_module" ] }, { "_href": "/pulp/api/v2/plugins/importers/yum_importer/", "display_name": "Yum Importer", "id": "yum_importer", "types": [ "distribution", "drpm", "erratum", "package_group", "package_category", "rpm", "srpm", "yum_repo_metadata_file", "package_environment" ] }, { "_href": "/pulp/api/v2/plugins/importers/nodes_http_importer/", "display_name": "Pulp Nodes HTTP Importer", "id": "nodes_http_importer", "types": [ "node", "repository" ] } ] Retrieve a Specific Importer Plugin ----------------------------------- Retrieves information about a specific importer plugin. | :method:`get` | :path:`/v2/plugins/importers//` | :permission:`read` | :response_list:`_` * :response_code:`200, the importer id exists` * :response_code:`404, the importer id does not exist` | :return:`JSON document showing queried importer` :sample_response:`200`:: { "_href": "/pulp/api/v2/plugins/importers/puppet_importer/", "display_name": "Puppet Importer", "id": "puppet_importer", "types": [ "puppet_module" ] } .. _getting_distributors: Retrieve All Distributor Plugins -------------------------------- Queries the server for the loaded distributor plugins. | :method:`get` | :path:`/v2/plugins/distributors/` | :permission:`read` | :response_list:`_` * :response_code:`200, list of loaded distributor plugins` | :return:`JSON document showing all loaded distributor plugins` :sample_response:`200`:: [ { "_href": "/pulp/api/v2/plugins/distributors/yum_distributor/", "display_name": "Yum Distributor", "id": "yum_distributor", "types": [ "rpm", "srpm", "drpm", "erratum", "package_group", "package_category", "distribution", "yum_repo_metadata_file" ] }, { "_href": "/pulp/api/v2/plugins/distributors/puppet_distributor/", "display_name": "Puppet Distributor", "id": "puppet_distributor", "types": [ "puppet_module" ] }, { "_href": "/pulp/api/v2/plugins/distributors/nodes_http_distributor/", "display_name": "Pulp Nodes HTTP Distributor", "id": "nodes_http_distributor", "types": [ "node" ] }, { "_href": "/pulp/api/v2/plugins/distributors/docker_distributor_web/", "display_name": "Docker Web Distributor", "id": "docker_distributor_web", "types": [ "docker_image" ] } ] Retrieve a Specific Distributor Plugin -------------------------------------- Retrieves information about a specific distributor plugin. | :method:`get` | :path:`/v2/plugins/distributors//` | :permission:`read` | :response_list:`_` * :response_code:`200, the distributor id exists` * :response_code:`404, the distributor id does not exist` | :return:`JSON document showing queried distributor` :sample_response:`200`:: { "_href": "/pulp/api/v2/plugins/distributors/yum_distributor/", "display_name": "Yum Distributor", "id": "yum_distributor", "types": [ "rpm", "srpm", "drpm", "erratum", "package_group", "package_category", "distribution", "yum_repo_metadata_file" ] }