# Inverted AI

## API and SDK Documentation

Version: 0.0.2

Inverted AI's REST API for controlling non-playable characters (NPCs) in autonomous driving simulations.

# Default

# driveDrivePost

Drive

    /drive

### Usage and SDK Samples

    curl -X POST\
    -H "Accept: application/json"\
    -H "Content-Type: application/json"\
    "https://api.inverted.ai/v0/aws/m1/drive"

    import io.swagger.client.*;
    import io.swagger.client.auth.*;
    import io.swagger.client.model.*;
    import io.swagger.client.api.DefaultApi;

    import java.io.File;
    import java.util.*;

    public class DefaultApiExample {

        public static void main(String[] args) {

            DefaultApi apiInstance = new DefaultApi();
            DrivePayload body = ; // DrivePayload |
            String apiKey = apiKey_example; // String |
            try {
                DriveResponse result = apiInstance.driveDrivePost(body, apiKey);
                System.out.println(result);
            } catch (ApiException e) {
                System.err.println("Exception when calling DefaultApi#driveDrivePost");
                e.printStackTrace();
            }
        }
    }

    import io.swagger.client.api.DefaultApi;

    public class DefaultApiExample {

        public static void main(String[] args) {
            DefaultApi apiInstance = new DefaultApi();
            DrivePayload body = ; // DrivePayload |
            String apiKey = apiKey_example; // String |
            try {
                DriveResponse result = apiInstance.driveDrivePost(body, apiKey);
                System.out.println(result);
            } catch (ApiException e) {
                System.err.println("Exception when calling DefaultApi#driveDrivePost");
                e.printStackTrace();
            }
        }
    }

    DrivePayload *body = ; //
    String *apiKey = apiKey_example; //  (optional)

    DefaultApi *apiInstance = [[DefaultApi alloc] init];

    // Drive
    [apiInstance driveDrivePostWith:body
        apiKey:apiKey
                  completionHandler: ^(DriveResponse output, NSError* error) {
                                if (output) {
                                    NSLog(@"%@", output);
                                }
                                if (error) {
                                    NSLog(@"Error: %@", error);
                                }
                            }];

    var InvertedAi = require('inverted_ai');

    var api = new InvertedAi.DefaultApi()
    var body = ; // {{DrivePayload}}
    var opts = {
      'apiKey': apiKey_example // {{String}}
    };
    var callback = function(error, data, response) {
      if (error) {
        console.error(error);
      } else {
        console.log('API called successfully. Returned data: ' + data);
      }
    };
    api.driveDrivePost(body, opts, callback);

    using System;
    using System.Diagnostics;
    using IO.Swagger.Api;
    using IO.Swagger.Client;
    using IO.Swagger.Model;

    namespace Example
    {
        public class driveDrivePostExample
        {
            public void main()
            {

                var apiInstance = new DefaultApi();
                var body = new DrivePayload(); // DrivePayload |
                var apiKey = apiKey_example;  // String |  (optional)

                try
                {
                    // Drive
                    DriveResponse result = apiInstance.driveDrivePost(body, apiKey);
                    Debug.WriteLine(result);
                }
                catch (Exception e)
                {
                    Debug.Print("Exception when calling DefaultApi.driveDrivePost: " + e.Message );
                }
            }
        }
    }

    <?php
    require_once(__DIR__ . '/vendor/autoload.php');

    $api_instance = new Swagger\Client\ApiDefaultApi();
    $body = ; // DrivePayload |
    $apiKey = apiKey_example; // String |

    try {
        $result = $api_instance->driveDrivePost($body, $apiKey);
        print_r($result);
    } catch (Exception $e) {
        echo 'Exception when calling DefaultApi->driveDrivePost: ', $e->getMessage(), PHP_EOL;
    }
    ?>

    use Data::Dumper;
    use WWW::SwaggerClient::Configuration;
    use WWW::SwaggerClient::DefaultApi;

    my $api_instance = WWW::SwaggerClient::DefaultApi->new();
    my $body = WWW::SwaggerClient::Object::DrivePayload->new(); # DrivePayload |
    my $apiKey = apiKey_example; # String |

    eval {
        my $result = $api_instance->driveDrivePost(body => $body, apiKey => $apiKey);
        print Dumper($result);
    };
    if ($@) {
        warn "Exception when calling DefaultApi->driveDrivePost: $@\n";
    }

    from __future__ import print_statement
    import time
    import swagger_client
    from swagger_client.rest import ApiException
    from pprint import pprint

    # create an instance of the API class
    api_instance = swagger_client.DefaultApi()
    body =  # DrivePayload |
    apiKey = apiKey_example # String |  (optional)

    try:
        # Drive
        api_response = api_instance.drive_drive_post(body, apiKey=apiKey)
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling DefaultApi->driveDrivePost: %s\n" % e)

