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

# Get by registration ID

> Returns a single registration by UUID.



## OpenAPI

````yaml /open-api/en/forecast-alarm_version-1.json get /v1/alarms/forecasts/get-by-id/{registrationId}
openapi: 3.1.0
info:
  title: OpenAPI definition
  version: v0
servers:
  - url: https://api.iklim.co
    description: Production server
  - url: https://api-test.iklim.co
    description: Test server
security: []
tags:
  - name: Forecast Point Alarm Registrations
    description: CRUD & lookup endpoints for forecast point alarm registrations
paths:
  /v1/alarms/forecasts/get-by-id/{registrationId}:
    get:
      tags:
        - Forecast Point Alarm Registrations
      summary: Get by registration ID
      description: Returns a single registration by UUID.
      operationId: getById
      parameters:
        - name: registrationId
          in: path
          description: Registration UUID
          required: true
          schema:
            type: string
          example: f7587d9e-2481-4b4c-818d-c8d1946851b7
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/RegistrationResponse'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
        '401':
          description: Unauthorized
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
components:
  schemas:
    RegistrationResponse:
      type: object
      properties:
        registrationId:
          type: string
          format: uuid
          description: UUID of the registration record (required for update operations).
          example: f7587d9e-2481-4b4c-818d-c8d1946851b7
        recipientId:
          type: string
          description: >-
            Caller-defined external reference identifier for the notification
            recipient.
          example: customer-system-001
        boundary:
          $ref: '#/components/schemas/BoundarySchemaWrapper'
        forecastDays:
          type: integer
          format: int32
          description: >-
            Number of forecast days ahead to evaluate for alarm conditions
            (1–14).
          example: 3
        forecastAlarmDelivery:
          type: array
          description: >-
            Time windows at which alarm notifications are dispatched (MORNING –
            04:00 UTC, EVENING – 16:00 UTC).
          example:
            - MORNING
            - EVENING
          items:
            type: string
            enum:
              - MORNING
              - EVENING
        webhook:
          $ref: '#/components/schemas/Webhook'
          description: Outbound callback configuration for this registration.
        filter:
          $ref: '#/components/schemas/Filter'
          description: >-
            Threshold filters that control which forecast conditions trigger an
            alarm.
        createdAt:
          type: string
          format: date-time
          description: Timestamp when the registration was first created (ISO-8601).
          example: '2025-01-01T10:15:30Z'
        updatedAt:
          type: string
          format: date-time
          description: Timestamp of the most recent update to the registration (ISO-8601).
          example: '2025-01-01T11:15:30Z'
        warnings:
          type: array
          description: Non-fatal warnings generated during registration processing.
          example:
            - warning-1
            - warning-2
          items:
            type: string
    StandardErrorResponse:
      type: object
      description: Standard API error response structure
      properties:
        timestamp:
          type: string
          format: date-time
          description: Timestamp when the error occurred
          example: YYYY-mm-DDTHH:MM:SS.nnnnnnnnn
        status:
          type: integer
          format: int32
          description: HTTP status code
          example: XXX
        error:
          type: string
          description: Error name or type
          example: Error Name
          minLength: 1
        message:
          type: string
          description: Main error message
          example: Error Message
          minLength: 1
        messages:
          type: array
          description: Additional detailed error messages
          items:
            type: string
        path:
          type: string
          description: Request path that caused the error
          example: /endpoint/uri/here
          minLength: 1
      required:
        - error
        - message
        - path
        - status
        - timestamp
    BoundarySchemaWrapper:
      description: >-
        <section><h3>Alarm registration boundary</h3><p>Defines the geographic
        scope to monitor for forecast alarm conditions. The concrete boundary
        type is selected via the <code>type</code> discriminator field; supply
        only the fields that belong to the chosen
        subtype.</p><ul><li><strong>ADMINISTRATIVE</strong> – boundary
        identified by a city (<code>cityId</code>) and a district
        (<code>districtId</code>); both fields are
        required.</li><li><strong>POINT</strong> – boundary defined by a single
        longitude/latitude coordinate (<code>point</code>). The alarm evaluates
        forecast data for the nearest forecast grid cell to that
        coordinate.</li></ul></section>
      discriminator:
        propertyName: type
        mapping:
          ADMINISTRATIVE:
            $ref: '#/components/schemas/RegisterAdministrativeBoundary'
          POINT:
            $ref: '#/components/schemas/RegisterPointBoundary'
      oneOf:
        - $ref: '#/components/schemas/RegisterAdministrativeBoundary'
        - $ref: '#/components/schemas/RegisterPointBoundary'
    Webhook:
      type: object
      description: >-
        <section><h3>Outbound callback configuration for forecast alarm
        notifications</h3><p>When the first forecast alarm registration is
        created for a user account, the webhook provided in the request is
        stored and associated with that account. Only one webhook can be defined
        per account. To change the webhook, use the <code>update</code>
        endpoint.</p><p>For subsequent alarm records, resending the webhook is
        not required; the previously stored webhook is used automatically. The
        <code>accountId</code> field is optional – if supplied, the webhook of
        the specified account is used instead.</p></section>
      properties:
        accountId:
          type: string
          format: uuid
          description: >-
            Account UUID that owns this webhook (optional; defaults to the
            caller’s account).
          example: 2f04f1b5-1c0a-4c4e-b0a7-0ba6e9b7f2e1
        url:
          type: string
          description: >-
            Destination HTTPS endpoint to receive forecast alarm callback
            payloads.
          example: https://api.customer.com/alerts/forecast-callback
        httpMethod:
          type: string
          description: HTTP method to use when delivering alarm payloads.
          enum:
            - POST
            - PUT
            - GET
          example: POST
        contentType:
          type: string
          description: Content-Type header value of the delivered payload.
          example: application/json
        authentication:
          $ref: '#/components/schemas/AuthWrapper'
          description: >-
            Authentication settings for securing deliveries to the callback
            endpoint.
        requestHeaders:
          $ref: '#/components/schemas/MapTypeSchema'
          description: >-
            Custom HTTP headers to include with every webhook delivery request.
            Format: {"Header-Name":"value","Another-Header":"value"}
          example:
            source: iklim.co
            custom-header: value
        deliveryPolicy:
          $ref: '#/components/schemas/DeliveryPolicy'
          description: Delivery policy controlling timeouts and retry behaviour.
    Filter:
      type: object
      description: >-
        Forecast metric threshold filters; only conditions that meet or exceed
        the specified level will trigger an alarm.
      properties:
        precipitationThreshold:
          type: string
          description: >-
            Minimum precipitation intensity category to trigger an alarm (mm / 3
            h).
          enum:
            - DRIZZLE
            - LIGHT
            - MODERATE
            - HEAVY
            - VERY_HEAVY
            - EXTREME
          example: MODERATE
        snowFallThreshold:
          type: string
          description: Minimum snowfall depth category to trigger an alarm (cm / 3 h).
          enum:
            - LIGHT
            - MODERATE
            - HEAVY
          example: LIGHT
        windGustThreshold:
          type: string
          description: Minimum wind-gust category to trigger an alarm (km/h).
          enum:
            - STRONG_WIND
            - STORM
            - SEVERE_STORM
            - HURRICANE
          example: STRONG_WIND
        hotTemperatureThreshold:
          type: string
          description: Minimum heat-wave category to trigger an alarm (°C).
          enum:
            - HOT_SNAP
            - HEAVY_HOT_SNAP
            - EXTREME_HOT_SNAP
          example: HOT_SNAP
        coldTemperatureThreshold:
          type: string
          description: Minimum cold-snap category to trigger an alarm (°C).
          enum:
            - EXTREME_COLD_SNAP
            - HEAVY_COLD_SNAP
            - COLD_SNAP
          example: COLD_SNAP
    RegisterAdministrativeBoundary:
      type: object
      description: Administrative boundary identified by city and district.
      properties:
        type:
          type: string
          enum:
            - ADMINISTRATIVE
            - POINT
          writeOnly: true
        cityId:
          type: integer
          format: int64
          description: Numeric identifier of the city.
          example: 6
        districtId:
          type: integer
          format: int64
          description: Numeric identifier of the district.
          example: 557
      required:
        - cityId
        - districtId
    RegisterPointBoundary:
      type: object
      description: >-
        Geographic point boundary defined by a single longitude/latitude
        coordinate.
      properties:
        type:
          type: string
          enum:
            - ADMINISTRATIVE
            - POINT
          writeOnly: true
        point:
          $ref: '#/components/schemas/GeoPoint'
          description: >-
            Geographic coordinate (longitude, latitude) of the alarm monitoring
            point.
    AuthWrapper:
      description: Authentication envelope with discriminator field "type".
      discriminator:
        propertyName: type
        mapping:
          BASIC:
            $ref: '#/components/schemas/BasicAuthentication'
          JWT_TOKEN:
            $ref: '#/components/schemas/JwtAuthentication'
          API_KEY:
            $ref: '#/components/schemas/ApiKeyAuthentication'
          HMAC_SIGNATURE:
            $ref: '#/components/schemas/HmacAuthentication'
      oneOf:
        - $ref: '#/components/schemas/BasicAuthentication'
        - $ref: '#/components/schemas/JwtAuthentication'
        - $ref: '#/components/schemas/ApiKeyAuthentication'
        - $ref: '#/components/schemas/HmacAuthentication'
    MapTypeSchema:
      type: object
      example:
        key-1: value-1
        key-2: value-2
      properties:
        key:
          type: string
          example: key-1
        value:
          type: string
          example: value-1
    DeliveryPolicy:
      type: object
      description: Delivery timeout and retry behaviour.
      properties:
        timeout:
          type: integer
          format: int64
          description: Request timeout in seconds before the delivery attempt is abandoned.
          example: 60
        maxRetries:
          type: integer
          format: int32
          description: Maximum number of retry attempts after an initial delivery failure.
          example: 3
        retryDelay:
          type: integer
          format: int32
          description: Delay in seconds between successive retry attempts.
          example: 10
    GeoPoint:
      type: object
      properties:
        lng:
          type: number
          format: double
          description: Longitude coordinate.
          example: 32.857358
          maximum: 180
          minimum: -180
        lat:
          type: number
          format: double
          description: Latitude coordinate.
          example: 39.93504
          maximum: 90
          minimum: -90
      required:
        - lat
        - lng
    BasicAuthentication:
      type: object
      description: HTTP Basic authentication.
      properties:
        type:
          type: string
          description: Authentication type discriminator.
          enum:
            - BASIC
            - JWT_TOKEN
            - API_KEY
            - HMAC_SIGNATURE
          example: API_KEY
          writeOnly: true
        username:
          type: string
          description: Username for Basic auth.
          example: alert-user
        password:
          type: string
          description: Password for Basic auth.
          example: '******'
    JwtAuthentication:
      type: object
      description: Bearer JWT token authentication.
      properties:
        type:
          type: string
          description: Authentication type discriminator.
          enum:
            - BASIC
            - JWT_TOKEN
            - API_KEY
            - HMAC_SIGNATURE
          example: API_KEY
          writeOnly: true
        jwtToken:
          type: string
          description: Pre-issued JWT token to include as Authorization header.
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9....
    ApiKeyAuthentication:
      type: object
      description: API key authentication (header and/or query parameter).
      properties:
        type:
          type: string
          description: Authentication type discriminator.
          enum:
            - BASIC
            - JWT_TOKEN
            - API_KEY
            - HMAC_SIGNATURE
          example: API_KEY
          writeOnly: true
        apiKey:
          type: string
          description: API key value to send with the request.
          example: x-1234567890abcdef
        asQueryParameter:
          type: boolean
          description: If true, send the API key as a query parameter.
          example: false
        asHeader:
          type: boolean
          description: If true, send the API key as a request header.
          example: true
    HmacAuthentication:
      type: object
      description: >-
        HMAC signature authentication using a clientId/secret pair. The
        following HTTP headers are added to each delivery request:
        <code>X-Client-Id</code> (client identifier), <code>X-Signature</code>
        (Base64-encoded HMAC over the string
        <code>clientId|timestamp|nonce|payload</code>),
        <code>X-HmacAlgorithm</code> (algorithm name), <code>X-Timestamp</code>
        (epoch milliseconds), <code>X-Nonce</code> (random nonce). Timestamp and
        nonce are generated fresh on every delivery attempt.
      properties:
        type:
          type: string
          description: Authentication type discriminator.
          enum:
            - BASIC
            - JWT_TOKEN
            - API_KEY
            - HMAC_SIGNATURE
          example: API_KEY
          writeOnly: true
        clientId:
          type: string
          description: Client identifier included in the signature pre-image.
          example: cafbc62f-e79d-4224-aca2-4c10ed4fad3c
        secret:
          type: string
          description: Shared secret used to compute the HMAC signature.
          example: '******'
        algorithm:
          type: string
          description: HMAC algorithm to apply when computing the signature.
          enum:
            - HmacSHA1
            - HmacSHA256
            - HmacSHA384
            - HmacSHA512
            - HmacMD5
          example: HmacSHA256

````