Ansible Roles Collections API

Modern v3 collections (Galaxy NG / Pulp).

OpenAPI Specification

ansible-roles-collections-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Ansible Galaxy Roles & Ansible Galaxy Roles & API Collections API
  version: '1'
  description: 'The Ansible Galaxy public REST API for discovering and consuming community

    Ansible content. The legacy v1 surface covers community roles (search by

    keyword, author, tag; download by version), users, namespaces, and import

    tracking. The modern v3 surface is the Galaxy NG / Pulp API used by

    Ansible collections (the modern packaging format that bundles roles,

    modules, plugins, and playbooks).

    '
  contact:
    name: Ansible Galaxy
    url: https://galaxy.ansible.com
servers:
- url: https://galaxy.ansible.com
  description: Public Ansible Galaxy
security: []
tags:
- name: Collections
  description: Modern v3 collections (Galaxy NG / Pulp).
paths:
  /api/v3/collections/:
    get:
      tags:
      - Collections
      summary: List collections
      operationId: listCollections
      responses:
        '200':
          $ref: '#/components/responses/PagedList'
  /api/v3/collections/{namespace}/{name}/:
    get:
      tags:
      - Collections
      summary: Retrieve a collection
      operationId: getCollection
      parameters:
      - $ref: '#/components/parameters/Namespace'
      - $ref: '#/components/parameters/Name'
      responses:
        '200':
          description: A collection.
  /api/v3/collections/{namespace}/{name}/versions/:
    get:
      tags:
      - Collections
      summary: List collection versions
      operationId: listCollectionVersions
      parameters:
      - $ref: '#/components/parameters/Namespace'
      - $ref: '#/components/parameters/Name'
      responses:
        '200':
          $ref: '#/components/responses/PagedList'
  /api/v3/collections/{namespace}/{name}/versions/{version}/:
    get:
      tags:
      - Collections
      summary: Retrieve a collection version
      operationId: getCollectionVersion
      parameters:
      - $ref: '#/components/parameters/Namespace'
      - $ref: '#/components/parameters/Name'
      - name: version
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: A specific version of a collection.
components:
  schemas:
    PagedList:
      type: object
      properties:
        count:
          type: integer
        next:
          type: string
          nullable: true
        next_link:
          type: string
          nullable: true
        previous:
          type: string
          nullable: true
        previous_link:
          type: string
          nullable: true
        results:
          type: array
          items:
            type: object
            additionalProperties: true
  parameters:
    Name:
      name: name
      in: path
      required: true
      schema:
        type: string
    Namespace:
      name: namespace
      in: path
      required: true
      schema:
        type: string
  responses:
    PagedList:
      description: A paginated list response.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PagedList'
  securitySchemes:
    TokenAuth:
      type: apiKey
      in: header
      name: Authorization
      description: 'Galaxy / Automation Hub token, sent as `Authorization: Token <value>`.'