Forgejo organization API

The organization API from Forgejo — 42 operation(s) for organization.

OpenAPI Specification

forgejo-organization-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  description: This documentation describes the Forgejo API.
  title: Forgejo activitypub organization API
  license:
    name: This file is distributed under the MIT license for the purpose of interoperability
    url: http://opensource.org/licenses/MIT
  version: 16.0.0-dev-465-4b83448b7d+gitea-1.22.0
basePath: /api/v1
schemes:
- https
- http
consumes:
- application/json
- text/plain
produces:
- application/json
- text/html
security:
- BasicAuth: []
- AuthorizationHeaderToken: []
- SudoParam: []
- SudoHeader: []
- TOTPHeader: []
tags:
- name: organization
paths:
  /org/{org}/repos:
    post:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Create a repository in an organization
      operationId: createOrgRepoDeprecated
      deprecated: true
      parameters:
      - type: string
        description: name of organization
        name: org
        in: path
        required: true
      - name: body
        in: body
        schema:
          $ref: '#/definitions/CreateRepoOption'
      responses:
        '201':
          $ref: '#/responses/Repository'
        '403':
          $ref: '#/responses/forbidden'
        '404':
          $ref: '#/responses/notFound'
        '422':
          $ref: '#/responses/validationError'
  /orgs:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List all organizations
      operationId: orgGetAll
      parameters:
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/OrganizationList'
    post:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Create an organization
      operationId: orgCreate
      parameters:
      - name: organization
        in: body
        required: true
        schema:
          $ref: '#/definitions/CreateOrgOption'
      responses:
        '201':
          $ref: '#/responses/Organization'
        '403':
          $ref: '#/responses/forbidden'
        '422':
          $ref: '#/responses/validationError'
  /orgs/{org}:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: Get an organization
      operationId: orgGet
      parameters:
      - type: string
        description: name of the organization to get
        name: org
        in: path
        required: true
      responses:
        '200':
          $ref: '#/responses/Organization'
        '404':
          $ref: '#/responses/notFound'
    delete:
      produces:
      - application/json
      tags:
      - organization
      summary: Delete an organization
      operationId: orgDelete
      parameters:
      - type: string
        description: organization that is to be deleted
        name: org
        in: path
        required: true
      responses:
        '204':
          $ref: '#/responses/empty'
        '404':
          $ref: '#/responses/notFound'
    patch:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Edit an organization
      operationId: orgEdit
      parameters:
      - type: string
        description: name of the organization to edit
        name: org
        in: path
        required: true
      - name: body
        in: body
        required: true
        schema:
          $ref: '#/definitions/EditOrgOption'
      responses:
        '200':
          $ref: '#/responses/Organization'
        '404':
          $ref: '#/responses/notFound'
        '422':
          $ref: '#/responses/error'
  /orgs/{org}/actions/runners:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: Get the organization's runners
      operationId: getOrgRunners
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: boolean
        description: whether to include all visible runners (true) or only those that are directly owned by the organization (false)
        name: visible
        in: query
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/ActionRunnerList'
        '400':
          $ref: '#/responses/error'
        '404':
          $ref: '#/responses/notFound'
    post:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Register a new organization-level runner
      operationId: registerOrgRunner
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - name: body
        in: body
        schema:
          $ref: '#/definitions/RegisterRunnerOptions'
      responses:
        '201':
          $ref: '#/responses/RegisterRunnerResponse'
        '400':
          $ref: '#/responses/error'
        '401':
          $ref: '#/responses/unauthorized'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/actions/runners/jobs:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: Search for organization's action jobs according filter conditions
      operationId: orgSearchRunJobs
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: a comma separated list of run job labels to search for
        name: labels
        in: query
      responses:
        '200':
          $ref: '#/responses/RunJobList'
        '403':
          $ref: '#/responses/forbidden'
  /orgs/{org}/actions/runners/registration-token:
    get:
      description: 'This operation has been deprecated in Forgejo 15. Use the web UI or [`/orgs/{org}/actions/runners`](#/organization/registerOrgRunner) instead.

        '
      produces:
      - application/json
      tags:
      - organization
      summary: Get the organization's runner registration token
      operationId: orgGetRunnerRegistrationToken
      deprecated: true
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      responses:
        '200':
          $ref: '#/responses/RegistrationToken'
  /orgs/{org}/actions/runners/{runner_id}:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: Get a particular runner that belongs to the organization
      operationId: getOrgRunner
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: ID of the runner
        name: runner_id
        in: path
        required: true
      responses:
        '200':
          $ref: '#/responses/ActionRunner'
        '400':
          $ref: '#/responses/error'
        '404':
          $ref: '#/responses/notFound'
    delete:
      produces:
      - application/json
      tags:
      - organization
      summary: Delete a particular runner that belongs to the organization
      operationId: deleteOrgRunner
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: ID of the runner
        name: runner_id
        in: path
        required: true
      responses:
        '204':
          description: runner has been deleted
        '400':
          $ref: '#/responses/error'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/actions/secrets:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List actions secrets of an organization
      operationId: orgListActionsSecrets
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/SecretList'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/actions/secrets/{secretname}:
    put:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Create or Update a secret value in an organization
      operationId: updateOrgSecret
      parameters:
      - type: string
        description: name of organization
        name: org
        in: path
        required: true
      - type: string
        description: name of the secret
        name: secretname
        in: path
        required: true
      - name: body
        in: body
        schema:
          $ref: '#/definitions/CreateOrUpdateSecretOption'
      responses:
        '201':
          description: response when creating a secret
        '204':
          description: response when updating a secret
        '400':
          $ref: '#/responses/error'
        '404':
          $ref: '#/responses/notFound'
    delete:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Delete a secret in an organization
      operationId: deleteOrgSecret
      parameters:
      - type: string
        description: name of organization
        name: org
        in: path
        required: true
      - type: string
        description: name of the secret
        name: secretname
        in: path
        required: true
      responses:
        '204':
          description: delete one secret of the organization
        '400':
          $ref: '#/responses/error'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/actions/variables:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List variables of an organization
      operationId: getOrgVariablesList
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/VariableList'
        '400':
          $ref: '#/responses/error'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/actions/variables/{variablename}:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: Get organization's variable by name
      operationId: getOrgVariable
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: name of the variable
        name: variablename
        in: path
        required: true
      responses:
        '200':
          $ref: '#/responses/ActionVariable'
        '400':
          $ref: '#/responses/error'
        '404':
          $ref: '#/responses/notFound'
    put:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Update variable in organization
      operationId: updateOrgVariable
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: name of the variable
        name: variablename
        in: path
        required: true
      - name: body
        in: body
        schema:
          $ref: '#/definitions/UpdateVariableOption'
      responses:
        '201':
          description: response when updating an org-level variable
        '204':
          description: response when updating an org-level variable
        '400':
          $ref: '#/responses/error'
        '404':
          $ref: '#/responses/notFound'
    post:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Create a new variable in organization
      operationId: createOrgVariable
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: name of the variable
        name: variablename
        in: path
        required: true
      - name: body
        in: body
        schema:
          $ref: '#/definitions/CreateVariableOption'
      responses:
        '201':
          description: response when creating an org-level variable
        '204':
          description: response when creating an org-level variable
        '400':
          $ref: '#/responses/error'
        '404':
          $ref: '#/responses/notFound'
    delete:
      produces:
      - application/json
      tags:
      - organization
      summary: Delete organization's variable by name
      operationId: deleteOrgVariable
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: name of the variable
        name: variablename
        in: path
        required: true
      responses:
        '204':
          description: response when deleting a variable
        '400':
          $ref: '#/responses/error'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/activities/feeds:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List an organization's activity feeds
      operationId: orgListActivityFeeds
      parameters:
      - type: string
        description: name of the org
        name: org
        in: path
        required: true
      - type: string
        format: date
        description: the date of the activities to be found
        name: date
        in: query
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/ActivityFeedsList'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/avatar:
    post:
      produces:
      - application/json
      tags:
      - organization
      summary: Update an organization's avatar
      operationId: orgUpdateAvatar
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - name: body
        in: body
        schema:
          $ref: '#/definitions/UpdateUserAvatarOption'
      responses:
        '204':
          $ref: '#/responses/empty'
        '404':
          $ref: '#/responses/notFound'
    delete:
      produces:
      - application/json
      tags:
      - organization
      summary: Delete an organization's avatar. It will be replaced by a default one
      operationId: orgDeleteAvatar
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      responses:
        '204':
          $ref: '#/responses/empty'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/block/{username}:
    put:
      produces:
      - application/json
      tags:
      - organization
      summary: Blocks a user from the organization
      operationId: orgBlockUser
      parameters:
      - type: string
        description: name of the org
        name: org
        in: path
        required: true
      - type: string
        description: username of the user
        name: username
        in: path
        required: true
      responses:
        '204':
          $ref: '#/responses/empty'
        '404':
          $ref: '#/responses/notFound'
        '422':
          $ref: '#/responses/validationError'
  /orgs/{org}/hooks:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List an organization's webhooks
      operationId: orgListHooks
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/HookListWithoutPagination'
        '404':
          $ref: '#/responses/notFound'
    post:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Create a hook
      operationId: orgCreateHook
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - name: body
        in: body
        required: true
        schema:
          $ref: '#/definitions/CreateHookOption'
      responses:
        '201':
          $ref: '#/responses/Hook'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/hooks/{id}:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: Get a hook
      operationId: orgGetHook
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        format: int64
        description: id of the hook to get
        name: id
        in: path
        required: true
      responses:
        '200':
          $ref: '#/responses/Hook'
        '404':
          $ref: '#/responses/notFound'
    delete:
      produces:
      - application/json
      tags:
      - organization
      summary: Delete a hook
      operationId: orgDeleteHook
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        format: int64
        description: id of the hook to delete
        name: id
        in: path
        required: true
      responses:
        '204':
          $ref: '#/responses/empty'
        '404':
          $ref: '#/responses/notFound'
    patch:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Update a hook
      operationId: orgEditHook
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        format: int64
        description: id of the hook to update
        name: id
        in: path
        required: true
      - name: body
        in: body
        schema:
          $ref: '#/definitions/EditHookOption'
      responses:
        '200':
          $ref: '#/responses/Hook'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/labels:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List an organization's labels
      operationId: orgListLabels
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - enum:
        - mostissues
        - leastissues
        - reversealphabetically
        type: string
        description: 'Specifies the sorting method: mostissues, leastissues, or reversealphabetically.'
        name: sort
        in: query
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/LabelList'
        '404':
          $ref: '#/responses/notFound'
    post:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Create a label for an organization
      operationId: orgCreateLabel
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - name: body
        in: body
        schema:
          $ref: '#/definitions/CreateLabelOption'
      responses:
        '201':
          $ref: '#/responses/Label'
        '404':
          $ref: '#/responses/notFound'
        '422':
          $ref: '#/responses/validationError'
  /orgs/{org}/labels/{id}:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: Get a single label
      operationId: orgGetLabel
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        format: int64
        description: id of the label to get
        name: id
        in: path
        required: true
      responses:
        '200':
          $ref: '#/responses/Label'
        '404':
          $ref: '#/responses/notFound'
    delete:
      tags:
      - organization
      summary: Delete a label
      operationId: orgDeleteLabel
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        format: int64
        description: id of the label to delete
        name: id
        in: path
        required: true
      responses:
        '204':
          $ref: '#/responses/empty'
        '404':
          $ref: '#/responses/notFound'
    patch:
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - organization
      summary: Update a label
      operationId: orgEditLabel
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        format: int64
        description: id of the label to edit
        name: id
        in: path
        required: true
      - name: body
        in: body
        schema:
          $ref: '#/definitions/EditLabelOption'
      responses:
        '200':
          $ref: '#/responses/Label'
        '404':
          $ref: '#/responses/notFound'
        '422':
          $ref: '#/responses/validationError'
  /orgs/{org}/list_blocked:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List the organization's blocked users
      operationId: orgListBlockedUsers
      parameters:
      - type: string
        description: name of the org
        name: org
        in: path
        required: true
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/BlockedUserList'
  /orgs/{org}/members:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List an organization's members
      operationId: orgListMembers
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/UserList'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/members/{username}:
    get:
      tags:
      - organization
      summary: Check if a user is a member of an organization
      operationId: orgIsMember
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: username of the user
        name: username
        in: path
        required: true
      responses:
        '204':
          description: user is a member
        '303':
          description: redirection to /orgs/{org}/public_members/{username}
        '404':
          description: user is not a member
    delete:
      produces:
      - application/json
      tags:
      - organization
      summary: Remove a member from an organization
      operationId: orgDeleteMember
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: username of the user
        name: username
        in: path
        required: true
      responses:
        '204':
          description: member removed
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/public_members:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List an organization's public members
      operationId: orgListPublicMembers
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/UserList'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/public_members/{username}:
    get:
      tags:
      - organization
      summary: Check if a user is a public member of an organization
      operationId: orgIsPublicMember
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: username of the user
        name: username
        in: path
        required: true
      responses:
        '204':
          description: user is a public member
        '404':
          description: user is not a public member
    put:
      produces:
      - application/json
      tags:
      - organization
      summary: Publicize a user's membership
      operationId: orgPublicizeMember
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: username of the user
        name: username
        in: path
        required: true
      responses:
        '204':
          description: membership publicized
        '403':
          $ref: '#/responses/forbidden'
        '404':
          $ref: '#/responses/notFound'
    delete:
      produces:
      - application/json
      tags:
      - organization
      summary: Conceal a user's membership
      operationId: orgConcealMember
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: username of the user
        name: username
        in: path
        required: true
      responses:
        '204':
          $ref: '#/responses/empty'
        '403':
          $ref: '#/responses/forbidden'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/quota:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: Get quota information for an organization
      operationId: orgGetQuota
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      responses:
        '200':
          $ref: '#/responses/QuotaInfo'
        '403':
          $ref: '#/responses/forbidden'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/quota/artifacts:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List the artifacts affecting the organization's quota
      operationId: orgListQuotaArtifacts
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/QuotaUsedArtifactList'
        '403':
          $ref: '#/responses/forbidden'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/quota/attachments:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List the attachments affecting the organization's quota
      operationId: orgListQuotaAttachments
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/QuotaUsedAttachmentList'
        '403':
          $ref: '#/responses/forbidden'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/quota/check:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: Check if the organization is over quota for a given subject
      operationId: orgCheckQuota
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: string
        description: subject of the quota
        name: subject
        in: query
        required: true
      responses:
        '200':
          description: Returns true if the action is accepted.
          schema:
            type: boolean
        '403':
          $ref: '#/responses/forbidden'
        '404':
          $ref: '#/responses/notFound'
        '422':
          $ref: '#/responses/validationError'
  /orgs/{org}/quota/packages:
    get:
      produces:
      - application/json
      tags:
      - organization
      summary: List the packages affecting the organization's quota
      operationId: orgListQuotaPackages
      parameters:
      - type: string
        description: name of the organization
        name: org
        in: path
        required: true
      - type: integer
        description: page number of results to return (1-based)
        name: page
        in: query
      - type: integer
        description: page size of results
        name: limit
        in: query
      responses:
        '200':
          $ref: '#/responses/QuotaUsedPackageList'
        '403':
          $ref: '#/responses/forbidden'
        '404':
          $ref: '#/responses/notFound'
  /orgs/{org}/rename:
    post:
      produces:
      - application/json
      tags:
      - organization
      summary: Rename an organization
      operationId: renameOrg
      parameters:
      - type: string
        description: existing org name
        name: org
        in: path
        required: true
      - name: body
        in: body
        required: true
        schema:
          $ref: '#/definitions/RenameOrgOption'
      responses:
        '204':
          $ref: '#/responses/empty'
        '403':
          $ref: '#/responses/forbidden'
        '422':
          $ref: '#/responses/validationError'
  /orgs/{org}/repos:
    get:
      produces:
      - application/json
      tags:
      - organization
  

# --- truncated at 32 KB (97 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/forgejo/refs/heads/main/openapi/forgejo-organization-api-openapi.yml