Examples

POST /katello/api/repositories
{
  "name": "Fedora Repository",
  "product_id": 785257261,
  "url": "http://www.google.com",
  "content_type": "yum",
  "unprotected": false,
  "mirroring_policy": "mirror_content_only",
  "repository": {
    "name": "Fedora Repository",
    "url": "http://www.google.com",
    "unprotected": false,
    "content_type": "yum",
    "product_id": 785257261,
    "mirroring_policy": "mirror_content_only"
  }
}
201
{
  "relative_path": "ACME_Corporation/library/fedora_17_unpublished_label",
  "promoted": false,
  "content_view_version_id": 840492357,
  "library_instance_id": null,
  "last_contents_changed": "1970-01-01 00:00:00 UTC",
  "organization_id": 114267492,
  "organization": {
    "name": "Empty Organization",
    "label": "Empty_Organization",
    "id": 114267492
  },
  "created_at": "2022-11-08 19:09:32 UTC",
  "updated_at": "2022-11-08 19:09:32 UTC",
  "backend_identifier": "6",
  "container_repository_name": null,
  "full_path": "https://centos8-katello-devel.area51.example.com/pulp/content/ACME_Corporation/library/fedora_17_unpublished_label/",
  "version_href": null,
  "remote_href": null,
  "publication_href": null,
  "content_counts": {
    "rpm": 0,
    "erratum": 0,
    "package_group": 0,
    "srpm": 0,
    "module_stream": 0
  },
  "mirroring_policy": "mirror_content_only",
  "id": 841753487,
  "name": "Fedora 17 x86_64 unpublished",
  "label": "fedora_17_unpublished_label",
  "description": null,
  "content_view_versions": [],
  "last_sync": null,
  "content_view": {
    "id": 30237652,
    "name": "ACME Default ContentView"
  },
  "content_view_version": {
    "id": 840492357,
    "name": "ACME Default ContentView 1.0",
    "content_view_id": 30237652
  },
  "kt_environment": {
    "id": 562075838,
    "name": "Library"
  },
  "content_type": "yum",
  "url": "http://www.pleaseack.com",
  "arch": "noarch",
  "os_versions": null,
  "content_id": "8374837483743",
  "generic_remote_options": null,
  "major": null,
  "minor": null,
  "product": {
    "id": 785257261,
    "cp_id": "fedora",
    "name": "Fedora",
    "orphaned": false,
    "redhat": false,
    "sync_plan": null
  },
  "content_label": null,
  "last_sync_words": null,
  "environment": {
    "id": 562075838,
    "registry_unauthenticated_pull": false
  },
  "docker_upstream_name": null,
  "docker_tags_whitelist": null,
  "include_tags": null,
  "exclude_tags": null,
  "verify_ssl_on_sync": true,
  "unprotected": true,
  "checksum_type": null,
  "download_policy": "immediate",
  "ansible_collection_requirements": null,
  "ansible_collection_auth_url": null,
  "ansible_collection_auth_token": null,
  "gpg_key_id": 591165711,
  "ssl_ca_cert_id": null,
  "ssl_client_cert_id": null,
  "ssl_client_key_id": null,
  "upstream_username": null,
  "deb_releases": null,
  "deb_components": null,
  "deb_architectures": null,
  "http_proxy_policy": "global_default_http_proxy",
  "http_proxy_id": null,
  "http_proxy_name": null,
  "retain_package_versions_count": null,
  "ignorable_content": null,
  "http_proxy": {
    "id": null,
    "name": null,
    "policy": "global_default_http_proxy"
  },
  "ssl_ca_cert": {
    "id": null,
    "name": null
  },
  "ssl_client_cert": {
    "id": null,
    "name": null
  },
  "ssl_client_key": {
    "id": null,
    "name": null
  },
  "gpg_key": {
    "id": 591165711,
    "name": "Fedora GPG Key"
  },
  "permissions": {
    "deletable": true,
    "deletable_across_cv": true
  },
  "upstream_password_exists": false,
  "upstream_auth_exists": false,
  "content_view_environments": []
}

Params

Param name Description
name
required

Name of the repository

Validations:

  • String

description
optional

Description of the repository

Validations:

  • String

label
optional

Validations:

  • String

product_id
required

Product the repository belongs to

Validations:

  • Must be a number.

content_type
required

Type of repository. Available types endpoint: /katello/api/repositories/repository_types

Validations:

  • String

url
optional

