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

# Store GCR Container Registry credentials

> Stores GCP service account key credentials for Google Container Registry (GCR) or Artifact Registry at the organization level. These credentials will be used to authenticate and pull container images for vulnerability scanning.



## OpenAPI

````yaml post /integrations/gcr/container-registry/organization/{organizationId}/credentials
openapi: 3.0.0
info:
  title: Cybedefend API
  description: >-
    CybeDefend is an advanced API for application security analysis. Key
    features include OAuth 2.0 authentication, user/organization/project
    management, and REBAC-based permissions. It excels in static, dynamic, and
    IaC security analyses (SAST, DAST, IaC, etc.).
  version: '1.0'
  contact: {}
servers:
  - url: https://api-eu.cybedefend.com
    description: EU
  - url: https://api-us.cybedefend.com
    description: US
security: []
tags: []
paths:
  /integrations/gcr/container-registry/organization/{organizationId}/credentials:
    post:
      tags:
        - GCR Container Registry
      summary: Store GCR Container Registry credentials
      description: >-
        Stores GCP service account key credentials for Google Container Registry
        (GCR) or Artifact Registry at the organization level. These credentials
        will be used to authenticate and pull container images for vulnerability
        scanning.
      operationId: GcrContainerRegistryOrganizationController_storeCredentials
      parameters:
        - name: organizationId
          required: true
          in: path
          description: CybeDefend organization ID
          schema:
            format: uuid
            example: 550e8400-e29b-41d4-a716-446655440000
            type: string
      requestBody:
        required: true
        description: GCP service account key credentials for GCR/Artifact Registry access
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GcrStoreCredentialsDto'
      responses:
        '201':
          description: Credentials stored successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GcrCredentialResponseDto'
        '400':
          description: Bad request - Invalid credentials format or missing required fields
          content:
            application/json:
              schema:
                example:
                  message: Bad Request
                  statusCode: 400
                  timestamp: '2025-02-18T12:31:18.491Z'
                  path: /example/path
        '401':
          description: Unauthorized - Invalid or missing authentication token
          content:
            application/json:
              schema:
                example:
                  message: Unauthorized
                  statusCode: 401
                  timestamp: '2025-02-18T12:31:18.491Z'
                  path: /example/path
        '403':
          description: Forbidden - Insufficient permissions to manage integrations
          content:
            application/json:
              schema:
                example:
                  message: Forbidden
                  statusCode: 403
                  timestamp: '2025-02-18T12:31:18.491Z'
                  path: /example/path
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                example:
                  message: Internal server error
                  statusCode: 500
                  timestamp: '2025-02-18T12:31:18.491Z'
                  path: /example/path
components:
  schemas:
    GcrStoreCredentialsDto:
      type: object
      properties:
        projectId:
          type: string
          description: CybeDefend project ID to associate this credential with
          example: 097bbbf4-d1eb-4512-9950-684445279808
        gcpProjectId:
          type: string
          description: GCP project ID
          example: my-gcp-project-123
        registryHostname:
          type: string
          description: >-
            Registry hostname (gcr.io, us.gcr.io, eu.gcr.io, asia.gcr.io, or
            Artifact Registry hostname)
          example: gcr.io
        serviceAccountKey:
          type: string
          description: GCP Service Account JSON key (entire JSON content)
          example: '{"type": "service_account", "project_id": "...", ...}'
        description:
          type: string
          description: Description for this credential
          example: Production container registry
      required:
        - projectId
        - gcpProjectId
        - registryHostname
        - serviceAccountKey
    GcrCredentialResponseDto:
      type: object
      properties:
        id:
          type: string
          description: Credential ID
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        gcpProjectId:
          type: string
          description: GCP project ID
          example: my-gcp-project-123
        registryHostname:
          type: string
          description: Registry hostname
          example: gcr.io
        description:
          type: string
          description: Description
          example: Production container registry
        createdAt:
          type: string
          description: Creation date
          example: '2025-01-01T00:00:00Z'
      required:
        - id
        - gcpProjectId
        - registryHostname
        - createdAt

````