# Car: ACRISS

:bulb: **High‑Level Description**

* **ACRISS** (Association of Car Rental Industry Systems Standards) is known for its rental car coding standards and, increasingly, for methodologies addressing environmental impacts in automotive travel.
* The **ACRISS car methodology** differentiates emissions by **vehicle class**, **fuel/energy type**, and **usage patterns** (e.g., distance, trip context), acknowledging that a compact city car differs markedly from a large SUV.
* It incorporates **vehicle specifications**, **driving behavior assumptions**, and **maintenance practices** to estimate carbon emissions.
* The approach reflects the market shift toward **EVs, HEVs, and PHEVs**, and is **updated periodically** to remain aligned with industry standards and technology advances.

***

## Sample API Requests

### A. Route-based request without audit mode (origin/destination or explicit distance)

```json
{
  "expand": ["items"],
  "items": [
    {
      "audit": false,
      "type": "car",
      "methodology": "ACRISS",
      "external_reference": "string",
      "origin": "Frankfurt am Main, Germany",
      "destination": "Berlin, Germany",
      "fuel_type": "diesel",
      "acriss_car_type": "C"
    }
  ]
}
```

### B. Route-based request with audit mode (for finalized/post-booking calculations)

```json
{
  "expand": ["items"],
  "audit_for": "<Auditable Entity ID>",
  "items": [
    {
      "audit": true,
      "type": "car",
      "methodology": "ACRISS",
      "external_reference": "string",
      "origin": "Frankfurt am Main, Germany",
      "destination": "Berlin, Germany",
      "fuel_type": "diesel",
      "acriss_car_type": "C"
    }
  ]
}
```

> **Note:** `audit_for` is optional. Provide when calculating on behalf of a specific Auditable entity; otherwise omit.

### C. Duration-based request (fallback when distance is unknown)

> When the trip distance is unknown, you may pass `number_of_days`. The API will estimate the distance as\
> `estimated_distance_in_km = number_of_days * 60`.

```json
{
  "expand": ["items"],
  "items": [
    {
      "audit": false,
      "type": "car",
      "methodology": "ACRISS",
      "external_reference": "string",
      "fuel_type": "diesel",
      "acriss_car_type": "C",
      "number_of_days": 5
    }
  ]
}
```

> **Precedence rule:** If `distance_in_km` is provided, it will be used and **takes priority** over both `origin`/`destination` and `number_of_days`.

***

## Sample API Response

```json
{
  "carbon_quantity": 65636,
  "carbon_unit": "gram",
  "items": [
    {
      "carbon_quantity": 65636,
      "carbon_unit": "gram",
      "external_reference": "string",
      "type": "car",
      "methodology": "ACRISS",
      "distance": 538.0,
      "distance_unit": "kilometer"
    }
  ]
}
```

***

## API Request Items

* `"type"`: `"car"` (**required**).
* `"methodology"`: `"ACRISS"` (**required**).
* `"external_reference"`: A unique identifier (max 128 chars) to link the result to your item (useful for multi-item requests where order is not guaranteed).
* `"origin"`: SQUAKE will try to resolve `origin`/`destination` regardless of format. Prefer:
  * **Addresses**: postal standard.
  * **Airports**: IATA/ICAO `^[A-Z]{3,4}$` (e.g., `"MUC"`).
  * **Trade/transport locations**: UN/LOCODE `^[A-Z]{2}\W?[A-Z2-9]{3}$` (e.g., `"DEHAM"`).
  * **Coordinates**: `^[-+]?\\d{1,3}\\.\\d{1,10}\\s?,\\s?[-+]?\\d{1,3}\\.\\d{1,10}$` (e.g., `"+40.712,-74.006"`).
* `"destination"`: Same formats and rules as `"origin"`.
* `"distance_in_km"`: If present, **takes priority** over `origin`/`destination` and `number_of_days`. If both `distance_in_km` and `origin`/`destination` are provided, `distance_in_km` is used.
* `"number_of_days"`: **integer** (display name: **Number‑Of‑Days**), **>= 1**.
  * Use when trip distance is **unknown**.
  * The API estimates distance as: `estimated_distance_in_km = number_of_days * 60`.
  * **Precedence:** `distance_in_km` > `origin/destination` > `number_of_days` (fallback).
* `"fuel_type"`: One of `petrol`, `diesel`, `hev`, `phev`, `electricity`. Default for ACRISS is `petrol`.
* `"acriss_car_type"`: Car classes:\
  `C` (Compact), `D` (Compact Elite), `E` (Economy), `F` (Fullsize), `G` (Fullsize Elite), `H` (Economy Elite), `I` (Intermediate), `J` (Intermediate Elite), `L` (Luxury), `M` (Mini), `N` (Mini Elite), `P` (Premium), `R` (Standard Elite), `S` (Standard), `U` (Premium Elite), `W` (Luxury Elite), `X` (Special), `O` (Oversize). Default: `E`.
* `"sipp_car_type"`: If `acriss_car_type` is not passed, SQUAKE will auto‑resolve using the **SIPP code**. **Mutually exclusive** with `pseudo_car_type` (provide only one).
* `"pseudo_car_type"`: If neither `acriss_car_type` nor `sipp_car_type` are passed, SQUAKE will auto‑resolve using **Pseudo code**. **Mutually exclusive** with `sipp_car_type`. Allowed values:\
  `ACAR`, `ACGO`, `ACNV`, `ACPG`, `ACPR`, `ACRS`, `ADSL`, `AEIG`, `AELC`, `AELT`, `AETH`, `AFWD`, `AGRN`, `AHYB`, `AHYD`, `ALLB`, `ALLC`, `ALLD`, `ALMO`, `AMAN`, `AMCY`, `AMFP`, `AMNO`, `AMTO`, `ANIN`, `AOFR`, `APET`, `APUP`, `AREC`, `ASEV`, `ASIX`, `ASPC`, `ASPT`, `ASUV`, `ATRV`, `AUTO`, `AVAN`, `AWGN`.
* `"audit"`: boolean (optional). Set to `true` to create immutable audit records for finalized calculations. Must be enabled for your account.

***

## Default Values

* `"fuel_type": "petrol"`
* `"acriss_car_type": "E"`

***

## Notes

* **Data quality tip:** whenever possible, pass the actual `distance_in_km`—it yields the most accurate result. `number_of_days` is a convenience fallback and a coarse approximation.
* If neither `distance_in_km` nor `origin`/`destination` are supplied, the API will use `number_of_days` (if provided) to estimate distance; otherwise the request may be insufficient to compute trip emissions.

***

## Bibliography

* Environmental Responsibility & CO2 Emissions Guidelines (n.d.). **ACRISS**. Retrieved from <https://acriss.org/car-codes/environmental/>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs-integration.squake.earth/api-calculations-request-response/travel/car/car-acriss.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