repository source url

Validations:

  • String

os_versions
optional

Identifies whether the repository should be disabled on a client with a non-matching OS version. Pass [] to enable regardless of OS version. Maximum length 1; allowed tags are: rhel-6, rhel-7, rhel-8, rhel-9

Validations:

  • Must be an array of any type

gpg_key_id
optional

id of the gpg key that will be assigned to the new repository

Validations:

  • Must be a number.

ssl_ca_cert_id
optional

Identifier of the content credential containing the SSL CA Cert

Validations:

  • Must be a number.

ssl_client_cert_id
optional

Identifier of the content credential containing the SSL Client Cert

Validations:

  • Must be a number.

ssl_client_key_id
optional

Identifier of the content credential containing the SSL Client Key

Validations:

  • Must be a number.

unprotected
optional

true if this repository can be published via HTTP

Validations:

  • Must be one of: true, false, 1, 0.

checksum_type
optional

Checksum of the repository, currently 'sha1' & 'sha256' are supported

Validations:

  • String

docker_upstream_name
optional

Name of the upstream docker repository

Validations:

  • String

docker_tags_whitelist
optional

Comma-separated list of tags to sync for Container Image repository (Deprecated)

Validations:

  • Must be an array of any type

include_tags
optional

Comma-separated list of tags to sync for a container image repository

Validations:

  • Must be an array of any type

exclude_tags
optional

Comma-separated list of tags to exclude when syncing a container image repository. Default: any tag ending in “-source”

Validations:

  • Must be an array of any type

download_policy
optional

download policy for yum, deb, and docker repos (either 'immediate' or 'on_demand')

Validations:

  • Must be one of: immediate, on_demand.

download_concurrency
optional

Used to determine download concurrency of the repository in pulp3. Use value less than 20. Defaults to 10

Validations:

  • Must be a number.

mirror_on_sync
optional

true if this repository when synced has to be mirrored from the source and stale rpms removed (Deprecated)

Validations:

  • Must be one of: true, false, 1, 0.

mirroring_policy
optional

Policy to set for mirroring content. Must be one of additive.

Validations:

  • Must be one of: additive, mirror_complete, mirror_content_only.

verify_ssl_on_sync
optional

if true, Katello will verify the upstream url's SSL certifcates are signed by a trusted CA

Validations:

  • Must be one of: true, false, 1, 0.

upstream_username
optional

Username of the upstream repository user used for authentication

Validations:

  • String

upstream_password
optional

Password of the upstream repository user used for authentication

Validations:

  • String

upstream_authentication_token
optional

Password of the upstream authentication token.

Validations:

  • String

deb_releases
optional

whitespace-separated list of releases to be synced from deb-archive

Validations:

  • String

deb_components
optional

whitespace-separated list of repo components to be synced from deb-archive

Validations:

  • String

deb_architectures
optional

whitespace-separated list of architectures to be synced from deb-archive

Validations:

  • String

ignorable_content
optional

List of content units to ignore while syncing a yum repository. Must be subset of srpm

Validations:

  • Must be an array of any type

ansible_collection_requirements
optional

Contents of requirement yaml file to sync from URL

Validations:

  • String

ansible_collection_auth_url
optional

The URL to receive a session token from, e.g. used with Automation Hub.

Validations:

  • String

ansible_collection_auth_token
optional

The token key to use for authentication.

Validations:

  • String

http_proxy_policy
optional

policies for HTTP proxy for content sync

Validations:

  • Must be one of: global_default_http_proxy, none, use_selected_http_proxy.

http_proxy_id
optional

ID of a HTTP Proxy

Validations:

  • Must be a number.

arch
optional

Architecture of content in the repository

Validations:

  • String

retain_package_versions_count
optional

The maximum number of versions of each package to keep.

Validations:

  • Must be a number.

excludes
optional

Python packages to exclude from the upstream URL, names separated by newline. You may also specify versions, for example: django~=2.0.

Validations:

  • Must be an array of any type

includes
optional

Python packages to include from the upstream URL, names separated by newline. You may also specify versions, for example: django~=2.0. Leave empty to include every package.

Validations:

  • Must be an array of any type

package_types
optional

Package types to sync for Python content, separated by comma. Leave empty to get every package type. Package types are: bdist_dmg, bdist_dumb, bdist_egg, bdist_msi, bdist_rpm, bdist_wheel, bdist_wininst, sdist.

Validations:

  • Must be an array of any type