## Parameters

Header parameters

Name | Description
--- | ---
api-key | String

Body parameters

Name | Description
--- | ---
body * |

## Responses

### Status: 200 - Successful Response

### Status: 422 - Validation Error

# getLocationInfoLocationInfoGet

Get Location Info

    /location_info

### Usage and SDK Samples

    curl -X GET\
    -H "Accept: application/json"\
    "https://api.inverted.ai/v0/aws/m1/location_info?location=&include_map_source="

    import io.swagger.client.*;
    import io.swagger.client.auth.*;
    import io.swagger.client.model.*;
    import io.swagger.client.api.DefaultApi;

    import java.io.File;
    import java.util.*;

    public class DefaultApiExample {

        public static void main(String[] args) {

            DefaultApi apiInstance = new DefaultApi();
            String location = location_example; // String |
            Boolean includeMapSource = true; // Boolean |
            String apiKey = apiKey_example; // String |
            try {
                LocationResponse result = apiInstance.getLocationInfoLocationInfoGet(location, includeMapSource, apiKey);
                System.out.println(result);
            } catch (ApiException e) {
                System.err.println("Exception when calling DefaultApi#getLocationInfoLocationInfoGet");
                e.printStackTrace();
            }
        }
    }

    import io.swagger.client.api.DefaultApi;

    public class DefaultApiExample {

        public static void main(String[] args) {
            DefaultApi apiInstance = new DefaultApi();
            String location = location_example; // String |
            Boolean includeMapSource = true; // Boolean |
            String apiKey = apiKey_example; // String |
            try {
                LocationResponse result = apiInstance.getLocationInfoLocationInfoGet(location, includeMapSource, apiKey);
                System.out.println(result);
            } catch (ApiException e) {
                System.err.println("Exception when calling DefaultApi#getLocationInfoLocationInfoGet");
                e.printStackTrace();
            }
        }
    }

    String *location = location_example; //
    Boolean *includeMapSource = true; //  (optional) (default to true)
    String *apiKey = apiKey_example; //  (optional)

    DefaultApi *apiInstance = [[DefaultApi alloc] init];

    // Get Location Info
    [apiInstance getLocationInfoLocationInfoGetWith:location
        includeMapSource:includeMapSource
        apiKey:apiKey
                  completionHandler: ^(LocationResponse output, NSError* error) {
                                if (output) {
                                    NSLog(@"%@", output);
                                }
                                if (error) {
                                    NSLog(@"Error: %@", error);
                                }
                            }];

    var InvertedAi = require('inverted_ai');

    var api = new InvertedAi.DefaultApi()
    var location = location_example; // {{String}}
    var opts = {
      'includeMapSource': true, // {{Boolean}}
      'apiKey': apiKey_example // {{String}}
    };
    var callback = function(error, data, response) {
      if (error) {
        console.error(error);
      } else {
        console.log('API called successfully. Returned data: ' + data);
      }
    };
    api.getLocationInfoLocationInfoGet(location, opts, callback);

    using System;
    using System.Diagnostics;
    using IO.Swagger.Api;
    using IO.Swagger.Client;
    using IO.Swagger.Model;

    namespace Example
    {
        public class getLocationInfoLocationInfoGetExample
        {
            public void main()
            {

                var apiInstance = new DefaultApi();
                var location = location_example;  // String |
                var includeMapSource = true;  // Boolean |  (optional)  (default to true)
                var apiKey = apiKey_example;  // String |  (optional)

                try
                {
                    // Get Location Info
                    LocationResponse result = apiInstance.getLocationInfoLocationInfoGet(location, includeMapSource, apiKey);
                    Debug.WriteLine(result);
                }
                catch (Exception e)
                {
                    Debug.Print("Exception when calling DefaultApi.getLocationInfoLocationInfoGet: " + e.Message );
                }
            }
        }
    }

    <?php
    require_once(__DIR__ . '/vendor/autoload.php');

    $api_instance = new Swagger\Client\ApiDefaultApi();
    $location = location_example; // String |
    $includeMapSource = true; // Boolean |
    $apiKey = apiKey_example; // String |

    try {
        $result = $api_instance->getLocationInfoLocationInfoGet($location, $includeMapSource, $apiKey);
        print_r($result);
    } catch (Exception $e) {
        echo 'Exception when calling DefaultApi->getLocationInfoLocationInfoGet: ', $e->getMessage(), PHP_EOL;
    }
    ?>

    use Data::Dumper;
    use WWW::SwaggerClient::Configuration;
    use WWW::SwaggerClient::DefaultApi;

    my $api_instance = WWW::SwaggerClient::DefaultApi->new();
    my $location = location_example; # String |
    my $includeMapSource = true; # Boolean |
    my $apiKey = apiKey_example; # String |

    eval {
        my $result = $api_instance->getLocationInfoLocationInfoGet(location => $location, includeMapSource => $includeMapSource, apiKey => $apiKey);
        print Dumper($result);
    };
    if ($@) {
        warn "Exception when calling DefaultApi->getLocationInfoLocationInfoGet: $@\n";
    }

    from __future__ import print_statement
    import time
    import swagger_client
    from swagger_client.rest import ApiException
    from pprint import pprint

    # create an instance of the API class
    api_instance = swagger_client.DefaultApi()
    location = location_example # String |
    includeMapSource = true # Boolean |  (optional) (default to true)
    apiKey = apiKey_example # String |  (optional)

    try:
        # Get Location Info
        api_response = api_instance.get_location_info_location_info_get(location, includeMapSource=includeMapSource, apiKey=apiKey)
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling DefaultApi->getLocationInfoLocationInfoGet: %s\n" % e)

