Rainforest QA run_groups API

Operations about run_groups

OpenAPI Specification

rainforest-qa-run-groups-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Rainforest callback run_groups API
  description: Nearly all interactions done in Rainforest can be done via the API. Find your API Token (for the CLIENT_TOKEN header field) on the integration settings page (https://app.rainforestqa.com/settings/integrations).
  version: '1'
servers:
- url: https://app.rainforestqa.com/api
security:
- api_key: []
tags:
- name: run_groups
  description: Operations about run_groups
paths:
  /1/run_groups:
    get:
      summary: List run groups
      description: List run groups
      parameters:
      - in: query
        name: title
        description: Filter by title (case-insensitive)
        required: false
        schema:
          type: string
      - in: query
        name: sort[][title]
        required: false
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
            enum:
            - asc
            - desc
      - in: query
        name: page
        description: Page of results to display
        required: false
        schema:
          type: integer
          format: int32
          default: 1
      - in: query
        name: page_size
        description: 'Number of results to return per page; maximum: 100'
        required: false
        schema:
          type: integer
          format: int32
          default: 10
      responses:
        '200':
          description: Run groups retrieved
          headers:
            X-Total-Pages:
              description: Total pages
              schema:
                type: integer
            X-Current-Page:
              description: Current page
              schema:
                type: integer
            X-Per-Page:
              description: The maximum number of results per page
              schema:
                type: integer
            X-Total-Results:
              description: The total number of results
              schema:
                type: integer
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RunGroup'
      tags:
      - run_groups
      operationId: get-run_groups
      x-rdme-order: 1
    post:
      summary: Create a new run group
      description: Create a new run group
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/post-run_groups'
        required: true
      responses:
        '201':
          description: Run group created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunGroup'
        '400':
          description: Run group could not created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: post-run_groups
      x-rdme-order: 2
  /1/run_groups/{id}/elements/batch:
    post:
      summary: Add multiple elements to a run group
      description: Add multiple elements to a run group
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/post-run_group-elements-batch'
        required: true
      responses:
        '201':
          description: Element(s) added to run group
        '400':
          description: Element(s) could not be added to run group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Run group or element not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: post-run_group-elements-batch
      x-rdme-order: 40
    delete:
      summary: Remove multiple elements from a run group
      description: Remove multiple elements from a run group
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      - in: query
        name: elements[][type]
        description: The element's type
        required: true
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
            enum:
            - feature
            - filter
            - tag
            - test
      - in: query
        name: elements[][element_id]
        description: The feature, filter, or test's id
        required: false
        style: form
        explode: false
        schema:
          type: array
          items:
            type: integer
            format: int32
      - in: query
        name: elements[][name]
        description: The tag's name
        required: false
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
      responses:
        '200':
          description: Element(s) removed from run group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Ok'
        '404':
          description: Run group or element not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: delete-run_group-elements-batch
      x-rdme-order: 41
  /1/run_groups/{id}:
    get:
      summary: Get a run group
      description: Get a run group
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Run group retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunGroup'
        '404':
          description: Run group not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: get-run_group
      x-rdme-order: 10
    put:
      summary: Update a run group
      description: Update a run group
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/put-run_group'
        required: true
      responses:
        '200':
          description: Update a run group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunGroup'
      tags:
      - run_groups
      operationId: put-run_group
      x-rdme-order: 11
    delete:
      summary: Delete a run group
      description: Delete a run group
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Run group deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunGroup'
        '404':
          description: Run group not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: delete-run_group
      x-rdme-order: 12
  /1/run_groups/{id}/runs:
    get:
      summary: Get runs for a run group
      description: Get runs for a run group
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      - in: query
        name: page
        description: Page of results to display
        required: false
        schema:
          type: integer
          format: int32
          default: 1
      - in: query
        name: page_size
        description: 'Number of results to return per page; maximum: 100'
        required: false
        schema:
          type: integer
          format: int32
          default: 10
      responses:
        '200':
          description: Run group runs retrieved
          headers:
            X-Total-Pages:
              description: Total pages
              schema:
                type: integer
            X-Current-Page:
              description: Current page
              schema:
                type: integer
            X-Per-Page:
              description: The maximum number of results per page
              schema:
                type: integer
            X-Total-Results:
              description: The total number of results
              schema:
                type: integer
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Run'
        '404':
          description: Run group not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: get-run_group-runs
      x-rdme-order: 20
    post:
      summary: Create a new run group run
      description: Create a new run group run
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/post-run_group-runs'
        required: true
      responses:
        '201':
          description: Run created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Run'
        '400':
          description: Run group could not created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: post-run_group-runs
      x-rdme-order: 21
  /1/run_groups/{id}/elements:
    get:
      summary: Get run group elements
      description: Get run group elements
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      - in: query
        name: sort[][title]
        required: false
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
            enum:
            - asc
            - desc
      - in: query
        name: sort[][created_at]
        required: false
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
            enum:
            - asc
            - desc
      - in: query
        name: sort[][updated_at]
        required: false
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
            enum:
            - asc
            - desc
      - in: query
        name: sort[][priority]
        required: false
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
            enum:
            - asc
            - desc
      - in: query
        name: page
        description: Page of results to display
        required: false
        schema:
          type: integer
          format: int32
          default: 1
      - in: query
        name: page_size
        description: 'Number of results to return per page; maximum: 100'
        required: false
        schema:
          type: integer
          format: int32
          default: 10
      responses:
        '200':
          description: Run group elements retrieved
          headers:
            X-Total-Pages:
              description: Total pages
              schema:
                type: integer
            X-Current-Page:
              description: Current page
              schema:
                type: integer
            X-Per-Page:
              description: The maximum number of results per page
              schema:
                type: integer
            X-Total-Results:
              description: The total number of results
              schema:
                type: integer
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RunGroupElement'
        '404':
          description: Run group not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: get-run_group-elements
      x-rdme-order: 30
    post:
      summary: Add an element to a run group
      description: Add an element to a run group
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/post-run_group-elements'
        required: true
      responses:
        '201':
          description: Element added to run group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunGroupElement'
        '400':
          description: Element could not be added to run group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Run group or element not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: post-run_group-elements
      x-rdme-order: 31
  /1/run_groups/{id}/elements/{element_id}:
    get:
      summary: Get an element from a run group
      description: Get an element from a run group
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      - in: path
        name: element_id
        description: The element ID
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Run group element retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunGroupElement'
        '404':
          description: Run group or element not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: get-run_group-element
      x-rdme-order: 50
    delete:
      summary: Remove an element from a run group
      description: Remove an element from a run group
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: integer
          format: int32
      - in: path
        name: element_id
        description: The element ID
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Element removed from run group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunGroupElement'
        '404':
          description: Run group or element not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - run_groups
      operationId: delete-run_group-element
      x-rdme-order: 51
components:
  schemas:
    RunGroupElement:
      type: object
      properties:
        id:
          type: integer
          format: int32
        created_at:
          type: string
          format: date-time
        run_group_id:
          type: integer
          format: int32
          description: The element's run group's ID
        run_group_title:
          type: string
          description: The element's run group's title
        type:
          type: string
          enum:
          - test
          - feature
          - filter
          - tag
        element:
          type: object
          description: Details of the test, feature, or filter
      description: RunGroupElement model
    RunProgress:
      type: object
      properties:
        percent:
          type: integer
          format: int32
        total:
          type: integer
          format: int32
        complete:
          type: integer
          format: int32
        passed:
          type: integer
          format: int32
        failed:
          type: integer
          format: int32
        no_result:
          type: integer
          format: int32
        eta:
          type: object
    Schedule:
      type: object
      properties:
        id:
          type: integer
          format: int32
        created_at:
          type: string
          format: date-time
        repeat_rules:
          type: array
          items:
            $ref: '#/components/schemas/ScheduleRule'
        timezone:
          type: string
    RunTestReview:
      type: object
      properties:
        id:
          type: integer
          format: int32
        created_at:
          type: string
          format: date-time
        status:
          type: string
        reason:
          type: string
        reason_updated_at:
          type: string
        run_id:
          type: string
        run:
          type: string
        test_id:
          type: string
        resolved:
          type: string
        transitioned_by:
          $ref: '#/components/schemas/UserLite'
        notified_user:
          $ref: '#/components/schemas/UserLite'
        reviewer:
          $ref: '#/components/schemas/UserLite'
        test:
          type: object
          properties:
            crowd:
              type: string
            execution_method:
              type: string
            last_run:
              type: string
            test_lite:
              $ref: '#/components/schemas/Tests_Lite'
        transitioned_at:
          type: string
        updated_at:
          type: string
    Tests_Lite:
      type: object
      properties:
        id:
          type: string
        created_at:
          type: string
        test_id:
          type: string
        title:
          type: string
        result:
          type: string
        wisp:
          type: string
        prompt:
          type: string
        prompt_credentials:
          type: string
        ai_mode:
          type: string
        priority:
          type: string
        real_cost_to_run:
          type: string
        owner_id:
          type: string
        state:
          type: string
        updated_at:
          type: string
        deleted:
          type: string
        feature_id:
          type: string
    Connection:
      type: object
      properties:
        id:
          type: string
        created_at:
          type: string
          format: date-time
        name:
          type: string
        api_token:
          type: string
        state:
          type: string
        link_state:
          type: string
        type:
          type: string
          enum:
          - rainforest
          - user
      description: Connection model
    RunGroup:
      type: object
      properties:
        id:
          type: integer
          format: int32
        created_at:
          type: string
          format: date-time
        title:
          type: string
        reroute_geo:
          type: string
          description: 'Deprecated: please use `connection.id` instead'
        connection:
          $ref: '#/components/schemas/Connection'
        crowd:
          type: string
          enum:
          - default
          - on_premise_crowd
          - automation
          - automation_and_crowd
        execution_method:
          type: string
          enum:
          - crowd
          - automation
          - automation_and_crowd
          - on_premise
        browsers:
          type: array
          items:
            type: string
        schedule:
          $ref: '#/components/schemas/Schedule'
        environment:
          $ref: '#/components/schemas/Environment'
        test_count:
          type: integer
          format: int32
      description: RunGroup model
    post-run_groups:
      type: object
      properties:
        title:
          type: string
          description: Title for the run group
        reroute_geo:
          type: string
          description: Geo to reroute tests for this run group
        environment_id:
          type: integer
          format: int32
          description: Use a specific environment for this run group
        crowd:
          type: string
          description: The crowd to use for this run group
          enum:
          - default
          - on_premise_crowd
          - automation
          - automation_and_crowd
        execution_method:
          type: string
          description: The execution method to use for this run group
          enum:
          - crowd
          - automation
          - automation_and_crowd
          - on_premise
        browsers:
          type: array
          description: An array of browsers to use for this run group, overrides the defaults; you can find a list of possible options via the client API
          items:
            type: string
        schedule:
          type: object
          description: A schedule to use for this run group
          properties:
            timezone:
              type: string
              description: The timezone scheduled runs are based on
              enum:
              - Africa/Abidjan
              - Africa/Accra
              - Africa/Addis_Ababa
              - Africa/Algiers
              - Africa/Asmara
              - Africa/Asmera
              - Africa/Bamako
              - Africa/Bangui
              - Africa/Banjul
              - Africa/Bissau
              - Africa/Blantyre
              - Africa/Brazzaville
              - Africa/Bujumbura
              - Africa/Cairo
              - Africa/Casablanca
              - Africa/Ceuta
              - Africa/Conakry
              - Africa/Dakar
              - Africa/Dar_es_Salaam
              - Africa/Djibouti
              - Africa/Douala
              - Africa/El_Aaiun
              - Africa/Freetown
              - Africa/Gaborone
              - Africa/Harare
              - Africa/Johannesburg
              - Africa/Juba
              - Africa/Kampala
              - Africa/Khartoum
              - Africa/Kigali
              - Africa/Kinshasa
              - Africa/Lagos
              - Africa/Libreville
              - Africa/Lome
              - Africa/Luanda
              - Africa/Lubumbashi
              - Africa/Lusaka
              - Africa/Malabo
              - Africa/Maputo
              - Africa/Maseru
              - Africa/Mbabane
              - Africa/Mogadishu
              - Africa/Monrovia
              - Africa/Nairobi
              - Africa/Ndjamena
              - Africa/Niamey
              - Africa/Nouakchott
              - Africa/Ouagadougou
              - Africa/Porto-Novo
              - Africa/Sao_Tome
              - Africa/Timbuktu
              - Africa/Tripoli
              - Africa/Tunis
              - Africa/Windhoek
              - America/Adak
              - America/Anchorage
              - America/Anguilla
              - America/Antigua
              - America/Araguaina
              - America/Argentina/Buenos_Aires
              - America/Argentina/Catamarca
              - America/Argentina/ComodRivadavia
              - America/Argentina/Cordoba
              - America/Argentina/Jujuy
              - America/Argentina/La_Rioja
              - America/Argentina/Mendoza
              - America/Argentina/Rio_Gallegos
              - America/Argentina/Salta
              - America/Argentina/San_Juan
              - America/Argentina/San_Luis
              - America/Argentina/Tucuman
              - America/Argentina/Ushuaia
              - America/Aruba
              - America/Asuncion
              - America/Atikokan
              - America/Atka
              - America/Bahia
              - America/Bahia_Banderas
              - America/Barbados
              - America/Belem
              - America/Belize
              - America/Blanc-Sablon
              - America/Boa_Vista
              - America/Bogota
              - America/Boise
              - America/Buenos_Aires
              - America/Cambridge_Bay
              - America/Campo_Grande
              - America/Cancun
              - America/Caracas
              - America/Catamarca
              - America/Cayenne
              - America/Cayman
              - America/Chicago
              - America/Chihuahua
              - America/Ciudad_Juarez
              - America/Coral_Harbour
              - America/Cordoba
              - America/Costa_Rica
              - America/Coyhaique
              - America/Creston
              - America/Cuiaba
              - America/Curacao
              - America/Danmarkshavn
              - America/Dawson
              - America/Dawson_Creek
              - America/Denver
              - America/Detroit
              - America/Dominica
              - America/Edmonton
              - America/Eirunepe
              - America/El_Salvador
              - America/Ensenada
              - America/Fort_Nelson
              - America/Fort_Wayne
              - America/Fortaleza
              - America/Glace_Bay
              - America/Godthab
              - America/Goose_Bay
              - America/Grand_Turk
              - America/Grenada
              - America/Guadeloupe
              - America/Guatemala
              - America/Guayaquil
              - America/Guyana
              - America/Halifax
              - America/Havana
              - America/Hermosillo
              - America/Indiana/Indianapolis
              - America/Indiana/Knox
              - America/Indiana/Marengo
              - America/Indiana/Petersburg
              - America/Indiana/Tell_City
              - America/Indiana/Vevay
              - America/Indiana/Vincennes
              - America/Indiana/Winamac
              - America/Indianapolis
              - America/Inuvik
              - America/Iqaluit
              - America/Jamaica
              - America/Jujuy
              - America/Juneau
              - America/Kentucky/Louisville
              - America/Kentucky/Monticello
              - America/Knox_IN
              - America/Kralendijk
              - America/La_Paz
              - America/Lima
              - America/Los_Angeles
              - America/Louisville
              - America/Lower_Princes
              - America/Maceio
              - America/Managua
              - America/Manaus
              - America/Marigot
              - America/Martinique
              - America/Matamoros
              - America/Mazatlan
              - America/Mendoza
              - America/Menominee
              - America/Merida
              - America/Metlakatla
              - America/Mexico_City
              - America/Miquelon
              - America/Moncton
              - America/Monterrey
              - America/Montevideo
              - America/Montreal
              - America/Montserrat
              - America/Nassau
              - America/New_York
              - America/Nipigon
              - America/Nome
              - America/Noronha
              - America/North_Dakota/Beulah
              - America/North_Dakota/Center
              - America/North_Dakota/New_Salem
              - America/Nuuk
              - America/Ojinaga
              - America/Panama
              - America/Pangnirtung
              - America/Paramaribo
              - America/Phoenix
              - America/Port-au-Prince
              - America/Port_of_Spain
              - America/Porto_Acre
              - America/Porto_Velho
              - America/Puerto_Rico
              - America/Punta_Arenas
              - America/Rainy_River
              - America/Rankin_Inlet
              - America/Recife
              - America/Regina
              - America/Resolute
              - America/Rio_Branco
              - America/Rosario
              - America/Santa_Isabel
              - America/Santarem
              - America/Santiago
              - America/Santo_Domingo
              - America/Sao_Paulo
              - America/Scoresbysund
              - America/Shiprock
              - America/Sitka
              - America/St_Barthelemy
              - America/St_Johns
              - America/St_Kitts
              - America/St_Lucia
              - America/St_Thomas
              - America/St_Vincent
              - America/Swift_Current
              - America/Tegucigalpa
              - America/Thule
              - America/Thunder_Bay
              - America/Tijuana
              - America/Toronto
              - America/Tortola
              - America/Vancouver
              - America/Virgin
              - America/Whitehorse
              - America/Winnipeg
              - America/Yakutat
              - America/Yellowknife
              - Antarctica/Casey
              - Antarctica/Davis
              - Antarctica/DumontDUrville
              - Antarctica/Macquarie
              - Antarctica/Mawson
              - Antarctica/McMurdo
              - Antarctica/Palmer
              - Antarctica/Rothera
              - Antarctica/South_Pole
              - Antarctica/Syowa
              - Antarctica/Troll
              - Antarctica/Vostok
              - Arctic/Longyearbyen
              - Asia/Aden
              - Asia/Almaty
              - Asia/Amman
              - Asia/Anadyr
              - Asia/Aqtau
              - Asia/Aqtobe
              - Asia/Ashgabat
              - Asia/Ashkhabad
              - Asia/Atyrau
              - Asia/Baghdad
              - Asia/Bahrain
              - Asia/Baku
              - Asia/Bangkok
              - Asia/Barnaul
              - Asia/Beirut
              - Asia/Bishkek
              - Asia/Brunei
              - Asia/Calcutta
              - Asia/Chita
              - Asia/Choibalsan
              - Asia/Chongqing
              - Asia/Chungking
              - Asia/Colombo
              - Asia/Dacca
              - Asia/Damascus
              - Asia/Dhaka
              - Asia/Dili
              - Asia/Dubai
              - Asia/Dushanbe
              - Asia/Famagusta
              - Asia/Gaza
              - Asia/Harbin
              - Asia/Hebron
              - Asia/Ho_Chi_Minh
              - Asia/Hong_Kong
              - Asia/Hovd
              - Asia/Irkutsk
              - Asia/Istanbul
              - Asia/Jakarta
              - Asia/Jayapura
              - Asia/Jerusalem
              - Asia/Kabul
              - Asia/Kamchatka
              - Asia/Karachi
              - Asia/Kashgar
              - Asia/Kathmandu
              - Asia/Katmandu
              - Asia/Khandyga
              - Asia/Kolkata
              - Asia/Krasnoyarsk
              - Asia/Kuala_Lumpur
              - Asia/Kuching
              - Asia/Kuwait
              - Asia/Macao
              - Asia/Macau
              - Asia/Magadan
              - Asia/Makassar
              - Asia/Manila
              - Asia/Muscat
              - Asia/Nicosia
              - Asia/Novokuznetsk
              - Asia/Novosibirsk
              - Asia/Omsk
              - Asia/Oral
              - Asia/Phnom_Penh
              - Asia/Pontianak
              - Asia/Pyongyang
              - Asia/Qatar
              - Asia/Qostanay
              - Asia/Qyzylorda
              - Asia/Rangoon
              - Asia/Riyadh
              - Asia/Saigon
              - Asia/Sakhalin
              - Asia/Samarkand
              - Asia/Seoul
              - Asia/Shanghai
              - Asia/Singapore
              - Asia/Srednekolymsk
              - Asia/Taipei
              - Asia/Tashkent
              - Asia/Tbilisi
              - Asia/Tehran
              - Asia/Tel_Aviv
              - Asia/

# --- truncated at 32 KB (74 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/rainforest-qa/refs/heads/main/openapi/rainforest-qa-run-groups-api-openapi.yml