Aerones Projects.pre Job.assets Services.table API

The projects.pre-job.assets-services.table API from Aerones — 4 operation(s) for projects.pre-job.assets-services.table.

Operations 7

GET /api/projects/{project_id}/pre-job/assets-services/table Get Project Assets Table #
POST /api/projects/{project_id}/pre-job/assets-services/table Export Project Assets Table To Excel #
PUT /api/projects/{project_id}/pre-job/assets-services/table Put Project Asset #
POST /api/projects/{project_id}/pre-job/assets-services/table-upload Upload Project Assets Table #
PATCH /api/projects/{project_id}/pre-job/assets-services/table/{db_id} Patch Project Asset #
DELETE /api/projects/{project_id}/pre-job/assets-services/table/{db_id} Delete Project Asset #
POST /api/projects/{project_id}/pre-job/assets-services/table-autofill Autofill Blade Names #

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/aerones-projects-pre-job-assets-services-table-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

aerones-projects-pre-job-assets-services-table-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Operations Hub Projects.pre Job.assets Services.table API
  version: 0.1.1
  description: ''
servers: []
tags:
- name: projects.pre-job.assets-services.table
paths:
  /api/projects/{project_id}/pre-job/assets-services/table:
    get:
      operationId: projects_api_prejob_get_project_assets_table
      summary: Get Project Assets Table
      parameters:
      - in: path
        name: project_id
        schema:
          title: Project Id
          type: string
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectAssetTableResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      description: 'Get assets table data for a project.


        Table is full representation of all assets in the project that have been created

        in RFI stage.'
      tags:
      - projects.pre-job.assets-services.table
      deprecated: true
      security:
      - APIKeyAuth: []
      - CookieAuth: []
    post:
      operationId: projects_api_prejob_export_project_assets_table_to_excel
      summary: Export Project Assets Table To Excel
      parameters:
      - in: path
        name: project_id
        schema:
          title: Project Id
          type: string
        required: true
      responses:
        '200':
          description: OK
      description: Generate and return assets table data for a project as an Excel file.
      tags:
      - projects.pre-job.assets-services.table
      deprecated: true
      security:
      - APIKeyAuth: []
      - CookieAuth: []
    put:
      operationId: projects_api_prejob_put_project_asset
      summary: Put Project Asset
      parameters:
      - in: path
        name: project_id
        schema:
          title: Project Id
          type: string
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectAssetTableResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      description: 'Create a new WTG asset in the project table that will be used only for unassigned blades.


        Required fields:

        - asset_id: Display name/identifier of the WTG

        - category: Asset category code

        - latitude: Latitude coordinate

        - longitude: Longitude coordinate

        - manufacturer: WTG manufacturer

        - model: WTG model

        - service_code: Service code for this WTG

        - site: Site name


        Fixed values that will be automatically set:

        - asset_type: Always set to ''WTG''

        - must_have_parent: Always set to False

        - parent: Always set to None

        - protected: Always set to False

        - special_blade_group_count: Always set to None

        - id: Auto-generated by database'
      tags:
      - projects.pre-job.assets-services.table
      deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProjectAssetCreate'
        required: true
      security:
      - APIKeyAuth: []
      - CookieAuth: []
  /api/projects/{project_id}/pre-job/assets-services/table-upload:
    post:
      operationId: projects_api_prejob_upload_project_assets_table
      summary: Upload Project Assets Table
      parameters:
      - in: path
        name: project_id
        schema:
          title: Project Id
          type: string
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MessageWithSuccess'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      description: 'Upload Excel file with asset data.


        If the Excel file has specific headers (id, asset_id, pad_id, asset_type,

        parent, latitude, longitude) in the first row (A1:G1), it bypasses the AI

        and directly updates corresponding database fields (asset_id, pad_id,

        latitude, longitude) based on the provided ''id''.

        Otherwise, returns an error message indicating which columns are missing.'
      tags:
      - projects.pre-job.assets-services.table
      deprecated: true
      requestBody:
        content:
          multipart/form-data:
            schema:
              properties:
                file:
                  format: binary
                  title: File
                  type: string
              required:
              - file
              title: FileParams
              type: object
        required: true
      security:
      - APIKeyAuth: []
      - CookieAuth: []
  /api/projects/{project_id}/pre-job/assets-services/table/{db_id}:
    patch:
      operationId: projects_api_prejob_patch_project_asset
      summary: Patch Project Asset
      parameters:
      - in: path
        name: project_id
        schema:
          title: Project Id
          type: string
        required: true
      - in: path
        name: db_id
        schema:
          title: Db Id
          type: string
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectAssetTableResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      description: 'Update specific fields of one or multiple ProjectAssets.


        This endpoint allows updating the following fields:

        - asset_id

        - parent (parent db id)

        - latitude

        - longitude


        Only the fields provided in the request will be updated.

        Other fields will remain unchanged.


        The db_id parameter can be a single ID or multiple comma-separated IDs.

        When multiple IDs are provided, the same update will be applied to all assets.'
      tags:
      - projects.pre-job.assets-services.table
      deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProjectAssetPatch'
        required: true
      security:
      - APIKeyAuth: []
      - CookieAuth: []
    delete:
      operationId: projects_api_prejob_delete_project_asset
      summary: Delete Project Asset
      parameters:
      - in: path
        name: project_id
        schema:
          title: Project Id
          type: string
        required: true
      - in: path
        name: db_id
        schema:
          title: Db Id
          type: integer
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectAssetTableResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      description: 'Delete a project asset.


        This endpoint allows deleting non-protected assets from the project table.

        Protected assets (like WTGs and their blades created from asset groups) cannot be deleted.

        Only manually created assets (like WTGs for unassigned blades) can be deleted.


        Args:

        project_id: Project ID

        db_id: Database ID of the asset to delete


        Returns:

        Updated assets table


        Raises:

        APIError: If asset is protected or not found'
      tags:
      - projects.pre-job.assets-services.table
      deprecated: true
      security:
      - APIKeyAuth: []
      - CookieAuth: []
  /api/projects/{project_id}/pre-job/assets-services/table-autofill:
    post:
      operationId: projects_api_prejob_autofill_blade_names
      summary: Autofill Blade Names
      parameters:
      - in: path
        name: project_id
        schema:
          title: Project Id
          type: string
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectAssetTableResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      description: 'Auto-fill blade names for WTGs that have exactly 3 blade children.


        For each WTG that has exactly 3 blade children, this endpoint will name the blades:

        - Blade A

        - Blade B

        - Blade C


        Only blades without existing names will be updated.'
      tags:
      - projects.pre-job.assets-services.table
      deprecated: true
      security:
      - APIKeyAuth: []
      - CookieAuth: []
