watchTowr Source Code Repositories API

The Source Code Repositories API from watchTowr — 3 operation(s) for source code repositories.

OpenAPI Specification

watchtowr-source-code-repositories-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: watchTowr Platform Client Activity Log Source Code Repositories API
  description: 'The watchTowr Platform Client API provides read and write access to your external attack surface managed by the watchTowr Preemptive Exposure Management platform: discovered assets (domains, subdomains, IP addresses and ranges, ports, containers, cloud storage, mobile applications, SaaS platforms and source code repositories), security findings, hunts, certificates, business units, points of interest, service listings, suspicious domains and the activity log. Data is retrieved over HTTPS using paginated list endpoints and authenticated with a per-tenant API bearer token. Reconstructed by API Evangelist from the official watchtowr/watchtowr-api-sdk (OpenAPI Generator) Python client.'
  version: '1.0'
  contact:
    name: watchTowr
    url: https://watchtowr.com
servers:
- url: https://{tenant}.{region}.watchtowr.io
  description: Per-tenant watchTowr Platform instance
  variables:
    tenant:
      default: your-tenant
      description: Your watchTowr tenant name
    region:
      default: your-region
      description: Your watchTowr region
security:
- bearerAuth: []
tags:
- name: Source Code Repositories
paths:
  /api/client/assets/repository/list:
    get:
      tags:
      - Source Code Repositories
      summary: List all source code repository assets
      operationId: get_list_asset_repositories
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenResponse'
      parameters:
      - name: page
        in: query
        required: false
        description: Pagination page. The default value is 1.
        schema:
          type: number
      - name: page_size
        in: query
        required: false
        description: Pagination size. The default value is 10 and the maximum is 30.
        schema:
          type: number
  /api/client/assets/repository/show/{id}:
    get:
      tags:
      - Source Code Repositories
      summary: Show the details of a source code repository asset
      operationId: get_asset_repository_details
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
      parameters:
      - name: id
        in: path
        required: true
        description: Identifier of the id.
        schema:
          type: string
  /api/client/assets/repository/update-status/{id}:
    put:
      tags:
      - Source Code Repositories
      summary: Update the status of a source code repository asset
      operationId: update_asset_repository_status
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        '422':
          description: Unprocessable Content
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnprocessableContent'
      parameters:
      - name: id
        in: path
        required: true
        description: Identifier of the id.
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
components:
  schemas:
    Unauthorized:
      type: object
      properties:
        message:
          type: string
          example: Unauthenticated.
    UnprocessableContent:
      type: object
      properties:
        message:
          type: string
        errors:
          type: object
    NotFound:
      type: object
      properties:
        message:
          type: string
          example: Resource not found.
    ForbiddenResponse:
      type: object
      properties:
        message:
          type: string
          example: This action is unauthorized.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key issued from the watchTowr Platform dashboard (Settings -> API Management / Integrations -> Client API), sent as a Bearer token.