openapi: 3.1.0 info: title: Bee Maps (Hivemapper) Developer Account Imagery API version: '1.0' x-generated: '2026-07-19' x-method: generated x-source: https://docs.beemaps.com/api-reference description: The Bee Maps (Hivemapper) Developer API delivers fresh street-level imagery, ML-detected map features, AI event videos, and on-demand mapping (Bursts) from the world's largest decentralized dashcam network. Data is queried by point, polygon, or linestring and billed on a two-tier model (API credits per query plus per-view USD metering for signed imagery URLs). Requests are limited to a maximum query area of 5 sq km and use GeoJSON [longitude, latitude] coordinate order. This specification was generated faithfully from the public Bee Maps API reference; it is not a provider-published OpenAPI document. contact: name: Bee Maps email: hi@hivemapper.com url: https://docs.beemaps.com license: name: Bee Maps API Terms url: https://hivemapper.com/tos servers: - url: https://beemaps.com/api/developer description: Bee Maps Developer API (current) - url: https://hivemapper.com/api/developer description: Legacy Hivemapper Developer API host security: - basicAuth: [] - apiKeyQuery: [] tags: - name: Imagery description: Street-level dashcam imagery queries. paths: /imagery/poly: post: operationId: queryImageryByPolygon summary: Query street-level imagery by polygon and week description: Query geolocated dashcam frames captured within a polygon for a specific week. Returns signed image URLs, timestamps, GPS position, IMU data, device type, and image dimensions. tags: - Imagery requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ImageryQuery' responses: '200': description: Array of imagery frames. content: application/json: schema: type: array items: $ref: '#/components/schemas/Frame' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '500': $ref: '#/components/responses/ServerError' /latest/poly: post: operationId: queryLatestImagery summary: Query the most recent imagery by polygon description: Query the most recent street-level imagery within a polygon, optionally bounded by a minimum week cutoff. tags: - Imagery requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/LatestImageryQuery' responses: '200': description: Array of imagery frames. content: application/json: schema: type: array items: $ref: '#/components/schemas/Frame' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '500': $ref: '#/components/responses/ServerError' components: responses: Forbidden: description: Forbidden / access denied. content: application/json: schema: $ref: '#/components/schemas/Error' Unauthorized: description: Authentication failed. content: application/json: schema: $ref: '#/components/schemas/Error' ServerError: description: Server error. content: application/json: schema: $ref: '#/components/schemas/Error' BadRequest: description: Bad request. content: application/json: schema: $ref: '#/components/schemas/Error' schemas: Position: type: object properties: lon: type: number lat: type: number alt: type: number azimuth: type: number GeoJSONGeometry: type: object description: A GeoJSON geometry (Point, LineString, or Polygon) with [lon, lat] order. properties: type: type: string enum: - Point - LineString - Polygon coordinates: {} radius: type: number description: Radius in meters (for Point queries). buffer: type: number description: Buffer in meters (for LineString queries). required: - type - coordinates ImageryQuery: type: object properties: geometry: $ref: '#/components/schemas/GeoJSONGeometry' week: type: string description: Target week in YYYY-mm-dd format. headings: type: boolean description: Include heading data. catalog: type: boolean description: Return metadata only, without image URLs. required: - geometry Frame: type: object description: A street-level dashcam frame. properties: url: type: string format: uri description: Signed image URL. timestamp: type: string format: date-time position: $ref: '#/components/schemas/Position' idImu: type: object additionalProperties: true description: IMU data. deviceType: type: string enum: - hdc - hdcs - bee width: type: integer height: type: integer LatestImageryQuery: type: object properties: geometry: $ref: '#/components/schemas/GeoJSONGeometry' min_week: type: string description: Cutoff date (YYYY-mm-dd) for the most recent imagery. headings: type: boolean catalog: type: boolean crossjoin: type: boolean description: Return the full polygon per time period. required: - geometry Error: type: object properties: error: type: string description: Human-readable error message. statusCode: type: integer securitySchemes: basicAuth: type: http scheme: basic description: 'HTTP Basic authentication. Send Authorization: Basic .' apiKeyQuery: type: apiKey in: query name: apiKey description: API key passed as the apiKey query parameter.