## Parameters

Header parameters

Name | Description
--- | ---
api-key | String

Query parameters

Name | Description
--- | ---
location* | String Required
include_map_source | Boolean

## Responses

### Status: 200 - Successful Response

### Status: 422 - Validation Error

# initializeInitializePost

Initialize

    /initialize

### Usage and SDK Samples

    curl -X POST\
    -H "Accept: application/json"\
    -H "Content-Type: application/json"\
    "https://api.inverted.ai/v0/aws/m1/initialize?num_agents_to_spawn="

    import io.swagger.client.*;
    import io.swagger.client.auth.*;
    import io.swagger.client.model.*;
    import io.swagger.client.api.DefaultApi;

    import java.io.File;
    import java.util.*;

    public class DefaultApiExample {

        public static void main(String[] args) {

            DefaultApi apiInstance = new DefaultApi();
            InitializePayload body = ; // InitializePayload |
            String apiKey = apiKey_example; // String |
            Integer numAgentsToSpawn = 56; // Integer |
            try {
                InitializeResponse result = apiInstance.initializeInitializePost(body, apiKey, numAgentsToSpawn);
                System.out.println(result);
            } catch (ApiException e) {
                System.err.println("Exception when calling DefaultApi#initializeInitializePost");
                e.printStackTrace();
            }
        }
    }

    import io.swagger.client.api.DefaultApi;

    public class DefaultApiExample {

        public static void main(String[] args) {
            DefaultApi apiInstance = new DefaultApi();
            InitializePayload body = ; // InitializePayload |
            String apiKey = apiKey_example; // String |
            Integer numAgentsToSpawn = 56; // Integer |
            try {
                InitializeResponse result = apiInstance.initializeInitializePost(body, apiKey, numAgentsToSpawn);
                System.out.println(result);
            } catch (ApiException e) {
                System.err.println("Exception when calling DefaultApi#initializeInitializePost");
                e.printStackTrace();
            }
        }
    }

    InitializePayload *body = ; //
    String *apiKey = apiKey_example; //  (optional)
    Integer *numAgentsToSpawn = 56; //  (optional) (default to 10)

    DefaultApi *apiInstance = [[DefaultApi alloc] init];

    // Initialize
    [apiInstance initializeInitializePostWith:body
        apiKey:apiKey
        numAgentsToSpawn:numAgentsToSpawn
                  completionHandler: ^(InitializeResponse output, NSError* error) {
                                if (output) {
                                    NSLog(@"%@", output);
                                }
                                if (error) {
                                    NSLog(@"Error: %@", error);
                                }
                            }];

    var InvertedAi = require('inverted_ai');

    var api = new InvertedAi.DefaultApi()
    var body = ; // {{InitializePayload}}
    var opts = {
      'apiKey': apiKey_example // {{String}}
      'numAgentsToSpawn': 56 // {{Integer}}
    };
    var callback = function(error, data, response) {
      if (error) {
        console.error(error);
      } else {
        console.log('API called successfully. Returned data: ' + data);
      }
    };
    api.initializeInitializePost(body, opts, callback);

    using System;
    using System.Diagnostics;
    using IO.Swagger.Api;
    using IO.Swagger.Client;
    using IO.Swagger.Model;

    namespace Example
    {
        public class initializeInitializePostExample
        {
            public void main()
            {

                var apiInstance = new DefaultApi();
                var body = new InitializePayload(); // InitializePayload |
                var apiKey = apiKey_example;  // String |  (optional)
                var numAgentsToSpawn = 56;  // Integer |  (optional)  (default to 10)

                try
                {
                    // Initialize
                    InitializeResponse result = apiInstance.initializeInitializePost(body, apiKey, numAgentsToSpawn);
                    Debug.WriteLine(result);
                }
                catch (Exception e)
                {
                    Debug.Print("Exception when calling DefaultApi.initializeInitializePost: " + e.Message );
                }
            }
        }
    }

    <?php
    require_once(__DIR__ . '/vendor/autoload.php');

    $api_instance = new Swagger\Client\ApiDefaultApi();
    $body = ; // InitializePayload |
    $apiKey = apiKey_example; // String |
    $numAgentsToSpawn = 56; // Integer |

    try {
        $result = $api_instance->initializeInitializePost($body, $apiKey, $numAgentsToSpawn);
        print_r($result);
    } catch (Exception $e) {
        echo 'Exception when calling DefaultApi->initializeInitializePost: ', $e->getMessage(), PHP_EOL;
    }
    ?>

    use Data::Dumper;
    use WWW::SwaggerClient::Configuration;
    use WWW::SwaggerClient::DefaultApi;

    my $api_instance = WWW::SwaggerClient::DefaultApi->new();
    my $body = WWW::SwaggerClient::Object::InitializePayload->new(); # InitializePayload |
    my $apiKey = apiKey_example; # String |
    my $numAgentsToSpawn = 56; # Integer |

    eval {
        my $result = $api_instance->initializeInitializePost(body => $body, apiKey => $apiKey, numAgentsToSpawn => $numAgentsToSpawn);
        print Dumper($result);
    };
    if ($@) {
        warn "Exception when calling DefaultApi->initializeInitializePost: $@\n";
    }

    from __future__ import print_statement
    import time
    import swagger_client
    from swagger_client.rest import ApiException
    from pprint import pprint

    # create an instance of the API class
    api_instance = swagger_client.DefaultApi()
    body =  # InitializePayload |
    apiKey = apiKey_example # String |  (optional)
    numAgentsToSpawn = 56 # Integer |  (optional) (default to 10)

    try:
        # Initialize
        api_response = api_instance.initialize_initialize_post(body, apiKey=apiKey, numAgentsToSpawn=numAgentsToSpawn)
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling DefaultApi->initializeInitializePost: %s\n" % e)

## Parameters

Header parameters

Name | Description
--- | ---
api-key | String

Body parameters

Name | Description
--- | ---
body * |

Query parameters

Name | Description
--- | ---
num_agents_to_spawn | Integer

## Responses

### Status: 200 - Successful Response

### Status: 422 - Validation Error