components:
  schemas:
    ProjectAssetPatch:
      additionalProperties: false
      description: 'Schema for patching a ProjectAsset.


        Only the fields that are provided will be updated.

        Other fields will remain unchanged.'
      properties:
        asset_id:
          anyOf:
          - type: string
          - type: 'null'
          description: Asset identifier/name (e.g. 'WTG-1', 'BLADE-A')
          title: Asset Id
        pad_id:
          anyOf:
          - type: string
          - type: 'null'
          description: Asset identifier/name (e.g. 'WTG-1', 'BLADE-A')
          title: Pad Id
        parent:
          anyOf:
          - type: integer
          - type: 'null'
          description: Database ID of the parent asset (must be a WTG asset from the same project)
          title: Parent
        latitude:
          anyOf:
          - type: number
          - type: 'null'
          description: New latitude coordinate for the asset
          title: Latitude
        longitude:
          anyOf:
          - type: number
          - type: 'null'
          description: New longitude coordinate for the asset
          title: Longitude
      title: ProjectAssetPatch
      type: object
    ProjectAssetTableResponse:
      additionalProperties: false
      description: Schema for project assets table response.
      properties:
        assets:
          description: List of assets with their relationships and details
          items:
            $ref: '#/components/schemas/ProjectAsset'
          title: Assets
          type: array
      required:
      - assets
      title: ProjectAssetTableResponse
      type: object
    ErrorCode:
      description: Error codes for API errors.
      enum:
      - validation
      - server
      - auth
      - unknown
      - external
      - generic
      title: ErrorCode
      type: string
    Error:
      additionalProperties: false
      description: Error response schema.
      properties:
        code:
          $ref: '#/components/schemas/ErrorCode'
        message:
          title: Message
          type: string
      required:
      - code
      - message
      title: Error
      type: object
    ProjectAssetCreate:
      additionalProperties: false
      description: Schema for creating a new WTG asset.
      properties:
        asset_id:
          description: Display name/identifier of the WTG
          title: Asset Id
          type: string
        pad_id:
          anyOf:
          - type: string
          - type: 'null'
          description: Pad ID of the WTG
          title: Pad Id
        categories:
          description: List of asset category codes
          items:
            type: string
          title: Categories
          type: array
        latitude:
          description: Latitude coordinate
          title: Latitude
          type: number
        longitude:
          description: Longitude coordinate
          title: Longitude
          type: number
        asset_manufacturer_id:
          description: WTG manufacturer ID
          title: Asset Manufacturer Id
          type: integer
        asset_model_id:
          description: WTG model ID
          title: Asset Model Id
          type: integer
        service_codes:
          description: List of service codes
          items:
            type: string
          title: Service Codes
          type: array
        site:
          description: Site ID
          title: Site
          type: integer
      required:
      - asset_id
      - categories
      - latitude
      - longitude
      - asset_manufacturer_id
      - asset_model_id
      - service_codes
      - site
      title: ProjectAssetCreate
      type: object
    MessageWithSuccess:
      additionalProperties: false
      description: Success response schema with message.
      properties:
        success:
          default: true
          description: Always true for this schema. Errors are represented by a separate Error schema, so false is never returned.
          title: Success
          type: boolean
        message:
          title: Message
          type: string
      required:
      - message
      title: MessageWithSuccess
      type: object
    ProjectAsset:
      additionalProperties: false
      description: Schema for a single project asset.
      properties:
        id:
          description: Asset database ID
          title: Id
          type: integer
        source_asset_group:
          anyOf:
          - type: integer
          - type: 'null'
          description: Global group ID
          title: Source Asset Group
        asset_id:
          anyOf:
          - type: string
          - type: 'null'
          description: Asset identifier/name (e.g. 'WTG-1', 'BLADE-A')
          title: Asset Id
        pad_id:
          anyOf:
          - type: string
          - type: 'null'
          description: Asset commercial ID
          title: Pad Id
        asset_type:
          description: Type of asset (e.g. 'WTG')
          title: Asset Type
          type: string
        protected:
          description: Whether the asset is protected from modifications
          title: Protected
          type: boolean
        changed:
          description: Whether the asset has been changed since the table was regenerated
          title: Changed
          type: boolean
        must_have_parent:
          description: Whether the asset must have a parent asset
          title: Must Have Parent
          type: boolean
        parent:
          anyOf:
          - type: integer
          - type: 'null'
          description: ID of parent asset, if any
          title: Parent
        special_blade_group_count:
          anyOf:
          - type: integer
          - type: 'null'
          description: Count of blades in special group
          title: Special Blade Group Count
        categories:
          description: List of asset category codes
          items:
            type: string
          title: Categories
          type: array
        service_codes:
          description: List of service codes for this asset
          items:
            type: string
          title: Service Codes
          type: array
        service_names:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Service Names
        service_fullnames:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Service Fullnames
        addons:
          description: List of addons for the service
          items:
            type: string
          title: Addons
          type: array
        materials:
          description: List of materials for the service
          items:
            type: string
          title: Materials
          type: array
        site:
          anyOf:
          - type: string
          - type: 'null'
          description: Site name
          title: Site
        latitude:
          anyOf:
          - type: number
          - type: 'null'
          description: Latitude coordinate
          title: Latitude
        longitude:
          anyOf:
          - type: number
          - type: 'null'
          description: Longitude coordinate
          title: Longitude
        turbine_manufacturer_name:
          anyOf:
          - type: string
          - type: 'null'
          description: Name of the turbine manufacturer (only for WTG type)
          title: Turbine Manufacturer Name
        turbine_model_name:
          anyOf:
          - type: string
          - type: 'null'
          description: Name of the turbine model (only for WTG type)
          title: Turbine Model Name
        blade_manufacturer_name:
          anyOf:
          - type: string
          - type: 'null'
          description: Name of the blade manufacturer (only for BLADE type)
          title: Blade Manufacturer Name
        blade_model_name:
          anyOf:
          - type: string
          - type: 'null'
          description: Name of the blade model (only for BLADE type)
          title: Blade Model Name
      required:
      - id
      - source_asset_group
      - asset_id
      - pad_id
      - asset_type
      - protected
      - changed
      - must_have_parent
      - parent
      - special_blade_group_count
      - categories
      - service_codes
      - addons
      - materials
      - site
      - latitude
      - longitude
      title: ProjectAsset
      type: object
  securitySchemes:
    APIKeyAuth:
      type: http
      scheme: bearer
    CookieAuth:
      type: apiKey
      in: cookie
      name: opshub_prod_sessionid
    AuthBearer:
      type: http
      scheme: bearer