### Get Subscriptions Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger This example showcases the response structure when fetching all subscriptions for a given set of VINs. It returns a map where keys are VINs and values are arrays of subscription objects associated with that VIN. ```json { "3D7UT2CL0BG625027": [ { "HU_vin_for_popup": null, "collection_name": "collection_name", "email_subscriptions": [ { "email": "your_email@domain.com", "pending_confirmation": true } ], "notifications_enabled": true, "phone_number_subscriptions": [ { "phone_number": "+1 123 456 7890" } ] } ], "4D7UT2CL0BG625028": [] } ``` -------------------------------- ### Get Subscriptions Error Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Provides an example of an error response when subscriptions cannot be retrieved, specifically when no VINs are found for the user. This helps in understanding potential failure cases. ```json { "type": "string", "example": "Error, no vins found for this user (your_email@domain.com)." } ``` -------------------------------- ### Get Geofencing Subscription Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger This is an example of a successful response when retrieving geofencing subscription details. It includes the VIN, geofence collection name, notification status, and lists of phone number and email subscriptions. ```json { "vin": "3D7UT2CL0BG625027", "collection_name": "collection_name", "notifications_enabled": true, "HU_vin_for_popup": "3D7UT2CL0BG625054", "phone_number_subscriptions": [ { "phone_number": "+12345678900" } ], "email_subscriptions": [ { "email": "your_email@domain.com", "pending_confirmation": "false" } ] } ``` -------------------------------- ### Add Streaming Endpoints Success Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Provides an example of a successful response after adding streaming endpoints. It confirms that the endpoints have been successfully added for the specified VIN. ```json { "type": "string", "example": "Successfully added streaming endpoints for vin (3D7UT2CL0BG625027)." } ``` -------------------------------- ### Subscription Not Found Error Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Provides an example of an error response when a subscription is not found, prompting the user to create one first. This error is specific to scenarios where the subscription is entirely missing. ```json { "type": "string", "example": "Error, the subscription information for vin (3D7UT2CL0BG625027) and geofence collection (collection_name) was not found. Please create a subscription first." } ``` -------------------------------- ### Create Geofence Collection Request Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger An example of a JSON request body for creating a geofence collection. It includes the collection name and a list of entries, each with a geofence ID and geometry (Polygon). ```json { "collection_name": "collection_name", "entries": [ { "GeofenceId": "geofence_id", "Geometry": { "Polygon": [ [ -84.94713408143345, 43.38009085676791 ], [ -84.93943372033695, 43.15714706629157 ], [ -84.60337504788632, 43.169392182092594 ], [ -84.61029494482077, 43.38746832635201 ], [ -84.94554425452868, 43.37938877562664 ] ] } } ] } ``` -------------------------------- ### Bug Report Request Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger An example of a JSON request body for reporting a bug. It includes a field for a detailed description of the issue. ```json { "example": "Enter a detailed description of the issue." } ``` -------------------------------- ### Subscription Does Not Exist Error Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger An example of an error response indicating that a subscription does not exist for the provided VIN and collection. This is crucial for handling cases where an operation is attempted on a non-existent subscription. ```json { "type": "string", "example": "Error: cannot get details for vin: 3D7UT2CL0BG625027 and collection: collection_name. This subscription does not exist." } ``` -------------------------------- ### Batch Put Geofence Request Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger This example demonstrates the structure for a batch request to add geofences to a collection. It includes the geofence ID, geometry (Circle with Center and Radius), and specifies the required fields. ```json { "entries":[ { "GeofenceId":"geofence_id", "Geometry":{ "Circle":{ "Center":[ -87.64147148516258, 41.88151660465293 ], "Radius":1262.5772004365683 } } } ] } ``` -------------------------------- ### Geofencing Notifications Error Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger An example of an error response when there was a problem enabling geofencing notifications for a specific VIN and collection. This indicates a general failure during the enablement process. ```json { "type": "string", "example": "There was an error enabling notifications for vin (3D7UT2CL0BG625027) and collection (collection_name)." } ``` -------------------------------- ### Geofence Breach Event Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger An example of a geofence breach event object. It details the event type (ENTER/EXIT), timestamp, latitude, longitude, geofence ID, and the collection name. ```json { "event_type": "ENTER", "time": "2023-04-12T18:37:35.948Z", "lat": "40.151281", "long": "-82.300769", "geofence_id": "geofence_id", "collection_name": "collection_name" } ``` -------------------------------- ### Get VIN Streaming Endpoints Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Shows the structure of a successful response when retrieving streaming endpoints associated with a specific VIN. It lists the available HTTPS endpoints and confirms the VIN. ```json { "endpoints": [ "HTTPS_ENDPOINT_1", "HTTPS_ENDPOINT_2" ], "vin": "3D74UT2CL0BG625027" } ``` -------------------------------- ### Geofencing Notifications Not Found Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Provides an example of a response when geofencing notification subscription information is not found for a given VIN and collection. This suggests that a subscription may not exist or has been removed. ```json { "type": "string", "example": "Error, the subscription information for vin (3D7UT2CL0BG625027) and geofence collection (collection_name) was not found." } ``` -------------------------------- ### RemoteCommand Schema Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Defines the structure for a remote command request. Requires a command string and a PIN integer. ```JSON { "required": ["command", "pin"], "type": "object", "properties": { "command": { "type": "string", "example": "START" }, "pin": { "type": "integer", "example": 1234 } } } ``` -------------------------------- ### Error Adding Geofencing Subscriptions Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger An example of a DynamoDB error response when there is an issue adding geofencing subscriptions. This indicates a backend database problem during the subscription addition process. ```json { "type": "string", "example": "DynamoDB error: error adding subscriptions." } ``` -------------------------------- ### RemoteCommandResponse Schema Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Defines the structure of a response after sending a remote command. Includes VIN, command, and the execution result. ```JSON { "type": "object", "properties": { "vin": { "type": "string", "example": "3D7UT2CL0BG625027" }, "command": { "type": "string", "example": "START" }, "result": { "type": "string", "example": "COMMAND SENT" } } } ``` -------------------------------- ### GET /v1/geofence-breaches Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Get details of all geofence breach events. ```APIDOC ## GET /v1/geofence-breaches ### Description Get details of all geofence breach events. ### Method GET ### Endpoint /v1/geofence-breaches ### Response #### Success Response (200) - **breaches** (array) - An array of geofence breach objects. #### Response Example ```json { "breaches": [ { "deviceId": "string", "timestamp": "string", "geofenceId": "string", "breachType": "enter" | "exit" } ] } ``` ``` -------------------------------- ### GET /v1/account Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Retrieves details of the account, including API key, linked vehicle accounts, owned VINs, geofence collections, and geofencing subscriptions. ```APIDOC ## GET /v1/account ### Description Retrieves details of the account, including API key, linked vehicle accounts, owned VINs, geofence collections, and geofencing subscriptions. ### Method GET ### Endpoint /v1/account ### Parameters #### Query Parameters None #### Path Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **Account Details** (object) - Description of the account details schema. #### Response Example ```json { "apiKey": "string", "vehicleAccounts": [ { "accountId": "string", "vin": "string", "nickname": "string", "linked": true } ], "ownedVINs": [ "string" ], "geofenceCollections": [ { "collectionId": "string", "collectionName": "string", "geofences": [ { "geofenceId": "string", "latitude": 0, "longitude": 0, "radius": 0, "description": "string" } ] } ], "geofencingSubscriptions": [ { "subscriptionId": "string", "vin": "string", "geofenceId": "string", "eventType": "string", "enabled": true } ] } ``` ``` -------------------------------- ### Batch Delete Geofence Request Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger This example shows the structure for a batch request to delete geofences from a collection. It requires an array of geofence IDs to be removed. ```json { "geofence_ids":[ "geofence_id", "geofence_id2" ] } ``` -------------------------------- ### Add Streaming Endpoints Error Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger An example of an error response when there is a problem enabling data collection on a VIN, specifically related to adding streaming endpoints. This indicates a general failure in the data collection enablement process. ```json { "type": "string", "example": "There was an error enabling data collection on VIN 3D7UT2CL0BG625027" } ``` -------------------------------- ### DataResponse Schema Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Defines the structure for a data response, which is an array of items conforming to the DataResponseinner schema. ```JSON { "type": "array", "items": { "$ref": "#/components/schemas/DataResponseinner" } } ``` -------------------------------- ### GetAccountResponse Schema Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Defines the structure of a response when retrieving account information. Includes owner details, contact info, status, API key, and vehicle account mappings. ```JSON { "type": "object", "properties": { "api_account_owner": { "type": "string", "example": "your_email@domain.com" }, "first_name": { "type": "string", "example": "First Name" }, "last_name": { "type": "string", "example": "Last Name" }, "phone_number": { "type": "string", "example": "123-456-7890" }, "usage_description": { "type": "string", "example": "Usage Description" }, "account_status": { "type": "string", "example": "APPROVED" }, "api_key": { "type": "string", "example": "API_KEY" }, "vehicle_accounts": { "type": "object", "example": { "your_connected_account_email@domain.com": { "uids": [ "EXAMPLE_UID" ] } } }, "owned_vins": { "type": "object", "example": { "3D7UT2CL0BG625027": { "nickname": "nickname", "uid": "EXAMPLE_UID", "sdp": "IGNITE" } } }, "geofence_collections": { "type": "array", "items": { "type": "object", "properties": { "collection_name": { "type": "string", "example": "collection_name" }, "entries": { "type": "object", "example": { "CreateTime": "2024-01-15 18:05:36.544000+00:00" } } } } } } } ``` -------------------------------- ### GET /v1/geofencing-notifications/subscriptions Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Retrieves subscription information for a specific vehicle (VIN) and geofence collection. This endpoint allows you to get details about an existing subscription. ```APIDOC ## GET /v1/geofencing-notifications/subscriptions ### Description Retrieves all information about a particular subscription that tracks movements of a vehicle in relation to a geofence collection. ### Method GET ### Endpoint /v1/geofencing-notifications/subscriptions ### Parameters #### Query Parameters - **vin** (string) - Required - The Vehicle Identification Number. - **collection_name** (string) - Required - The name of the geofence collection. ### Response #### Success Response (200) - **subscription_id** (string) - The unique identifier for the subscription. - **vin** (string) - The VIN associated with the subscription. - **collection_name** (string) - The geofence collection name. - **status** (string) - The status of the subscription. - **created_at** (string) - Timestamp when the subscription was created. - **updated_at** (string) - Timestamp when the subscription was last updated. #### Response Example (200) ```json { "subscription_id": "sub_12345abcde", "vin": "YOUR_VIN_HERE", "collection_name": "YOUR_COLLECTION_NAME_HERE", "status": "active", "created_at": "2023-10-27T10:00:00Z", "updated_at": "2023-10-27T10:00:00Z" } ``` #### Error Responses - **400 Bad Request**: Indicates invalid input parameters, such as missing VIN or collection name. - **403 Forbidden**: Indicates that the user is not authorized to access this information. - **500 Internal Server Error**: Indicates an issue with the server. ``` -------------------------------- ### GET /subscriptions Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Retrieves details of subscriptions for your vehicle(s) and geofence collections. ```APIDOC ## GET /subscriptions ### Description Retrieves details of subscriptions for your vehicle(s) and geofence collections. ### Method GET ### Endpoint /v1/subscriptions ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **subscriptions** (array) - Details of the subscriptions. #### Response Example ```json { "subscriptions": [ { "vehicleId": "string", "geofenceCollections": [ { "collectionId": "string", "collectionName": "string" } ] } ] } ``` #### Error Response (400) - **code** (string) - Error code. - **message** (string) - Error message. #### Error Response Example (400) ```json { "code": "INVALID_PARAMETER", "message": "Invalid parameter provided." } ``` #### Error Response (403) - **description** (string) - 'not authorized' ``` -------------------------------- ### Enable Geofencing Notifications Success Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Shows a successful response after enabling geofencing notifications. It confirms that notifications have been enabled for the specified VIN and geofence collection. ```json { "type": "string", "example": "Success! Notifications for vin: 3D7UT2CL0BG625027 and geofence collection: collection_name are enabled." } ``` -------------------------------- ### Error Removing Geofencing Subscriptions Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Provides an example of a DynamoDB error response when there is a problem removing geofencing subscriptions. This signifies a backend database issue during subscription removal. ```json { "type": "string", "example": "DynamoDB error: error removing subscriptions." } ``` -------------------------------- ### DataLastKnownResponse Schema Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Defines the structure for the last known data for a vehicle. Includes VIN and the data payload. ```JSON { "type": "object", "properties": { "vin": { "type": "string", "example": "3D7UT2CL0BG625027" }, "data": { "type": "object", "example": "{\"vin\": \"3D7UT2CL0BG625027\", \"value\": \"12532\", \"signal\": \"odometer\", \"timestamp\": \"2020-02-22 19:53:41.071\"}" } } } ``` -------------------------------- ### POST /v1/{vin}/remote Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Sends remote commands to a vehicle. Supported commands include START, CANCEL, UNLOCK, LOCK, and HORNS & LIGHTS. ```APIDOC ## POST /v1/{vin}/remote ### Description Sends remote commands to vehicle. Available commands are START, remote start CANCEL, UNLOCK, LOCK, or HORNS & LIGHTS ### Method POST ### Endpoint /v1/{vin}/remote ### Parameters #### Path Parameters - **vin** (string) - Required - Vehicle Identification Number #### Request Body - **RemoteCommand** (object) - Schema reference for the remote command payload. ### Request Example (No request example provided in the documentation) ### Response #### Success Response (200) - **RemoteCommandResponse** (object) - Schema reference for successful command execution. #### Response Example (No success response example provided in the documentation) #### Error Responses - **400**: bad input parameter - **403**: (No description provided) ``` -------------------------------- ### AuthTokenResponse Schema Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Defines the structure of a response containing an authentication token. Includes the access token, token type, and expiration time. ```JSON { "type": "object", "properties": { "access_token": { "type": "string", "example": "eyJraWQiOiJyc2ExIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJhY2JjY2Q..." }, "token_type": { "type": "string", "example": "bearer" }, "expires_in": { "type": "integer", "example": 3600 } } } ``` -------------------------------- ### Subscribe to Geofencing Notifications Success Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Shows a successful response after subscribing to geofencing notifications. It confirms that the subscription for the specified VIN and geofence collection has been successfully added. ```json { "type": "string", "example": "Success! Subscriptions to vin: 3D7UT2CL0BG625027 and geofence collection: collection_name breach event added successfully." } ``` -------------------------------- ### Create Geofencing Subscription Request Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger This snippet demonstrates the structure for creating a geofencing subscription. It requires a vehicle identification number (VIN) and a geofence collection name. This is typically used when you want to subscribe a vehicle to a specific geofence area. ```json { "vin": "3D7UT2CL0BG625027", "collection_name": "collection_name" } ``` -------------------------------- ### No Streaming Endpoints Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Illustrates the response when a VIN has no streaming endpoints registered. This message informs the user that no endpoints are currently available for the specified VIN. ```json { "message": "There are no streaming endpoints registered for this vin (3D74UT2CL0BG625027)." } ``` -------------------------------- ### Example Error Responses for Streaming Endpoints Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Demonstrates various error messages that can occur when managing streaming endpoints for a Vehicle Identification Number (VIN). These include errors for adding endpoints, access denial, and issues during action execution. ```json { "error": "An error occurred while trying to add streaming endpoints for the vin (3D74UT2CL0BG625027). Maximum streaming endpoints per vin is MAX_STREAMING_ENDPOINTS." } { "error": "Access denied. This vin (3D74UT2CL0BG625027) is not owned by the account: your_email@domain.com." } { "error": "There was an error performing this action. Please try again later." } ``` -------------------------------- ### GET /vehicles/{vin}/data Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Retrieves specific vehicle data points for a given VIN. ```APIDOC ## GET /vehicles/{vin}/data ### Description Retrieves specific vehicle data points for a given VIN. ### Method GET ### Endpoint /vehicles/{vin}/data ### Parameters #### Path Parameters - **vin** (string) - Required - The Vehicle Identification Number. #### Query Parameters - **dataTypes** (string) - Required - Comma-separated list of data types to retrieve (e.g., "Speedometer,PowerMode,PresentGear,SteeringWheelAngle"). ### Response #### Success Response (200) - **app_timestamp** (string) - The timestamp when the data was recorded. - **data** (object) - An object containing the requested vehicle data. #### Response Example ```json { "app_timestamp": "2021-10-31 21:59:06.000", "data": { "Speedometer": "15.0", "PowerMode": "4", "PresentGear": "2", "SteeringWheelAngle": "-6.0" } } ``` #### Error Response (400) - **InvalidDataTypeError** (string) - "Invalid data type requested. Please provide a valid list of data types." #### Error Response (403) - **VehicleAccessDeniedResponse** (string) - "Access denied. You do not have permission to access data for this VIN." #### Error Response (404) - **VINNotFoundError** (string) - "VIN not found. Please check the VIN and try again." #### Error Response (500) - **ErrorPerformingActionTryAgainLater** (string) - "There was an error performing this action. Please try again later." ``` -------------------------------- ### GET /geofencing/subscriptions/{vin} Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Retrieves details of geofencing subscriptions for a specific VIN. Includes information on associated geofence collections, notification preferences, and contact details. ```APIDOC ## GET /geofencing/subscriptions/{vin} ### Description Retrieves details of geofencing subscriptions for a specific VIN. Returns information about associated geofence collections, notification settings, and contact information for subscriptions. ### Method GET ### Endpoint /geofencing/subscriptions/{vin} ### Parameters #### Path Parameters - **vin** (string) - Required - The Vehicle Identification Number to retrieve subscriptions for. ### Response #### Success Response (200) - **VIN** (object) - An object where keys are VINs and values are arrays of subscription details. - **collection_name** (string) - The name of the geofence collection. - **notifications_enabled** (boolean) - Indicates if notifications are enabled for this subscription. - **HU_vin_for_popup** (string or null) - VIN used for pop-up notifications, if any. - **phone_number_subscriptions** (array) - List of phone numbers subscribed to notifications. - **phone_number** (string) - The subscribed phone number. - **email_subscriptions** (array) - List of email addresses subscribed to notifications. - **email** (string) - The subscribed email address. - **pending_confirmation** (boolean) - Indicates if the email subscription is pending confirmation. #### Response Example (Success) ```json { "3D7UT2CL0BG625027": [ { "HU_vin_for_popup": null, "collection_name": "collection_name", "email_subscriptions": [ { "email": "your_email@domain.com", "pending_confirmation": true } ], "notifications_enabled": true, "phone_number_subscriptions": [ { "phone_number": "+1 123 456 7890" } ] } ], "4D7UT2CL0BG625028": [] } ``` #### Error Responses - **403 Forbidden**: Access denied. ```json "Access denied. Either vin, geofence collection, or both are not owned by the user (your_email@domain.com)." ``` - **404 Not Found**: Subscription details not found for the given VIN. ```json "Error: cannot get details for vin: vin and collection name: collection_name." ``` ``` -------------------------------- ### Successful Deletion of VIN Streaming Info Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Provides an example of a successful response after deleting all streaming information for a given VIN. This confirms that the operation was completed without errors. ```json { "message": "Successfully deleted streaming info for the vin (3D74UT2CL0BG625027)." } ``` -------------------------------- ### Create Geofencing Subscription Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Creates a subscription for a vehicle identification number (VIN) to monitor its movements in relation to geofences within a specified collection. This allows for subsequent setup of notifications for breach events. ```APIDOC ## POST /v1/geofencing-notifications/subscription ### Description Create a subscription for a vin and a geofence collection. Create a subscription for a vin and its movements in relation to geofences of a collection. Once the subscription is created, you may add subscribers to receive notifications about breach events to those endpoints. ### Method POST ### Endpoint /v1/geofencing-notifications/subscription #### Request Body - **vin** (string) - Required - The Vehicle Identification Number. - **collection_name** (string) - Required - The name of the geofence collection. ### Request Example ```json { "vin": "VIN12345ABCDE", "collection_name": "my_geofence_collection" } ``` ### Response #### Success Response (200) - **subscription_id** (string) - The unique identifier for the created subscription. - **vin** (string) - The VIN associated with the subscription. - **collection_name** (string) - The geofence collection name. #### Response Example ```json { "subscription_id": "sub_xyz789", "vin": "VIN12345ABCDE", "collection_name": "my_geofence_collection" } ``` ``` -------------------------------- ### POST /geofencing/subscriptions Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Creates a new geofencing subscription for a given VIN and geofence collection. It handles cases where the subscription already exists, access is denied, or a database error occurs. ```APIDOC ## POST /geofencing/subscriptions ### Description Creates a new geofencing subscription for a given VIN and geofence collection. Handles various error scenarios like existing subscriptions, access denied, or database errors. ### Method POST ### Endpoint /geofencing/subscriptions ### Parameters #### Request Body - **vin** (string) - Required - The Vehicle Identification Number. - **collection_name** (string) - Required - The name of the geofence collection. ### Request Example ```json { "vin": "3D7UT2CL0BG625027", "collection_name": "collection_name" } ``` ### Response #### Success Response (200) - **message** (string) - A success message indicating the subscription was created. #### Response Example (Success) ```json { "message": "Success! Subscription created successfully for vin: 3D7UT2CL0BG625027 and geofence collection: collection_name." } ``` #### Error Responses - **409 Conflict**: Subscription already exists. ```json "This subscription already exists." ``` - **403 Forbidden**: Access denied (VIN or collection not owned by user). ```json "Access denied. Either vin, geofence collection, or both are not owned by the user (your_email@domain.com)." ``` - **500 Internal Server Error**: Database error during creation. ```json "DynamoDB error: error creating subscription." ``` ``` -------------------------------- ### Account Registration API Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger This endpoint allows new users to register for an account to access the Stellantis Developer API. It requires providing personal and contact information, along with a usage description. ```APIDOC ## POST /api/accounts/register ### Description Registers a new user account for accessing the Stellantis Developer API. ### Method POST ### Endpoint /api/accounts/register ### Parameters #### Request Body - **api_account_owner** (string) - Required - The email address for the account owner. - **password** (string) - Required - The desired password for the account. Must meet complexity requirements. - **first_name** (string) - Required - The first name of the account owner. - **last_name** (string) - Required - The last name of the account owner. - **phone_number** (string) - Required - The phone number of the account owner. - **address** (string) - Required - The physical address of the account owner. - **usage_description** (string) - Required - A brief description of the intended use case for the API. ### Request Example ```json { "api_account_owner": "your_email@domain.com", "password": "Your_password!1", "first_name": "First", "last_name": "Last", "phone_number": "+12484250000", "address": "1000 Chrysler Drive, Auburn Hills, MI, 48306", "usage_description": "Briefly describe your use case, purpose for requesting access to the API" } ``` ### Response #### Success Response (200) - **result** (string) - A confirmation message indicating that the account request has been received. #### Response Example ```json { "result": "Your account request has been received. You will receive a response via email to the address specified." } ``` #### Error Responses - **400 Bad Request**: If the password does not meet requirements or other validation errors occur. - **500 Internal Server Error**: If there is a server-side issue processing the request. ``` -------------------------------- ### Create Geofence Collection Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Creates a new geofence collection with a specified name and a list of geofence entries. ```APIDOC ## POST /geofences/collections ### Description Creates a new geofence collection. ### Method POST ### Endpoint `/geofences/collections` ### Parameters #### Request Body - **collection_name** (string) - Required - The name for the new geofence collection. - **entries** (array) - Optional - A list of geofence entries to include in the collection. - **GeofenceId** (string) - Required - The unique identifier for the geofence. - **Geometry** (object) - Required - The geometric definition of the geofence. - **Polygon** (array) - Required - An array of coordinate pairs defining the polygon boundaries. - Each item is an array containing two numbers: [longitude, latitude]. ### Request Example ```json { "collection_name": "collection_name", "entries": [ { "GeofenceId": "geofence_id", "Geometry": { "Polygon": [ [ -84.94713408143345, 43.38009085676791 ], [ -84.93943372033695, 43.15714706629157 ], [ -84.60337504788632, 43.169392182092594 ], [ -84.61029494482077, 43.38746832635201 ], [ -84.94554425452868, 43.37938877562664 ] ] } } ] } ``` ### Response #### Success Response (201) - **message** (string) - Confirmation message. #### Response Example ```json { "message": "Geofence collection created successfully." } ``` ``` -------------------------------- ### POST /v1/geofencing-notifications/enable Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Enable geofencing notifications for a VIN and a geofence collection for all existing subscribers. ```APIDOC ## POST /v1/geofencing-notifications/enable ### Description Enable geofencing notifications for a VIN and a geofence collection for all existing subscribers. ### Method POST ### Endpoint /v1/geofencing-notifications/enable ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **vin** (string) - Required - The Vehicle Identification Number. - **geofenceCollectionName** (string) - Required - The name of the geofence collection. ### Request Example ```json { "vin": "YOUR_VIN_HERE", "geofenceCollectionName": "YOUR_COLLECTION_NAME" } ``` ### Response #### Success Response (200) - **status** (string) - The status of the operation. #### Response Example ```json { "status": "success" } ``` #### Error Response (400) - **description** (string) - 'bad input parameter' #### Error Response Example (400) ```json { "code": "GE_NOT_FOUND", "message": "Geofence collection not found." } ``` #### Error Response (403) - **description** (string) - 'not authorized' #### Error Response (500) - **description** (string) - 'internal server error' ``` -------------------------------- ### POST /v1/geofencing-notifications/subscriptions Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Creates a new geofencing subscription for a vehicle (VIN) to track its movements within a specified geofence collection. The response indicates success or provides details on why the creation failed. ```APIDOC ## POST /v1/geofencing-notifications/subscriptions ### Description Creates a new geofencing subscription to track a vehicle's movements within a geofence collection. ### Method POST ### Endpoint /v1/geofencing-notifications/subscriptions ### Parameters #### Request Body - **vin** (string) - Required - The Vehicle Identification Number. - **collection_name** (string) - Required - The name of the geofence collection. ### Request Example ```json { "vin": "YOUR_VIN_HERE", "collection_name": "YOUR_COLLECTION_NAME_HERE" } ``` ### Response #### Success Response (201) - **subscription_id** (string) - The unique identifier for the created subscription. - **vin** (string) - The VIN associated with the subscription. - **collection_name** (string) - The geofence collection name. - **status** (string) - The status of the subscription (e.g., "active"). #### Response Example (201) ```json { "subscription_id": "sub_12345abcde", "vin": "YOUR_VIN_HERE", "collection_name": "YOUR_COLLECTION_NAME_HERE", "status": "active" } ``` #### Error Responses - **400 Bad Request**: Indicates invalid input parameters or if a subscription for the given VIN and collection already exists. - **403 Forbidden**: Indicates that the user is not authorized to perform this action. - **500 Internal Server Error**: Indicates an issue with the server or database. ``` -------------------------------- ### POST /v1/feedback Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Submit general feedback, questions, or comments to Stellantis. For bug reports, use the /bugs endpoint. ```APIDOC ## POST /v1/feedback ### Description Submit general feedback, questions, comments to Stellantis. ### Method POST ### Endpoint /v1/feedback ### Parameters #### Request Body - **Feedback** (object) - Required - The feedback payload. - **comment** (string) - Required - User's feedback comment. - **email** (string) - Optional - User's email address. - **name** (string) - Optional - User's name. ### Request Example ```json { "comment": "This is a great API!", "email": "user@example.com", "name": "John Doe" } ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message indicating feedback was submitted. #### Response Example ```json { "message": "Feedback submitted successfully." } ``` ``` -------------------------------- ### POST /v1/account/register Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Requests API account credentials for the Stellantis Cloud API. Use this endpoint to register for new API access. ```APIDOC ## POST /v1/account/register ### Description Requests API account credentials for the Stellantis Cloud API. ### Method POST ### Endpoint /v1/account/register ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **email** (string) - Required - The email address for the account registration. - **firstName** (string) - Required - The first name of the applicant. - **lastName** (string) - Required - The last name of the applicant. - **companyName** (string) - Optional - The name of the company the applicant is affiliated with. - **phone** (string) - Optional - The phone number of the applicant. ### Request Example ```json { "email": "your_email@domain.com", "firstName": "John", "lastName": "Doe", "companyName": "Example Corp", "phone": "123-456-7890" } ``` ### Response #### Success Response (201) - **Credential Request Received** (object) - Confirmation that the credential request has been received. The response may contain details about the status of the request or next steps. #### Response Example ```json { "message": "Credential request received. Please check your email for further instructions.", "requestId": "some-uuid" } ``` ``` -------------------------------- ### GET /vehicles/{vin}/streaming-endpoints Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Retrieves a list of registered streaming endpoints for a given Vehicle Identification Number (VIN). ```APIDOC ## GET /vehicles/{vin}/streaming-endpoints ### Description Retrieves a list of registered streaming endpoints for a given Vehicle Identification Number (VIN). ### Method GET ### Endpoint /vehicles/{vin}/streaming-endpoints ### Parameters #### Path Parameters - **vin** (string) - Required - The Vehicle Identification Number. ### Response #### Success Response (200) - **endpoints** (array of strings) - A list of streaming endpoint URLs. - **vin** (string) - The Vehicle Identification Number. #### Response Example ```json { "endpoints": [ "HTTPS_ENDPOINT_1", "HTTPS_ENDPOINT_2" ], "vin": "3D7UT2CL0BG625027" } ``` #### Error Response (403) - **StreamingEndpointsAccessDeniedResponse** (string) - "Access denied. This vin (VIN) is not owned by the account: your_email@domain.com." #### Error Response (404) - **NoStreamingEndpointsResponse** (string) - "There are no streaming endpoints registered for this vin (VIN)." #### Error Response (500) - **ErrorPerformingActionTryAgainLater** (string) - "There was an error performing this action. Please try again later." ``` -------------------------------- ### GET /v1/stream/{vin} Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Retrieves a list of all endpoints where a VIN's data is currently being streamed to. This allows you to monitor where your data is being sent. ```APIDOC ## GET /v1/stream/{vin} ### Description Retrieve a list of all endpoints where a VIN data in being streamed to. ### Method GET ### Endpoint /v1/stream/{vin} ### Parameters #### Path Parameters - **vin** (string) - Required - Vehicle Identification Number ### Request Example ```json { "example": "request body" } ``` ### Response #### Success Response (200) - **schema** (object) - GetVINStreamingEndpointsResponse #### Response Example ```json { "example": "response body" } ``` #### Error Responses - **400** - Bad input parameter. Schema: NoStreamingEndpointsResponse - **401** - Access denied. Schema: StreamingEndpointsAccessDeniedResponse - **403** - Not authorized - **500** - Internal server error ``` -------------------------------- ### Authentication API Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Provides endpoints for obtaining authentication tokens and managing API keys. ```APIDOC ## POST /oauth/token ### Description Obtains an access token for authenticating API requests. ### Method POST ### Endpoint /oauth/token ### Parameters #### Request Body - **grant_type** (string) - Required - The grant type for the request (e.g., 'client_credentials'). - **scope** (string) - Optional - The scope of the access request. ### Request Example ```json { "grant_type": "client_credentials", "scope": "vehicle_data" } ``` ### Response #### Success Response (200) - **access_token** (string) - The access token for API authentication. - **token_type** (string) - The type of token (e.g., 'bearer'). - **expires_in** (integer) - The token's expiration time in seconds. #### Response Example ```json { "access_token": "eyJraWQiOiJyc2ExIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJhY2JjY2Q...", "token_type": "bearer", "expires_in": 3600 } ``` ``` -------------------------------- ### GET /v1/{vin}/data/lastknown Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Retrieves the last known data sensor values for a specific vehicle and sensor. Provides the most recent sensor value. ```APIDOC ## GET /v1/{vin}/data/lastknown ### Description Retrieves the last known data sensor values for a vehicle. ### Method GET ### Endpoint /v1/{vin}/data/lastknown ### Parameters #### Path Parameters - **vin** (string) - Required - Vehicle Identification Number ### Response #### Success Response (200) - **sensorName** (string) - Name of the sensor. - **value** (string) - The last known value of the sensor. - **timestamp** (string) - Timestamp when the value was recorded. #### Response Example ```json { "sensorName": "string", "value": "string", "timestamp": "string" } ``` ``` -------------------------------- ### Unsubscribe from Geofencing Notifications Success Response Example Source: https://developers.stellantis.com/apidocs.html/Stellantis-Space-Cloud-SDK-swagger Shows a successful response after unsubscribing from geofencing notifications. It confirms that the specified subscriptions have been successfully removed. ```json { "type": "string", "example": "Success! Subscriptions to vin: 3D7UT2CL0BG625027 and geofence collection: collection_name breach event removed successfully." } ```