> ## 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.

# Geometry Operation

> Retrieves the protobuf-encoded geometry of the specified precipitation events, cropped to the given circular area. Users with power user role or above may omit the center point and radius to retrieve the full geometry without cropping.



## OpenAPI

````yaml /open-api/en/precipitations_version-1.json post /v1/precipitations/geometry
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: Precipitation API
    description: Endpoints for querying precipitation data.
paths:
  /v1/precipitations/geometry:
    post:
      tags:
        - Precipitation API
      summary: Geometry Operation
      description: >-
        Retrieves the protobuf-encoded geometry of the specified precipitation
        events, cropped to the given circular area. Users with power user role
        or above may omit the center point and radius to retrieve the full
        geometry without cropping.
      operationId: getGeometryByEventIds
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PrecipitationsGeometryRequest'
        required: true
      responses:
        '200':
          description: >-
            Successfully retrieved the cropped geometry of the requested
            precipitation events.
          content:
            application/json:
              schema:
                type: string
                format: byte
                description: >-
                  Protobuf-encoded FeatureCollection containing the cropped
                  MultiPolygon geometries of the requested events.
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
        '401':
          description: Unauthorized
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
        '402':
          description: Paid Subscription Required
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
              examples:
                Payment Required:
                  summary: Example response
                  description: Payment Required
                  value:
                    timestamp: '2025-06-25T11:15:41.429518242'
                    status: 402
                    error: Payment Required
                    message: You Need To Renew Your Subscription or Purchase New One
                    path: /v1/precipitations/within
        '403':
          description: Forbidden/Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
              examples:
                No Subscription Found For This Service Endpoint:
                  summary: Missing Subscription
                  description: No Subscription Found For This Service Endpoint
                  value:
                    timestamp: '2025-06-25T11:21:50.510755746'
                    status: 403
                    error: Forbidden
                    message: No Subscription Found For This Service Endpoint
                    path: /v1/precipitations/within
                This Location Is Not In Allowed Geographic Boundaries:
                  summary: Out of Allowed Geographic Boundaries
                  description: This Location Is Not In Allowed Geographic Boundaries
                  value:
                    timestamp: '2025-06-25T15:59:19.452326857'
                    status: 403
                    error: Forbidden
                    message: >-
                      The Location You Are Querying [dd.ddddd, dd.ddddd] Is Not
                      Within The Geographic Boundaries Allowed In Your
                      Subscription [Country, Region]
                    path: /v1/precipitations/within
        '429':
          description: Subscription Limits For This Service is Exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
              examples:
                Too Many Requests:
                  summary: Example response
                  description: Too Many Requests
                  value:
                    timestamp: '2025-06-25T11:02:12.653874655'
                    status: 429
                    error: Too Many Requests
                    message: Your Subscription Limits For This Service is Exceeded
                    path: /v1/precipitations/within
        '500':
          description: Internal Server Error During Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
              examples:
                Internal Server Error Example:
                  summary: Example response
                  description: Internal Server Error Example
                  value:
                    timestamp: '2025-04-14T16:58:10.414972912'
                    status: 500
                    error: Internal Server Error
                    message: An Error Occurred During Invocation
                    path: /endpoint/uri/here
components:
  schemas:
    PrecipitationsGeometryRequest:
      type: object
      properties:
        eventIds:
          type: array
          description: >-
            List of precipitation event IDs to retrieve geometry for. Maximum 10
            items.
          example:
            - 69baa6b76e0fe76a1957273f
          items:
            type: string
          maxItems: 10
          minItems: 0
        center:
          $ref: '#/components/schemas/GeoPoint'
          description: Latitude/longitude of the circle center used to crop the geometry.
        radius:
          type: number
          format: double
          description: >-
            Radius in meters (e.g. 25000 = 25 km) defining the circle boundary
            used to crop the geometry. Must be provided in meters. Maximum 200
            kilometers (200000 meters).
          example: 1000
      required:
        - eventIds
    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
    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

````