Chat With Maps

Chat With Maps · GPT-Aktionen

ChatWithMaps

  • POST /maps/nearby-searchBy inputting current location, get a curated list of places within a specified area.

    By inputting current location, get a curated list of places within a specified area.

  • POST /maps/text-searchSearch for places based on a string.
  • POST /maps/find-placeGet information about the place.
  • POST /maps/geocodingGeocode the adress. Get latitude and longitude of the place.
  • POST /maps/reverse-geocodingReverse geocode latitude and longitude. Get address of the place.

    Get address of the place.

  • POST /maps/build-routeBuild a route from point A to point B.

    Build a route from point A to point B.

Ursprüngliches API-Schema
{
  "openapi": "3.0.1",
  "info": {
    "title": "ChatWithMaps",
    "version": "v1"
  },
  "servers": [
    {
      "url": "https://api.copilot.us/run/654d23dc80b7a5ccae50e700/65786cb0956caf0360799198"
    }
  ],
  "paths": {
    "/maps/nearby-search": {
      "post": {
        "summary": "By inputting current location, get a curated list of places within a specified area.",
        "description": "By inputting current location, get a curated list of places within a specified area.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NearbySearchRequestBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "namesOfPlaces": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Names of places."
                    },
                    "ResponseInstructions": {
                      "type": "string",
                      "description": "Instructions."
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "operationId": "NearbySearch"
      }
    },
    "/maps/text-search": {
      "post": {
        "summary": "Search for places based on a string.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TextSearchRequestBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Information about the place.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "namesOfPlaces": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Names of places."
                    },
                    "ResponseInstructions": {
                      "type": "string",
                      "description": "Instructions."
                    }
                  }
                }
              }
            }
          }
        },
        "operationId": "TextSearch"
      }
    },
    "/maps/find-place": {
      "post": {
        "summary": "Get information about the place.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PlaceRequestBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Information about the place.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlaceInfoResponseBody"
                }
              }
            }
          }
        },
        "operationId": "FindPlace"
      }
    },
    "/maps/geocoding": {
      "post": {
        "summary": "Geocode the adress. Get latitude and longitude of the place.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GeocodeRequestBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Latitude and longitude of the place.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LatLngResponseBody"
                }
              }
            }
          }
        },
        "operationId": "Geocode"
      }
    },
    "/maps/reverse-geocoding": {
      "post": {
        "summary": "Reverse geocode latitude and longitude. Get address of the place.",
        "description": "Get address of the place.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LatLngRequestBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Information about the place.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AddressResponseBody"
                }
              }
            }
          }
        },
        "operationId": "ReverseGeocode"
      }
    },
    "/maps/build-route": {
      "post": {
        "summary": "Build a route from point A to point B.",
        "description": "Build a route from point A to point B.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RouteRequestBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Link to the route.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RouteResponse"
                }
              }
            }
          }
        },
        "operationId": "BuildRoute"
      }
    }
  },
  "components": {
    "schemas": {
      "NearbySearchRequestBody": {
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "description": "Address for nearby search.",
            "required": true
          },
          "radius": {
            "type": "int",
            "description": "Radius in meters.",
            "required": true
          },
          "type": {
            "type": "string",
            "description": "The type which restricts the results to places matching the specified type.",
            "required": true
          }
        }
      },
      "TextSearchRequestBody": {
        "type": "object",
        "properties": {
          "search": {
            "type": "string",
            "description": "The text string on which to search.",
            "required": true
          }
        }
      },
      "PlaceRequestBody": {
        "type": "object",
        "properties": {
          "place": {
            "type": "string",
            "description": "Place.",
            "required": true
          }
        }
      },
      "GeocodeRequestBody": {
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "description": "Address of th place.",
            "required": true
          }
        }
      },
      "PlaceInfoResponseBody": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of place."
          },
          "aboutPlace": {
            "type": "string",
            "description": "Summary about place."
          },
          "formatted_address": {
            "type": "string",
            "description": "Formatted address of place."
          },
          "website": {
            "type": "string",
            "description": "Website of place."
          },
          "international_phone_number": {
            "type": "string",
            "description": "International phone number of place."
          },
          "rating": {
            "type": "string",
            "description": "Rating of place."
          },
          "schedule": {
            "type": "string",
            "description": "Schedule of place."
          },
          "reviewsSummary": {
            "type": "string",
            "description": "Reviews summary of place."
          },
          "responseInstructions": {
            "type": "string",
            "description": "Instructions.",
            "required": true
          }
        }
      },
      "LatLngResponseBody": {
        "type": "object",
        "properties": {
          "lat": {
            "type": "double",
            "description": "Latitude of place."
          },
          "lng": {
            "type": "double",
            "description": "Longitude of place."
          },
          "responseInstructions": {
            "type": "string",
            "description": "Instructions.",
            "required": true
          }
        }
      },
      "LatLngRequestBody": {
        "type": "object",
        "properties": {
          "lat": {
            "type": "string",
            "description": "Latitude of place."
          },
          "lng": {
            "type": "string",
            "description": "Longitude of place."
          }
        }
      },
      "AddressResponseBody": {
        "type": "object",
        "properties": {
          "formatted_address": {
            "type": "string",
            "description": "Address of place."
          },
          "responseInstructions": {
            "type": "string",
            "description": "Instructions.",
            "required": true
          }
        }
      },
      "RouteRequestBody": {
        "type": "object",
        "properties": {
          "beginningOfRoute": {
            "type": "string",
            "description": "The beginning of the route."
          },
          "endOfRoute": {
            "type": "string",
            "description": "The end of the route."
          }
        }
      },
      "RouteResponse": {
        "type": "object",
        "properties": {
          "routeLink": {
            "type": "string",
            "description": "Link to the route."
          },
          "responseInstructions": {
            "type": "string",
            "description": "Instructions.",
            "required": true
          }
        }
      }
    }
  }
}