PlanRadar Site View API

Manage site view runs, points, and attachments

Operations 17

GET /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/runs Retrieve all runs #
POST /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/runs Create Run #
GET /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/runs/{id} Retrieve run #
DELETE /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/runs/{id} Deletes specific run #
PUT /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/runs/{id} Updates specific run #
GET /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/points Retrieve all points #
GET /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/points/{id} Retrieve one point #
GET /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/points/{point_id}/point_history Retrieve point history #
GET /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/attachments Retrieve all runs attachments #
POST /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/attachments Create Run attachments #
GET /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/attachments/{id} Retrieve Runs Attachments #
PUT /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/attachments/{id} Updates specific run attachment #
DELETE /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/attachments/{id} Deletes specific run attachment #
GET /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/attachments/highlight_points Retrieve all point ids that have attachments #
GET /api/v2/{customer_id}/site_view_licenses_info Retrieve Site View licenses info #
POST /api/v2/{customer_id}/site_view_access_request request site view access #
GET /api/v2/{customer_id}/get_site_view_access_status Retrieve Site View Access Status #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/planradar:planradar-site-view-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

planradar-site-view-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: PlanRadar's API Documentation Site View API
  version: '2.0'
  description: Welcome to PlanRadar's API documentation, here you can find all the details about our APIs as well as test them online.
servers:
- url: /
tags:
- name: Site View
  description: Manage site view runs, points, and attachments
