> ## Documentation Index
> Fetch the complete documentation index at: https://docs.app.strix.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Add repositories

> Register one or more repository assets for the authenticated organization.



## OpenAPI

````yaml /openapi.json post /repositories
openapi: 3.1.0
info:
  title: Strix API
  version: 1.0.0
  description: >-
    Public REST API for the Strix autonomous penetration testing platform.
    Manage scans, vulnerabilities, assets, schedules, API tokens, and webhooks.
servers:
  - url: /api/v1
    description: Strix v1 API
security:
  - BearerAuth: []
tags:
  - name: Scans
    description: Launch, monitor, and manage security scans.
  - name: Vulnerabilities
    description: View and triage discovered vulnerabilities.
  - name: Assets
    description: Domains and repositories registered for scanning.
  - name: Schedules
    description: Recurring scan schedules (Pro plan).
  - name: Tokens
    description: Manage API tokens for authentication.
  - name: Webhooks
    description: Configure webhook subscriptions for real-time event notifications.
  - name: Organization
    description: Workspace configuration for the authenticated organization.
  - name: Members
    description: Manage organization members and roles.
  - name: Invitations
    description: List and revoke organization invitations.
  - name: PR Reviews
    description: Automated security review of pull requests.
  - name: Connectors
    description: Network connectors for scanning internal/private targets.
  - name: Knowledge
    description: >-
      Organization knowledge base: documents, policies, and repo profiles that
      steer the agent.
  - name: Uploads
    description: Upload source/code/documentation archives for whitebox scans.
  - name: Integrations
    description: Third-party integrations (GitLab, Bitbucket, ticketing).
  - name: Chat
    description: Conversational agent sessions.
  - name: Analytics
    description: Aggregate dashboard analytics.
  - name: Test Users
    description: >-
      Per-domain test accounts (with optional MFA) the agent authenticates as
      during scans.
paths:
  /repositories:
    post:
      tags:
        - Assets
      summary: Add repositories
      description: >-
        Register one or more repository assets for the authenticated
        organization.
      operationId: createRepositories
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
                - $ref: '#/components/schemas/CreateRepositoryRequest'
                - type: array
                  items:
                    $ref: '#/components/schemas/CreateRepositoryRequest'
      responses:
        '201':
          description: Repositories added.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepositoriesCreateResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalError'
      security:
        - BearerAuth:
            - assets:write
components:
  schemas:
    CreateRepositoryRequest:
      type: object
      properties:
        full_name:
          type: string
        provider:
          type: string
          default: github
        installation_id:
          type:
            - integer
            - 'null'
        tags:
          type: array
          items:
            type: string
          description: >-
            Enterprise asset labels for RBAC scoping. Requires the Enterprise
            plan.
        business_unit:
          type:
            - string
            - 'null'
          description: >-
            Enterprise asset label for RBAC scoping. Requires the Enterprise
            plan.
      required:
        - full_name
    RepositoriesCreateResponse:
      type: object
      properties:
        repositories:
          type: array
          items:
            $ref: '#/components/schemas/RepositoryAsset'
      required:
        - repositories
    RepositoryAsset:
      type: object
      properties:
        id:
          type: string
          format: uuid
        organization_id:
          type: string
        full_name:
          type: string
        provider:
          type: string
        url:
          type: string
        default_branch:
          type: string
        tags:
          type: array
          items:
            type: string
          description: Enterprise asset labels used for RBAC scoping.
        business_unit:
          type:
            - string
            - 'null'
          description: Enterprise asset label used for RBAC scoping.
        pr_review_enabled:
          type: boolean
          description: Whether automated PR reviews are enabled for this repository.
        pr_review_approvals_enabled:
          type:
            - boolean
            - 'null'
          description: >-
            Tri-state per-repo override of the org PR review policy. true forces
            Strix to submit a GitHub approval on clean PRs for this repo, false
            forces it off, null inherits the org default (approve_clean_prs).
        pr_review_non_blocking:
          type:
            - boolean
            - 'null'
          description: >-
            Tri-state per-repo override of the org PR review policy. true forces
            findings to never block this repo's PRs (posted as comments only),
            false forces blocking on, null inherits the org default
            (block_on_findings).
        pr_review_on_push:
          type:
            - boolean
            - 'null'
          description: >-
            Tri-state per-repo override of the org PR review policy. true forces
            Strix to re-review this repo's PRs on every pushed commit, false
            forces it off (review only when the PR is opened), null inherits the
            org default (review_on_push).
        created_at:
          type: string
          format: date-time
        last_scan_at:
          type:
            - string
            - 'null'
          format: date-time
      required:
        - id
        - organization_id
        - full_name
        - created_at
    ErrorResponse:
      type: object
      properties:
        detail:
          type: string
      required:
        - detail
  responses:
    BadRequest:
      description: Bad request.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: Missing or invalid API token.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Forbidden:
      description: Insufficient permissions or missing scope.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalError:
      description: Internal server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        API token obtained from the Tokens endpoint. Include as `Authorization:
        Bearer <token>`.

````