# Aurora Solar MCP connector

The Aurora Solar connector brings your Aurora Solar users, teams, roles, partners, and single sign-on settings into Claude, ChatGPT, Cursor, and the Elaichi Agent, so each person can manage the account from a chat while signed in as themselves.

Source: https://elaichi.ai/connectors/aurorasolar/

## Facts

| | |
| --- | --- |
| Application | Aurora Solar |
| Category | Design |
| AI tools | 119 |
| Authentication | Connects with an API key |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 119 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once Aurora Solar is connected

- List Aurora Solar tenants with no active tenant users.
- Which tenant roles does the design team hold?
- Show Aurora Solar versions upgraded in the last month.

## Connect Aurora Solar in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Aurora Solar.
2. Optionally set Share with, then press Connect.
3. Paste an Aurora Solar API key. One person generates a token in Aurora Solar and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Aurora Solar tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Aurora Solar to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect Aurora Solar to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect Aurora Solar to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Aurora Solar to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Aurora Solar tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Aurora Solar through Elaichi

### Bring a new designer into Aurora Solar

Operations. Invite a new hire, assign the right role, and confirm they show up on the correct team without opening the admin console.

### Deactivate a departing user the same day

IT. Look up someone by name, deactivate their Aurora Solar user, and check that nothing was missed across teams before the offboarding ticket closes.

### Set up a new installer partner

Channel. Create the partner record in Aurora Solar, add their first users, and update contact details as the relationship grows.

### Audit who has which role

Sales operations. Pull the full list of Aurora Solar tenant users and roles to spot people with more access than their job needs.

### Keep single sign-on settings current

IT. Review the SSO providers configured on your Aurora Solar tenant and update a provider when your identity setup changes.

### Check versions before an upgrade

Administration. List the available Aurora Solar versions, schedule an upgrade, and roll back if the team runs into trouble.

## Frequently asked questions

### How do I connect Aurora Solar to Claude?

First, connect Aurora Solar in Elaichi by pasting in the API key from your Aurora Solar account; there is no client ID or secret to generate and no application to register on the Aurora Solar side. Then open Claude, go to Customize, then Connectors, then Add, and paste in the endpoint https://api.elaichi.ai/mcp. Sign in to Elaichi when Claude asks, and Aurora Solar is ready to use in your chats.

### Does Aurora Solar work with ChatGPT and Cursor as well as Claude?

Yes. Once Aurora Solar is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client, and the Elaichi Agent. You connect Aurora Solar once and every client picks it up.

### What can an AI agent actually do with my Aurora Solar data?

With Aurora Solar connected, an agent can list your tenant users, roles, and teams, invite or create a user, update their details, and activate or deactivate them. It can also look after partner installers and their users, review and update single sign-on providers, and check available Aurora Solar versions or schedule an upgrade or rollback. Aurora Solar has a large set of actions, so short concrete asks like "deactivate Maria Lopez" work better than long paragraphs.

### Does connecting Aurora Solar give the AI access to my whole tenant?

No. Every call into Aurora Solar runs under the person who signed in, so the agent can only see and change what that person's own Aurora Solar role already allows. Elaichi can narrow that access further per team or per action, and it can never widen it beyond what Aurora Solar itself grants.

### Can my team share one Aurora Solar connection?

Yes. One administrator connects Aurora Solar in Elaichi and shares it with a team, and nobody else ever handles the API key. Each teammate still signs in to Elaichi as themselves, so the audit log records who invited a user or deactivated one in Aurora Solar, not just that the shared connection was used.

### Can I stop an agent from deactivating users or changing settings in Aurora Solar?

Yes. Restrictions in Elaichi apply per action, so you can allow an agent to list Aurora Solar users and roles while blocking it from deactivating anyone, changing single sign-on providers, or triggering a version upgrade. A blocked action is never shown to Claude, ChatGPT, Cursor, or any other client, so no prompt can reach it.

### What happens to an Aurora Solar connection when someone leaves?

When you offboard someone in Elaichi, their access to Aurora Solar through every client ends at once. If they shared an Aurora Solar connection with a team, it keeps working for everyone else, and every past action stays in the append-only audit log under their name. If you ever want to remove Aurora Solar entirely, disconnecting it once in Elaichi removes it from Claude, ChatGPT, Cursor, and every other client at the same time.

## All 119 Aurora Solar tools

