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

# Create or update a alert by external ID



## OpenAPI

````yaml /openapi/alerts.json put /alerts/external/{externalId}
openapi: 3.1.1
info:
  title: ARTU Compliance API
  version: 1.0.0
  description: 'API for compliance management. Documentation: https://docs.artu.ai'
servers:
  - url: https://api.artu.ai
security:
  - bearerAuth: []
    environmentHeader: []
paths:
  /alerts/external/{externalId}:
    put:
      tags:
        - Alerts
      summary: Create or update a alert by external ID
      operationId: alerts.upsertByExternalId
      parameters:
        - name: externalId
          in: path
          required: true
          schema:
            allOf:
              - type: string
                description: External ID
              - type: string
                minLength: 1
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  maxLength: 255
                  description: Name
                description:
                  type: string
                  maxLength: 2000
                  description: Description
                metadata:
                  type: object
                  propertyNames:
                    type: string
                  additionalProperties: {}
                  description: Metadata
                scope:
                  enum:
                    - base
                    - MX:AV
                    - MX:AV:ARI
                    - MX:AV:AVI
                    - MX:AV:INM
                    - MX:AV:JYS
                    - MX:AV:MJR
                    - MX:AV:MPC
                    - MX:AV:TSC
                    - MX:AV:VEH
                    - MX:CNBV
                    - MX:CNBV:TRANSMISOR
                    - MX
                  type: string
                scopeData:
                  type: object
                  properties:
                    MX:
                      type: object
                      properties:
                        actividadVulnerable:
                          type: object
                          properties:
                            mesReportado:
                              anyOf:
                                - type: string
                                - type: string
                                  format: date-time
                                  x-native-type: date
                              description: Reported Month
                            ARI:
                              type: object
                            AVI:
                              type: object
                            INM:
                              type: object
                            JYS:
                              type: object
                            MJR:
                              type: object
                            MPC:
                              type: object
                            TSC:
                              type: object
                            VEH:
                              type: object
                        cnbv:
                          type: object
                          properties:
                            TRANSMISOR:
                              type: object
                              properties:
                                tipoReporte:
                                  enum:
                                    - '1'
                                    - '2'
                                    - '3'
                                  type: string
                                  description: Report Type
                                periodoReporte:
                                  anyOf:
                                    - type: string
                                    - type: string
                                      format: date-time
                                      x-native-type: date
                                  description: Report Period
                              required:
                                - tipoReporte
                                - periodoReporte
                    US: {}
              required:
                - scope
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      externalId:
                        type: string
                        description: External ID
                      name:
                        type: string
                        maxLength: 255
                        description: Name
                      description:
                        type: string
                        maxLength: 2000
                        description: Description
                      metadata:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                        description: Metadata
                      scope:
                        enum:
                          - base
                          - MX:AV
                          - MX:AV:ARI
                          - MX:AV:AVI
                          - MX:AV:INM
                          - MX:AV:JYS
                          - MX:AV:MJR
                          - MX:AV:MPC
                          - MX:AV:TSC
                          - MX:AV:VEH
                          - MX:CNBV
                          - MX:CNBV:TRANSMISOR
                          - MX
                        type: string
                      scopeData:
                        type: object
                        properties:
                          MX:
                            type: object
                            properties:
                              actividadVulnerable:
                                type: object
                                properties:
                                  mesReportado:
                                    type: string
                                    pattern: ^\d{6}$
                                    description: Reported Month
                                  ARI:
                                    type: object
                                  AVI:
                                    type: object
                                  INM:
                                    type: object
                                  JYS:
                                    type: object
                                  MJR:
                                    type: object
                                  MPC:
                                    type: object
                                  TSC:
                                    type: object
                                  VEH:
                                    type: object
                              cnbv:
                                type: object
                                properties:
                                  TRANSMISOR: {}
                          US: {}
                      id:
                        type: string
                        format: uuid
                      organizationId:
                        type: string
                      environment:
                        enum:
                          - test
                          - live
                        type: string
                      status:
                        enum:
                          - new
                          - in_review
                          - report_draft
                          - report_validating
                          - report_valid
                          - report_invalid
                          - filed
                          - resolved
                          - dismissed
                        type: string
                        description: Alert status
                      filedAt:
                        anyOf:
                          - type: string
                            format: date-time
                            description: Filed at
                          - type: 'null'
                      filedReportId:
                        anyOf:
                          - type: string
                            format: uuid
                            description: Filed report ID
                          - type: 'null'
                      itemCount:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                      createdByWorkflowId:
                        type: string
                        format: uuid
                      createdAt:
                        type: string
                        format: date-time
                      updatedAt:
                        type: string
                        format: date-time
                      tags:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                              format: uuid
                            name:
                              type: string
                            color:
                              anyOf:
                                - type: string
                                - type: 'null'
                          required:
                            - id
                            - name
                            - color
                    required:
                      - scope
                      - id
                      - organizationId
                      - environment
                      - status
                      - itemCount
                      - createdAt
                      - updatedAt
                  action:
                    enum:
                      - created
                      - updated
                      - skipped
                    type: string
                required:
                  - data
                  - action
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: API key authentication. Obtain your API key from the dashboard.
    environmentHeader:
      type: apiKey
      in: header
      name: X-Environment
      description: Target environment for the request. Must be "test" or "live".

````