paths:
  /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/runs:
    get:
      summary: Retrieve all runs
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: filter[name]
        in: query
        schema:
          type: string
      - name: filter[path]
        in: query
        schema:
          type: string
      - name: filter[resolution]
        in: query
        schema:
          type: string
      - name: filter[fps]
        in: query
        schema:
          type: string
      - name: filter[state]
        in: query
        description: 'Available values : queued, running, success, failed, bad'
        schema:
          type: string
      - name: filter[stage]
        in: query
        schema:
          type: string
      - name: filter[meta]
        in: query
        schema:
          type: string
      - name: filter[start_point]
        in: query
        schema:
          type: string
      - name: filter[start_ts]
        in: query
        schema:
          type: string
      - name: filter[start_angle_rad]
        in: query
        schema:
          type: string
      - name: filter[id]
        in: query
        schema:
          type: string
      - name: filter[is_valid]
        in: query
        schema:
          type: boolean
      - name: filter[is_outdoor]
        in: query
        schema:
          type: boolean
      - name: last_sync_date
        in: query
        schema:
          type: string
      - name: include
        in: query
        example: layer,trajectories
        description: "\n      Available includes:\n      * layer\n      * trajectories"
        schema:
          type: string
      - name: page
        in: query
        schema:
          type: integer
      - name: pagesize
        in: query
        description: Maximum is 500, default is 100
        schema:
          type: integer
      - name: sort
        in: query
        description: 'Example: `name` is name ascending `-name` is name decending'
        schema:
          type: string
      responses:
        '404':
          description: Runs Not Found
      operationId: getApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewRuns
      x-operation-id-source: derived
    post:
      summary: Create Run
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '404':
          description: Component Not found
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data[attributes][name]:
                  type: string
                  description: is required
                data[attributes][path]:
                  type: string
                data[attributes][resolution]:
                  type: array
                  items:
                    type: number
                data[attributes][start_point]:
                  type: array
                  items:
                    type: number
                  description: is required
                data[attributes][fps]:
                  type: number
                data[attributes][is_outdoor]:
                  type: boolean
                data[attributes][is_single_frame]:
                  type: boolean
                data[attributes][video_duration]:
                  type: number
                data[attributes][telemetry_file]:
                  type: string
                  format: binary
                data[attributes][site_view_image]:
                  type: string
                  format: binary
                data[attributes][mobile_meta_info]:
                  type: string
                  description: is not required
      operationId: postApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewRuns
      x-operation-id-source: derived
  /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/runs/{id}:
    get:
      summary: Retrieve run
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: include
        in: query
        example: layer,trajectories
        description: "\n      Available includes:\n        layer\n        trajectories"
        schema:
          type: string
      responses:
        '404':
          description: Run Not Found
      operationId: getApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewRunsById
      x-operation-id-source: derived
    delete:
      summary: Deletes specific run
      tags:
      - Site View
      description: This API is used for deleting a specific run based on its uuid.
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '404':
          description: Run Not Found
      operationId: deleteApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewRunsById
      x-operation-id-source: derived
    put:
      summary: Updates specific run
      tags:
      - Site View
      description: This API is used for updating a specific run based on its uuid.
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '404':
          description: Run Not Found
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    attributes:
                      type: object
                      properties:
                        name:
                          type: string
                        start_point:
                          type: array
                          items:
                            type: number
                          default:
                          - 0.1
                          - 0.2
                        is_valid:
                          type: boolean
                        is_outdoor:
                          type: boolean
                        is_single_frame:
                          type: boolean
      operationId: putApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewRunsById
      x-operation-id-source: derived
  /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/points:
    get:
      summary: Retrieve all points
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: filter[trajectory_id]
        in: query
        schema:
          type: string
      - name: filter[traj_type]
        in: query
        schema:
          type: string
      - name: filter[x]
        in: query
        schema:
          type: string
      - name: filter[y]
        in: query
        schema:
          type: string
      - name: filter[angle_rad]
        in: query
        schema:
          type: string
      - name: filter[idx]
        in: query
        schema:
          type: string
      - name: filter[id]
        in: query
        schema:
          type: string
      - name: filter[capture_id]
        in: query
        schema:
          type: string
      - name: filter[single_frame_date_group]
        in: query
        schema:
          type: string
      - name: filter[capture_name]
        in: query
        schema:
          type: string
      - name: filter[created_at]
        in: query
        schema:
          type: string
      - name: filter[updated_at]
        in: query
        schema:
          type: string
      - name: filter
        in: query
        schema:
          type: string
      - name: page
        in: query
        schema:
          type: integer
      - name: pagesize
        in: query
        description: Maximum is 500, default is 100
        schema:
          type: integer
      - name: sort
        in: query
        description: 'Example: `name` is name ascending `-name` is name decending'
        schema:
          type: string
      responses:
        '404':
          description: Points Not Found
      operationId: getApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewPoints
      x-operation-id-source: derived
  /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/points/{id}:
    get:
      summary: Retrieve one point
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: include
        in: query
        example: timecell,trajectory
        description: "\n      Available includes:\n        timecell\n        trajectory"
        schema:
          type: string
      responses:
        '404':
          description: Point Not Found
      operationId: getApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewPointsById
      x-operation-id-source: derived
  /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/points/{point_id}/point_history:
    get:
      summary: Retrieve point history
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: point_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '404':
          description: Points Not Found
      operationId: getApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewPointsByPointIdPointHistory
      x-operation-id-source: derived
  /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/attachments:
    get:
      summary: Retrieve all runs attachments
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: run_id
        in: query
        schema:
          type: string
      - name: trajectory_id
        in: query
        schema:
          type: string
      - name: point_id
        in: query
        schema:
          type: string
      - name: page
        in: query
        schema:
          type: integer
      - name: pagesize
        in: query
        description: Maximum is 500, default is 100
        schema:
          type: integer
      - name: sort
        in: query
        description: 'Example: `name` is name ascending `-name` is name decending'
        schema:
          type: string
      responses:
        '404':
          description: Runs Not Found
      operationId: getApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewAttachments
      x-operation-id-source: derived
    post:
      summary: Create Run attachments
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      x-websocket-response:
        description: Broadcast when attachable_type is Ticket. Sends the generated 360° thumbnail image URL.
        channel: customer_{customerId}
        message_type: ticket_360_thumbnail
        payload:
          type: object
          properties:
            ticket_image_360:
              type: string
              description: Presigned URL of the generated 360° thumbnail (small size)
            ticket_uuid:
              type: string
              description: UUID of the ticket associated with the attachment
          example:
            ticket_image_360: https://s3.eu-central-1.amazonaws.com/bucket/ticket_360_thumb.jpg?X-Amz-Signature=...
            ticket_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
      responses:
        '404':
          description: Component Not found
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    attributes:
                      type: object
                      properties:
                        run_id:
                          type: string
                        trajectory_id:
                          type: string
                        point_id:
                          type: string
                        attachable_type:
                          type: string
                        attachable_id:
                          type: string
                        position_2d:
                          type: object
                          example:
                            plan_x: 0.1
                            plan_y: 0.2
                        position_3d:
                          type: object
                          example:
                            yaw: 0.1
                            pitch: 0.2
                        angle_2d:
                          type: number
                        metadata:
                          type: object
                      required:
                      - run_id
                      - trajectory_id
                      - point_id
                      - attachable_type
                      - attachable_id
                      - position_3d
                      - angle_2d
      operationId: postApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewAttachments
      x-operation-id-source: derived
  /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/attachments/{id}:
    get:
      summary: Retrieve Runs Attachments
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '404':
          description: Run Not Found
      operationId: getApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewAttachmentsById
      x-operation-id-source: derived
    put:
      summary: Updates specific run attachment
      tags:
      - Site View
      description: This API is used for updating a specific run attachment based on its id.
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      x-websocket-response:
        description: Broadcast when attachable_type is Ticket and position_3d is updated. Sends the regenerated 360° thumbnail image URL.
        channel: customer_{customerId}
        message_type: ticket_360_thumbnail
        payload:
          type: object
          properties:
            ticket_image_360:
              type: string
              description: Presigned URL of the regenerated 360° thumbnail (small size)
            ticket_uuid:
              type: string
              description: UUID of the ticket associated with the attachment
          example:
            ticket_image_360: https://s3.eu-central-1.amazonaws.com/bucket/ticket_360_thumb.jpg?X-Amz-Signature=...
            ticket_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
      responses:
        '404':
          description: Run attachment Not Found
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    attributes:
                      type: object
                      properties:
                        position_3d:
                          type: object
                        angle_2d:
                          type: number
      operationId: putApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewAttachmentsById
      x-operation-id-source: derived
    delete:
      summary: Deletes specific run attachment
      tags:
      - Site View
      description: This API is used for deleting a specific run attachments based on its id.
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '404':
          description: Run Attachments Not Found
      operationId: deleteApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewAttachmentsById
      x-operation-id-source: derived
  /api/v2/{customer_id}/projects/{project_id}/components/{component_id}/site_view/attachments/highlight_points:
    get:
      summary: Retrieve all point ids that have attachments
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        schema:
          type: string
      - name: component_id
        in: path
        required: true
        schema:
          type: string
      - name: run_id
        in: query
        schema:
          type: string
      responses:
        '404':
          description: Point IDs Not Found
      operationId: getApiV2ByCustomerIdProjectsByProjectIdComponentsByComponentIdSiteViewAttachmentsHighlightPoints
      x-operation-id-source: derived
  /api/v2/{customer_id}/site_view_licenses_info:
    get:
      summary: Retrieve Site View licenses info
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '404':
          description: Licenses info Not Found
      operationId: getApiV2ByCustomerIdSiteViewLicensesInfo
      x-operation-id-source: derived
  /api/v2/{customer_id}/site_view_access_request:
    post:
      summary: request site view access
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '404':
          description: site view access request Not found
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    attributes:
                      type: object
                      properties:
                        status:
                          type: integer
      operationId: postApiV2ByCustomerIdSiteViewAccessRequest
      x-operation-id-source: derived
  /api/v2/{customer_id}/get_site_view_access_status:
    get:
      summary: Retrieve Site View Access Status
      tags:
      - Site View
      security:
      - apiKey: []
      parameters:
      - name: customer_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '404':
          description: Access Status Not Found
      operationId: getApiV2ByCustomerIdGetSiteViewAccessStatus
      x-operation-id-source: derived
components:
  securitySchemes:
    apiKey:
      type: apiKey
      name: X-PlanRadar-API-Key
      in: header
externalDocs:
  description: Find out more about our development portal
  url: https://www.planradar.com/knowledge-base-overview/