Every tool below is callable through https://api.elaichi.ai/mcp once Aurora Solar is connected, subject to the toolbox it is in and the restrictions on the caller.

- **Get single Aurora Solar tenant by ID** (Get). Retrieve metadata about an Aurora Solar tenant by id. Returns: tenant, id, address, latitude, longitude, description. Required: id.
- **List all Aurora Solar tenants** (List). List webhooks for an Aurora Solar tenant, sorted in descending creation-date order. Returns each webhook's id, description, event, url_template, and enabled status. Required: tenant_id.
- **Aurora Solar tenants attach webhook** (Action). Create a new webhook for an Aurora Solar tenant. Returns: webhook, id, description, created_at, updated_at. Required: id, event, url_template.
- **List all Aurora Solar versions** (List). Retrieve the current, latest, and rollback API versions associated with the authenticated bearer token in Aurora Solar. Returns: current, latest, rollback, rollback_expire_at. No required parameters.
- **Create a Aurora Solar versions upgrade** (Create). Upgrade your Aurora Solar API version to the latest available version. Returns: current, latest, rollback, rollback_expire_at. The rollback window is 5 days (120 hours) after upgrade. No request body is required.
- **Create a Aurora Solar versions rollback** (Create). Rollback the Aurora Solar API version associated with the current Bearer Token to the previous API version. Returns: current, latest, rollback, rollback_expire_at. Errors if the token has already been rolled back or was not upgraded within the last 120 hours.
- **List all Aurora Solar tenant users** (List). List Aurora Solar users within a tenant sorted by creation date (descending). Returns: users, id. Required: tenant_id.
- **Create a Aurora Solar tenant user** (Create). Create a new Aurora Solar user in a tenant via external SSO without sending an invitation email. Returns the created user object including id, tenant_id, first_name, last_name, email, account_status, role_id, and locale. Required: tenant_id, user.first_name, user.last_name, user.email, user.external_provider_id.
- **Get single Aurora Solar tenant user by ID** (Get). Retrieve an Aurora Solar user by id within a tenant. Returns the user object including id, tenant_id, first_name, last_name, email, account_status, phone, title, job_function, external_provider_id, role_id, and locale. Required: tenant_id, id.
- **Update a Aurora Solar tenant user by ID** (Update). Update an existing Aurora Solar user within a tenant. Returns the updated user object including id, tenant_id, first_name, last_name, email, account_status, role_id, and locale. Required: tenant_id, id.
- **Aurora Solar tenant users update activate** (Update). Activate an Aurora Solar user account within a tenant. Returns: id, tenant_id, first_name, last_name, email, account_status, phone, title, job_function, external_provider_id, role_id, locale, user. Required: tenant_id, id.
- **Aurora Solar tenant users update deactivate** (Update). Deactivate a user in Aurora Solar by changing their status to `deactivated`. Immediately logs the user out of the Aurora App and, for invited users, invalidates their pending invitation. Returns an empty 204 response on success. Required: tenant_id, id.
- **Create a Aurora Solar users invite** (Create). Invite a new user to an Aurora Solar tenant by email, sending them setup instructions via the Aurora application. Returns the invited user object including id, email, account_status, first_name, last_name, and role_id. Required: tenant_id, user (first_name, last_name, and email are required within the user object).
- **List all Aurora Solar tenant roles** (List). List roles for an Aurora Solar tenant, sorted ascending with custom roles first then alphabetically by name. Returns: roles, id, name, custom, scope. Required: tenant_id.
- **List all Aurora Solar tenant SSO providers** (List). Retrieve the SSO provider configuration for an Aurora Solar tenant. Returns: sso_provider. Required: tenant_id.
- **Create a Aurora Solar tenant SSO provider** (Create). Create the SSO provider configuration for an Aurora Solar tenant to enable Single Sign-On. Returns: sso_provider, provider, auth_uri, token_uri, openid_key, openid_secret_last_four, openid_discovery_doc_url, openid_base_url, openid_callback_url. Required: tenant_id, sso_provider.
- **Update a Aurora Solar tenant SSO provider by ID** (Update). Update the SSO provider configuration for an Aurora Solar tenant. Returns: sso_provider. Required: tenant_id.
- **List all Aurora Solar tenant teams** (List). List all teams belonging to an Aurora Solar tenant, returned in alphabetical order by name. Returns the teams array where each entry includes id, name, and partner_id. Required: tenant_id.
- **List all Aurora Solar tenant partners** (List). List Aurora Solar partners for a tenant, returned sorted alphabetically by name. Returns: partners, id, name. Required: tenant_id.
- **Create a Aurora Solar tenant partner** (Create). Create a new partner within an Aurora Solar tenant. Returns the created partner object including id, name, created_at, and updated_at. Required: tenant_id, partner (with name).
- **Get single Aurora Solar tenant partner by ID** (Get). Retrieve a single Aurora Solar partner by id. Returns the partner object including id, name, created_at, and updated_at. Required: tenant_id, id.
- **Update a Aurora Solar tenant partner by ID** (Update). Update an existing Aurora Solar partner by id. Returns the updated partner object including id, name, created_at, and updated_at. Required: tenant_id, id, partner.
- **Create a Aurora Solar partner user** (Create). Add one or more users to a partner in Aurora Solar. Returns: partner_id, user_ids. Required: tenant_id, partner_id, user_ids.
- **Update a Aurora Solar partner user by ID** (Update). Replace the complete list of users for a partner in Aurora Solar, overwriting any existing assignments. Returns: partner_id, user_ids. Required: tenant_id, partner_id, user_ids.
- **Create a Aurora Solar partner logo** (Create). Upload or replace the logo image for a partner in aurorasolar. Returns the updated partner object containing id, name, created_at, and updated_at. Required: tenant_id, partner_id. The request body must be raw binary image data; accepted formats are JPG, JPEG, PNG, GIF, HEIC, and WEBP — the image is converted to WebP on upload. If a logo already exists for the partner, it is replaced.
- **List all Aurora Solar tenant orders** (List). List Aurora Solar orders for a tenant, sorted by newest first. Returns: orders, id, customer_first_name, customer_last_name, customer_address, phase. Required: tenant_id. Returns up to 250 orders per page.
- **Get single Aurora Solar tenant order by ID** (Get). Retrieve details for a single Aurora Solar order by id. Returns the order object including id, customer_first_name, customer_email, customer_address, phase, energy_offset_percent, and a temporary utility_bill_url (valid 12 hours). Required: tenant_id, id.
- **Update a Aurora Solar tenant order by ID** (Update). Update the lifecycle phase of an Aurora Solar order. Returns the full updated order including id, customer_first_name, customer_last_name, customer_email, customer_phone, customer_address, customer_address_components, phase, sold_by, energy_offset_percent, notes, and utility_bill_url. Required: tenant_id, id, order.phase.
- **Create a Aurora Solar order decline** (Create). Decline an Aurora Solar order by specifying a disqualification reason. Returns the declined order object including id, customer_first_name, customer_last_name, customer_email, customer_phone, customer_address, and additional customer and order details. Required: tenant_id, order_id, disqualified_reason.
- **Create a Aurora Solar order sold** (Create). Mark an aurorasolar order as sold, optionally recording the sale date (defaults to today's date UTC if omitted). Returns: order, id. Required: tenant_id, order_id.
- **Create a Aurora Solar project creation run** (Create). Create a Project from an aurorasolar Order by triggering an asynchronous project creation job. Returns: create_project_job, example. Required: tenant_id, order_id. This is an asynchronous endpoint; poll the job status to determine completion.
- **List all Aurora Solar project creation status** (List). Retrieve the status of a Convert Order to Project job in aurorasolar. This is an asynchronous endpoint; poll it using the job_id returned from the Convert Order to Project POST. Returns: create_project_job, example. Required: tenant_id, order_id, job_id.
- **List all Aurora Solar tenant projects** (List). List Aurora Solar projects for a tenant, sorted by creation date descending. Returns: projects, id, created_at, property_address, tags. Required: tenant_id. Defaults to 100 projects per page; max 250.
- **Create a Aurora Solar tenant project** (Create). Create a new Aurora Solar project within the specified tenant. Returns the created project including id, name, created_at, status, location, owner_id, ahj_id, and customer details. Required: tenant_id, location (property_address or latitude/longitude pair).
- **Get single Aurora Solar tenant project by ID** (Get). Retrieve a single Aurora Solar project by id. Returns the full project object including id, name, created_at, status, location, owner_id, partner_id, ahj_id, and customer details. Required: tenant_id, id.
- **Update a Aurora Solar tenant project by ID** (Update). Update an existing Aurora Solar project by id. Returns the updated project including id, name, created_at, location, status, project_type, owner_id, and customer details. Required: tenant_id, id.
- **Delete a Aurora Solar tenant project by ID** (Delete). Delete an Aurora Solar project by id. Returns an empty 204 response on success. Required: tenant_id, id.
- **List all Aurora Solar project assets** (List). List project assets in Aurora Solar for a given project. Returns: project_assets, id. Required: tenant_id, project_id.
- **Create a Aurora Solar project asset** (Create). Create a project asset in Aurora Solar by uploading a binary image or document to a project. Returns: project_asset, id. Required: tenant_id, project_id. Accepted formats: .jpg, .jpeg, .png, .gif, .webp, .pdf; max 15 MB per file; max 100 assets per project. New assets overwrite existing assets with the same filename.
- **List all Aurora Solar project project notes** (List). Retrieve the project note for an Aurora Solar project. Returns the project_note object containing id (unique UUID of the note) and content (the note body text). Required: tenant_id, project_id.
- **Create a Aurora Solar project project note** (Create). Create the project note for an Aurora Solar project when one does not already exist. Returns: project_note. Required: tenant_id, project_id, project_note.
- **Update a Aurora Solar project project note by ID** (Update). Update the project note body for an Aurora Solar project. Returns: project_note. Required: tenant_id, project_id, project_note.
- **List all Aurora Solar project project note files** (List). List files attached to the project note in Aurora Solar for a given project. Returns: project_note_files, id. Each response includes freshly signed download URLs valid for 86400 seconds. Required: tenant_id, project_id.
- **Get single Aurora Solar tenant ahj by ID** (Get). Retrieve an Authority Having Jurisdiction (AHJ) from Aurora Solar by id. AHJ data is derived from a project's property address using Census TIGER/Line Legal Boundary Shapefiles. Returns: ahj, id. Required: tenant_id, id.
- **List all Aurora Solar project consumption profiles** (List). Retrieve the consumption profile for an Aurora Solar project. Returns: consumption_profile, id. Required: tenant_id, project_id.
- **Update a Aurora Solar project consumption profile by ID** (Update). Update the consumption profile for an Aurora Solar project. Accepts exactly one of monthly_bill, monthly_energy, or interval_data per request. Returns the updated consumption_profile object including id, project_id, location, utility, utility_rate, input_mode, monthly_energy, monthly_bill, and hourly_energy. Required: tenant_id, id.
- **Create a Aurora Solar utility bills run** (Create). Upload a utility bill document to an aurorasolar project and start an asynchronous OCR parse of its contents. Returns: utility_bill_upload_job. Required: tenant_id, project_id. Accepted file formats: PDF, JPG, JPEG, PNG, GIF, WEBP. The parse step runs asynchronously; use job_id to poll for completion.
- **List all Aurora Solar utility bills status** (List). Retrieve the status of a utility bill upload and parse job in Aurora Solar. Returns: utility_bill_upload_job. Required: tenant_id, project_id, job_id. This is an asynchronous endpoint; poll until status is "succeeded" or "failed".
- **List all Aurora Solar project utility bills** (List). List all utility bills uploaded to an aurorasolar project, ordered newest first with a fresh presigned download URL for each. Returns: utility_bills, id, created_at. Required: tenant_id, project_id. Download URLs expire after 24 hours; re-call to refresh.
- **Get single Aurora Solar project utility bill by ID** (Get). Retrieve a single aurorasolar utility bill by id with a freshly-minted presigned download URL. Returns: utility_bill, id, created_at. Required: tenant_id, project_id, id. The download URL expires after 24 hours; re-call to refresh.
- **List all Aurora Solar project bill summaries** (List). Retrieve the estimated current bill summary for year 1 for an aurorasolar project. Returns: bill_summary. Required: tenant_id, project_id.
- **List all Aurora Solar design bill summaries** (List). Retrieve the estimated year-1 bill summary for an Aurora Solar design, incorporating its energy optimization products, PV system, and storage. Returns: bill_summary. Required: tenant_id, design_id.
- **List all Aurora Solar tenant design requests** (List). List Aurora Solar design requests for a tenant, sorted by descending creation date. Returns each item's id, project_id, design_id, and status. Required: tenant_id. Optionally filter by status[].
- **Create a Aurora Solar tenant design request** (Create). Create a new Aurora Solar design request for a project within a tenant. Returns the design_request object including id, project_id, status, latitude, longitude, address, submitted_at, completed_at, reviewed_at, designer_rejected_at, image_src, lidar_src, design_id, sla, designer_rejection_reason, auto_accept, auto_accepted, roof_pitch, and number_of_stories. Required: tenant_id,…
- **Get single Aurora Solar tenant design request by ID** (Get). Retrieve a single Aurora Solar design request by id within a tenant. Returns the design_request object including id, project_id, status, latitude, longitude, address, submitted_at, completed_at, reviewed_at, designer_rejected_at, image_src, lidar_src, design_id, sla, designer_rejection_reason, auto_accept, and auto_accepted. Required: tenant_id, id.
- **Create a Aurora Solar design request accept** (Create). Accept an Aurora Solar design request, advancing its status to `accepted` and generating a new 3D design within the referenced project. Returns the updated design_request object including id, project_id, status, design_id, sla, latitude, longitude, address, submitted_at, completed_at, image_src, lidar_src, and designer_rejection_reason. Required: tenant_id, design_request_id.
- **Create a Aurora Solar design requests eagleview** (Create). Create a new EagleView design request in Aurora Solar for a given tenant and project. Returns: eagleview_design_request, id, project_id, tenant_id, design_status, latitude, longitude, design_id, auto_accept, auto_accepted, source_design_id, created_at, updated_at. Required: tenant_id, eagleview_design_request (project_id required within). Both latitude and longitude must be provided together or…
- **Get single Aurora Solar design requests eagleview by ID** (Get). Retrieve an EagleView design request by id from Aurora Solar. Returns: eagleview_design_request, id, project_id, tenant_id, design_status, latitude, longitude, design_id, auto_accept, auto_accepted, source_design_id, created_at, updated_at. Required: tenant_id, id.
- **Create a Aurora Solar accept** (Create). Accept an Aurora Solar EagleView design request, advancing its design_status to `accepted` and generating a new EagleView Powered Model design within the project. Returns eagleview_design_request with id, design_status, design_id, latitude, longitude, auto_accept, auto_accepted, created_at, and updated_at. Required: tenant_id, eagleview_id.
- **List all Aurora Solar project designs** (List). List designs for an Aurora Solar project, sorted in descending order by creation date. Returns: designs, id, created_at. Required: tenant_id, project_id.
- **Create a Aurora Solar tenant design** (Create). Create a new design for an Aurora Solar project. Returns the created design object including id, name, project_id, external_provider_id, and created_at. Required: tenant_id, design.project_id, design.name.
- **Aurora Solar tenant designs duplicate** (Duplicate). Duplicate an existing Aurora Solar design, copying its 3D model, PV system, storage, and pricing into the same project. Returns the duplicated design object including id, name, project_id, external_provider_id, and created_at. Required: tenant_id, id.
- **Get single Aurora Solar tenant design by ID** (Get). Retrieve an Aurora Solar design by id. Returns id, name, project_id, external_provider_id, milestone, created_at, image_src, and lidar_src. Required: tenant_id, id.
- **Update a Aurora Solar tenant design by ID** (Update). Update an Aurora Solar design's name and latest milestone. Returns id, name, project_id, external_provider_id, milestone, created_at, image_src, and lidar_src. Required: tenant_id, id.
- **List all Aurora Solar design summaries** (List). Retrieve the summary of an Aurora Solar design, including solar arrays, components, and energy production. Returns: design. Required: tenant_id, design_id.
- **List all Aurora Solar design system loss settings** (List). Retrieve the editable per-design system loss settings for an aurorasolar design, including input derate percentages and their lock state. Returns: system_loss_settings, pricing. Required: tenant_id, design_id.
- **Update a Aurora Solar design system loss setting by ID** (Update). Update the editable per-design system loss settings in aurorasolar. Accepts a partial map of loss names to percentages (0-100); only supplied losses are updated, others remain unchanged. Returns the updated system_loss_settings with editable, locked_by_financier, and per-loss values (value, locked, disabled_reason). Required: tenant_id, id.
- **List all Aurora Solar design roof summaries** (List). Retrieve the roof summary for an Aurora Solar design, returning an array of roof objects each containing shape, area, modules_area, pitch, effective_mean_height, modules, obstructions, edges_length, and per-face details (azimuth, pitch, mean_height, eave_height, obstruction counts). Required: tenant_id, design_id.
- **List all Aurora Solar design racking arrays** (List). List racking arrays for an aurorasolar design — groups of adjacent solar modules that share the same mounting plane, module model, azimuth, pitch, and orientation. Returns each array's units_of_measurement, rows, columns, array_layout, ground_mounted, pitch, azimuth, tilt, rotation, adjacent_arrays, and module details. Required: tenant_id, design_id.
- **Update a Aurora Solar bill of materials racking component by ID** (Update). Update the racking bill of materials for an aurorasolar design, creating or overwriting racking components. Returns a bill_of_materials array where each entry includes id, component_type, sku, name, manufacturer_name, and quantity. Required: tenant_id, design_id. Sending an empty array removes all racking components from the design.
- **List all Aurora Solar design web proposals** (List). Retrieve the Web Proposal for an Aurora Solar design. Returns url (the customer-facing Aurora Sales Mode proposal link, or null if not yet created) and url_expired (whether the link has expired and is no longer accessible). Required: tenant_id, design_id.
- **Create a Aurora Solar web proposal generate URL** (Create). Generate a new Web Proposal URL for an Aurora Solar design. Returns a web_proposal object containing url (the shareable proposal link) and url_expired (expiry status). Any previously generated URL is immediately expired — a design can only have one non-expired URL at a time. Required: tenant_id, design_id.
- **Create a Aurora Solar proposal PDF generation run** (Create). Run a proposal PDF generation job on an Aurora Solar design asynchronously (returns 202 Accepted immediately). Returns: proposal_pdf_generation_job, url. Required: tenant_id, design_id.
- **List all Aurora Solar proposal PDF generation status** (List). Retrieve the status of a proposal PDF generation job in Aurora Solar. Returns: proposal_pdf_generation_job, url. Required: tenant_id, design_id, job_id.
- **List all Aurora Solar design assets** (List). List design assets for an Aurora Solar design, sorted in descending order by taken_at. Only assets whose upload is complete are returned. Returns: assets, id, url. Required: tenant_id, design_id.
- **Create a Aurora Solar design asset** (Create). Create a new design asset for an Aurora Solar design by uploading a binary file. Returns the created asset including its id, asset_type, url, filename, taken_at, and options. Required: tenant_id, design_id, asset_type. Accepted file formats: jpg, jpeg, png, gif, webp, pdf. Max 25 MB per file; max 20 assets per design.
- **Get single Aurora Solar design asset by ID** (Get). Retrieve a single Aurora Solar design asset by id. Only assets whose upload is complete are returned (in-progress uploads return 404). Returns: asset, id, url. Required: tenant_id, design_id, id.
- **Create a Aurora Solar AI roof run** (Create). Run an AI roof model generation job for a design in Aurora Solar (asynchronous). Returns: ai_roof_job. Required: tenant_id, design_id.
- **List all Aurora Solar AI roof status** (List). Check the status of an AI Roof job in Aurora Solar. Returns: ai_roof_job. Required: tenant_id, design_id, job_id.
- **List all Aurora Solar components modules** (List). List modules enabled for a tenant in Aurora Solar. Returns: modules, id. Required: tenant_id.
- **Aurora Solar components modules list 2** (List). Retrieve details on a single Aurora Solar module for a tenant. Returns: id, manufacturer, rating_stc, dimensions, weight, spec_sheet_url. Required: tenant_id, module_id.
- **List all Aurora Solar components inverters** (List). List inverters enabled for a tenant in Aurora Solar. Returns a collection of inverter records including id, name, manufacturer, microinverter, nominal_output_voltage, rating_stc, cec_efficiency_pct, weight, spec_sheet_url, and integrated_batteries. Required: tenant_id.
- **Aurora Solar components inverters list 2** (List). Retrieve details of a specific inverter for an Aurora Solar tenant. Returns: id, manufacturer, microinverter, nominal_output_voltage, rating_stc, cec_efficiency_pct, weight, spec_sheet_url, integrated_batteries. Required: tenant_id, inverter_id.
- **List all Aurora Solar components dc optimizers** (List). List DC optimizers enabled for an Aurora Solar tenant. Returns: dc_optimizers, id. Required: tenant_id.
- **Aurora Solar components dc optimizers list 2** (List). Retrieve details on a single Aurora Solar DC optimizer by its ID within a tenant. Returns: id, manufacturer, max_output_voltage, efficiency_pct, efficiency_pct_max, spec_sheet_url. Required: tenant_id, dc_optimizer_id.
- **List all Aurora Solar design pricings** (List). Retrieve the pricing details of an Aurora Solar design. Returns a pricing object containing pricing_method, system_price, flat_system_price, price_per_watt, storage_pricing_method, storage_flat_system_price, heat_pump_pricing_method, heat_pump_flat_system_price, energy_optimization_pricing_method, pricing_by_component, adders, incentives, system_price_breakdown, storage_system_price_breakdown,…
- **Update a Aurora Solar design pricing by ID** (Update). Update the pricing of an Aurora Solar design by id. Returns: pricing. Required: tenant_id, id.
- **Create a Aurora Solar pricing adder** (Create). Create a new pricing adder or discount for an Aurora Solar design. Returns the created adder object including id, adder_name, adder_value, adder_type, is_discount, and additional_charges. Required: tenant_id, design_id, adder (must include adder_name and adder_value).
- **Delete a Aurora Solar tenant adder by ID** (Delete). Delete an adder by id in Aurora Solar. Returns an empty 204 response on success. Required: tenant_id, id.
- **List all Aurora Solar design financings** (List). List all financings for an Aurora Solar design, sorted by creation date descending. Returns: financings, id. Required: tenant_id, design_id.
- **Aurora Solar design financings list 2** (List). Retrieve a single Aurora Solar financing by its ID for a given design. Returns full financing detail including id, name, financing_option, system_price, lifetime_savings, created_at, project_id, ran_at, up_to_date, and financing-type-specific fields such as loan details, PPA/lease rates, and financier information. Required: tenant_id, design_id, financing_id.
- **Create a Aurora Solar financing push to financier** (Create). Push the current state of an aurorasolar financing to a financier. Currently supports select Mosaic products only, creating an Estimate object in Mosaic; this is a one-way operation. Returns the updated financing object including id, name, financing_option, created_at, system_price, and a financier object containing the Mosaic Estimate ID. Required: tenant_id, design_id, financing_id.
- **List all Aurora Solar tenant proposal templates** (List). List proposal templates for an Aurora Solar tenant. Returns each template's id, name, enabled, default, author, created_at, updated_at, last_used, author_partner_id, assigned_partner_ids, all_partners_assigned, and partner_defaults. The default template is listed first, followed by others in descending order by enabled status and creation date. Required: tenant_id.
- **Aurora Solar tenant proposal templates list 2** (List). Retrieve a single Aurora Solar proposal template by ID. Returns: id, created_at, updated_at, last_used, enabled, author, author_partner_id, assigned_partner_ids, all_partners_assigned, partner_defaults. Required: tenant_id, proposal_template_id.
- **List all Aurora Solar design proposals** (List). Retrieve the default proposal for a design in Aurora Solar. Returns a proposal object including id, created_at, updated_at, proposal_template_id, and proposal_link. Required: tenant_id, design_id.
- **Create a Aurora Solar design proposal** (Create). Create the default proposal for a design in Aurora Solar using a proposal template. If no proposal_template_id is provided, the default template set by the Administrator or Partner is used. Returns a proposal object including id, created_at, updated_at, proposal_template_id, and proposal_link. Required: tenant_id, design_id.
- **Delete a Aurora Solar design proposal by ID** (Delete). Delete the default proposal for a design in Aurora Solar. Returns an empty 204 response on success. Required: tenant_id, design_id.
- **List all Aurora Solar project agreements** (List). List agreements for an Aurora Solar project, sorted by creation date descending. Returns: agreements, id, created_at. Required: tenant_id, project_id.
- **Get single Aurora Solar tenant agreement by ID** (Get). Get a specific agreement by id in aurorasolar. Returns: agreement, id, project_id, design_id, agreement_template_name, status, last_viewed_at, created_at, sent_at, error_message, signing_provider. The signing_provider field indicates whether the agreement is backed by Docusign or Dropbox Sign. Required: tenant_id, id.
- **List all Aurora Solar agreement download links** (List). Retrieve a download link for a signed legacy agreement in Aurora Solar (Dropbox Sign-backed). Returns the agreement object containing file_url (a pre-signed download URL) and expires_at (link expiry timestamp). Required: tenant_id, agreement_id. Rate-limited to 5 requests per minute; the generated link expires 72 hours after creation.
- **Create a Aurora Solar download URL run** (Create). Initiate async generation of a download URL for a signed Docusign agreement in aurorasolar. Returns the created async job including job_id, status, requested_at, completed_at, file_url, project_id, and design_id. Required: tenant_id, agreement_id. Only applicable to agreements with signing_provider 'docusign' and status 'signed'.
- **List all Aurora Solar download URL status** (List). Retrieve the status of an Aurora Solar agreement download URL generation job. Returns: agreement_download_url_job. Required: tenant_id, agreement_id, job_id. When the job succeeds, file_url contains a short-lived PDF download link that expires 15 minutes after generation.
- **List all Aurora Solar project site surveys** (List). List site surveys for a project in Aurora Solar (beta). Returns a collection of site survey records, each containing id, status, created_at, and requested_for_design_id. Required: tenant_id, project_id.
- **Create a Aurora Solar tenant site survey** (Create). Create a new site survey in aurorasolar for a given tenant and project. Returns the site_survey object including the id of the newly created survey. Required: tenant_id, site_survey (with project_id).
- **List all Aurora Solar tenant site surveys** (List). Retrieve a single aurorasolar site survey by tenant and site survey ID. Returns the site_survey object including id, project_id, status, created_at, electrical data, and roof mounting plane details. Required: tenant_id, site_survey_id.
- **Update a Aurora Solar tenant site survey by ID** (Update). Update the overview attributes of an aurorasolar site survey, including notes, report PDF URL, and images. Returns the updated site_survey overview with report, notes, and images. Required: tenant_id, id.
- **List all Aurora Solar site survey requests** (List). Retrieve the site survey request for a given site survey in Aurora Solar. Returns: site_survey_request, id, project_id, status, requested_for_design_id, screenshot_url, requested_at, completed_at. Required: tenant_id, site_survey_id.
- **Update a Aurora Solar site survey electrical by ID** (Update). Update electrical data on an Aurora Solar site survey. Returns: electrical. Required: tenant_id, site_survey_id, and electrical.
- **Update a Aurora Solar electrical subpanel by ID** (Update). Update the list of electrical subpanels for an Aurora Solar site survey, fully replacing any previously stored subpanel data. Returns: subpanels. Required: tenant_id, site_survey_id, subpanels.
- **Update a Aurora Solar roofs mounting plane by ID** (Update). Update mounting planes for an aurorasolar site survey, replacing all previously uploaded mounting plane data. Returns: mounting_planes. Required: tenant_id, site_survey_id, mounting_planes.
- **Update a Aurora Solar site survey status by ID** (Update). Update the status of an Aurora Solar site survey, transitioning it from `in-progress` to `completed`. Returns: site_survey. Required: tenant_id, site_survey_id, and site_survey.status (only `completed` is currently a valid target status).
- **Create a Aurora Solar tenant plan set request** (Create). Create a new plan set request in Aurora Solar for a given tenant. Returns: plan_set_request, id, design_id, project_id, status, user. Required: tenant_id, design_id, and electrical_information (including main_panel_location and main_bus_rating). All new requests are created in draft status.
- **Get single Aurora Solar tenant plan set request by ID** (Get). Retrieve a plan set request by id from Aurora Solar. Returns: plan_set_request, id, design_id, project_id, status, design_request. Required: tenant_id, id.
- **List all Aurora Solar plan set request plan sets** (List). Retrieve plan set documents for a completed aurorasolar plan set request. Once the request is completed, returns a plan_set object containing plan_set_request_id, design_cad_view_url (link to the CAD view of the design), and plan_set_document_url (link to the plan set PDF). Required: tenant_id, plan_set_request_id.
- **List all Aurora Solar tenant webhooks** (List). Retrieve a single Aurora Solar webhook by ID. Returns: webhook, id, description, created_at, updated_at. Required: tenant_id, webhook_id.
- **Update a Aurora Solar tenant webhook by ID** (Update). Update properties of a single Aurora Solar webhook. Returns: webhook, id, description, created_at, updated_at. Required: tenant_id, id.
- **Delete a Aurora Solar tenant webhook by ID** (Delete). Delete an Aurora Solar webhook by id. Returns an empty 204 response on success. Required: tenant_id, id.
- **List all Aurora Solar tenant shared projects** (List). List projects shared with a tenant in aurorasolar, sorted by share date descending. Returns: shared_projects, id. Required: tenant_id.
- **Create a Aurora Solar milestone share** (Create). Share an Aurora Solar milestone with a third-party owner (TPO) provider determined by the financing associated with the milestone's design. Returns the shared_milestone object including id, project_id, sending_tenant_id, receiving_tenant_id, and shared_at. Required: tenant_id, milestone_id.
