{
  "service": "apiverve",
  "displayName": "APIVerve",
  "categories": [
    "Developer Tools",
    "Data"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "APIVERVE_API_KEY",
      "description": "APIVerve API key passed in the X-API-Key request header. Create a free account at https://dashboard.apiverve.com/signup, then find the key in the API Keys section of https://dashboard.apiverve.com.",
      "extraFields": []
    }
  ],
  "homepageUrl": "https://apiverve.com/",
  "actions": [
    {
      "id": "apiverve.calculate_age",
      "service": "apiverve",
      "name": "calculate_age",
      "description": "Calculate age details from a date of birth using APIVerve Age Calculator.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "dob": {
            "type": "string",
            "description": "The date of birth to calculate from in YYYY-MM-DD format.",
            "format": "date"
          }
        },
        "additionalProperties": false,
        "description": "The input payload for calculating age with APIVerve."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "dob": {
            "type": "string",
            "description": "The date of birth returned by APIVerve."
          },
          "ageBreakdown": {
            "type": "object",
            "properties": {
              "years": {
                "type": "number",
                "description": "The number of years returned by APIVerve."
              },
              "months": {
                "type": "number",
                "description": "The number of months returned by APIVerve."
              },
              "weeks": {
                "type": "number",
                "description": "The number of weeks returned by APIVerve."
              },
              "days": {
                "type": "number",
                "description": "The number of days returned by APIVerve."
              },
              "hours": {
                "type": "number",
                "description": "The number of hours returned by APIVerve."
              },
              "minutes": {
                "type": "number",
                "description": "The number of minutes returned by APIVerve."
              },
              "seconds": {
                "type": "number",
                "description": "The number of seconds returned by APIVerve."
              }
            },
            "additionalProperties": false,
            "description": "Numeric age duration fields returned by APIVerve."
          },
          "ageWords": {
            "type": "object",
            "properties": {
              "years": {
                "type": "string",
                "description": "The age in words returned by APIVerve."
              },
              "ordinal": {
                "type": "string",
                "description": "The ordinal age in words returned by APIVerve."
              },
              "full": {
                "type": "string",
                "description": "The full age phrase returned by APIVerve."
              },
              "locale": {
                "type": "string",
                "description": "The locale used by APIVerve for age words."
              }
            },
            "additionalProperties": false,
            "description": "Age wording returned by APIVerve."
          },
          "timezone": {
            "type": "string",
            "description": "The timezone used by APIVerve."
          },
          "locale": {
            "type": "string",
            "description": "The locale used by APIVerve."
          },
          "nextBirthday": {
            "type": "object",
            "properties": {
              "months": {
                "type": "number",
                "description": "The number of months until the next birthday."
              },
              "weeks": {
                "type": "number",
                "description": "The number of weeks until the next birthday."
              },
              "days": {
                "type": "number",
                "description": "The number of days until the next birthday."
              },
              "hours": {
                "type": "number",
                "description": "The number of hours until the next birthday."
              },
              "minutes": {
                "type": "number",
                "description": "The number of minutes until the next birthday."
              },
              "seconds": {
                "type": "number",
                "description": "The number of seconds until the next birthday."
              }
            },
            "additionalProperties": false,
            "description": "The time remaining until the next birthday returned by APIVerve."
          },
          "insights": {
            "type": "object",
            "properties": {
              "generation": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The generation returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "zodiacSign": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The zodiac sign returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "chineseZodiac": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The Chinese zodiac sign returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "birthstone": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The birthstone returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "dayOfWeekBorn": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The day of week born returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "isLeapYearBirth": {
                "anyOf": [
                  {
                    "type": "boolean",
                    "description": "Whether the birth year is a leap year according to APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "milestones": {
                "type": "object",
                "properties": {
                  "canVoteUS": {
                    "anyOf": [
                      {
                        "type": "boolean",
                        "description": "Whether the age can vote in the US."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "canDrinkUS": {
                    "anyOf": [
                      {
                        "type": "boolean",
                        "description": "Whether the age can drink in the US."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "canRentCarUS": {
                    "anyOf": [
                      {
                        "type": "boolean",
                        "description": "Whether the age can rent a car in the US."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "seniorDiscount": {
                    "anyOf": [
                      {
                        "type": "boolean",
                        "description": "Whether the age qualifies for senior discounts."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false,
                "description": "Age milestone flags returned by APIVerve."
              }
            },
            "additionalProperties": false,
            "description": "Age insight fields returned by APIVerve."
          }
        },
        "additionalProperties": false,
        "description": "The response returned by APIVerve Age Calculator."
      }
    },
    {
      "id": "apiverve.convert_currency",
      "service": "apiverve",
      "name": "convert_currency",
      "description": "Convert an amount between currencies using APIVerve Currency Converter.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "value": {
            "type": "number",
            "minimum": 0,
            "description": "The amount to convert."
          },
          "from": {
            "type": "string",
            "pattern": "^[A-Za-z]{3}$",
            "description": "The ISO 4217 currency code used by APIVerve."
          },
          "to": {
            "type": "string",
            "pattern": "^[A-Za-z]{3}$",
            "description": "The ISO 4217 currency code used by APIVerve."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for converting currency with APIVerve."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "from": {
            "type": "string",
            "description": "The source currency code returned by APIVerve."
          },
          "to": {
            "type": "string",
            "description": "The destination currency code returned by APIVerve."
          },
          "value": {
            "type": "number",
            "description": "The source amount returned by APIVerve."
          },
          "convertedValue": {
            "type": "number",
            "description": "The converted amount returned by APIVerve."
          },
          "rate": {
            "type": "number",
            "description": "The exchange rate returned by APIVerve."
          },
          "change24h": {
            "anyOf": [
              {
                "type": "number",
                "description": "The 24-hour rate change returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "change24hPct": {
            "anyOf": [
              {
                "type": "number",
                "description": "The 24-hour percentage rate change returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "changeDirection": {
            "anyOf": [
              {
                "type": "string",
                "description": "The 24-hour change direction returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "high24h": {
            "anyOf": [
              {
                "type": "number",
                "description": "The 24-hour high rate returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "low24h": {
            "anyOf": [
              {
                "type": "number",
                "description": "The 24-hour low rate returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "The response returned by APIVerve Currency Converter."
      }
    },
    {
      "id": "apiverve.find_antonyms",
      "service": "apiverve",
      "name": "find_antonyms",
      "description": "Find antonyms for a word using APIVerve Antonym Finder.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "word": {
            "type": "string",
            "minLength": 1,
            "description": "The word to look up in the APIVerve endpoint."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for finding APIVerve antonyms."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "word": {
            "type": "string",
            "description": "The queried word returned by APIVerve."
          },
          "language": {
            "anyOf": [
              {
                "type": "string",
                "description": "The language code returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "antonyms": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "One antonym returned by APIVerve."
            },
            "description": "The antonyms returned by APIVerve."
          }
        },
        "additionalProperties": false,
        "description": "The response returned by APIVerve Antonym Finder."
      }
    },
    {
      "id": "apiverve.generate_advice",
      "service": "apiverve",
      "name": "generate_advice",
      "description": "Generate a random piece of advice using APIVerve Advice Generator.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "The input payload for generating APIVerve advice."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The APIVerve advice identifier."
          },
          "advice": {
            "type": "string",
            "description": "The advice text returned by APIVerve."
          },
          "lang": {
            "type": "string",
            "description": "The language code of the advice."
          }
        },
        "additionalProperties": false,
        "description": "The response returned by APIVerve Advice Generator."
      }
    },
    {
      "id": "apiverve.get_air_quality",
      "service": "apiverve",
      "name": "get_air_quality",
      "description": "Get current air quality by city or ZIP code using APIVerve Air Quality.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "city": {
            "type": "string",
            "minLength": 1,
            "description": "The city name for which you want to get air quality data."
          },
          "zip": {
            "type": "string",
            "minLength": 1,
            "description": "The ZIP code for which you want to get air quality data."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for getting APIVerve air quality data.",
        "oneOf": [
          {
            "required": [
              "city"
            ]
          },
          {
            "required": [
              "zip"
            ]
          }
        ]
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "pm25": {
            "type": "number",
            "description": "PM2.5 value returned by APIVerve."
          },
          "pm10": {
            "type": "number",
            "description": "PM10 value returned by APIVerve."
          },
          "carbonMonoxide": {
            "type": "number",
            "description": "Carbon monoxide value returned by APIVerve."
          },
          "ozone": {
            "type": "number",
            "description": "Ozone value returned by APIVerve."
          },
          "nitrogenDioxide": {
            "type": "number",
            "description": "Nitrogen dioxide value returned by APIVerve."
          },
          "sulfurDioxide": {
            "type": "number",
            "description": "Sulfur dioxide value returned by APIVerve."
          },
          "usEpaIndex": {
            "type": "number",
            "description": "US EPA air quality index returned by APIVerve."
          },
          "gbDefraIndex": {
            "type": "number",
            "description": "GB DEFRA air quality index returned by APIVerve."
          },
          "recommendation": {
            "type": "string",
            "description": "Health recommendation returned by APIVerve."
          },
          "city": {
            "anyOf": [
              {
                "type": "string",
                "description": "City name returned by APIVerve when present."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "The response returned by APIVerve Air Quality."
      }
    },
    {
      "id": "apiverve.get_airport_distance",
      "service": "apiverve",
      "name": "get_airport_distance",
      "description": "Get distance and flight estimates between two airports using IATA codes.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "iata1": {
            "type": "string",
            "pattern": "^[A-Za-z]{3}$",
            "description": "The IATA code used by APIVerve."
          },
          "iata2": {
            "type": "string",
            "pattern": "^[A-Za-z]{3}$",
            "description": "The IATA code used by APIVerve."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for getting APIVerve airport distance by IATA codes."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "distanceMiles": {
            "type": "number",
            "description": "Distance in miles returned by APIVerve."
          },
          "distanceKm": {
            "type": "number",
            "description": "Distance in kilometers returned by APIVerve."
          },
          "distanceNauticalMiles": {
            "type": "number",
            "description": "Distance in nautical miles returned by APIVerve."
          },
          "estimatedFlightTime": {
            "type": "string",
            "description": "Estimated flight time returned by APIVerve."
          },
          "timezoneDiffHours": {
            "anyOf": [
              {
                "type": "number",
                "description": "Timezone difference in hours returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "bearing": {
            "anyOf": [
              {
                "type": "number",
                "description": "Bearing in degrees returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "direction": {
            "anyOf": [
              {
                "type": "string",
                "description": "Compass direction returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "isInternational": {
            "anyOf": [
              {
                "type": "boolean",
                "description": "Whether APIVerve marks the route as international."
              },
              {
                "type": "null"
              }
            ]
          },
          "carbonEstimateKg": {
            "anyOf": [
              {
                "type": "number",
                "description": "Estimated carbon emissions in kilograms returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "airport1": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "Airport name returned by APIVerve."
              },
              "iata": {
                "type": "string",
                "description": "Airport IATA code returned by APIVerve."
              },
              "icao": {
                "type": "string",
                "description": "Airport ICAO code returned by APIVerve."
              },
              "city": {
                "type": "string",
                "description": "Airport city returned by APIVerve."
              },
              "state": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "Airport state or region returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "country": {
                "type": "string",
                "description": "Airport country code returned by APIVerve."
              },
              "elevation": {
                "anyOf": [
                  {
                    "type": "number",
                    "description": "Airport elevation returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "latitude": {
                "type": "number",
                "description": "Airport latitude returned by APIVerve."
              },
              "longitude": {
                "type": "number",
                "description": "Airport longitude returned by APIVerve."
              },
              "timezone": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "Airport timezone returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "additionalProperties": false,
            "description": "Airport details returned by the APIVerve airport distance endpoint."
          },
          "airport2": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "Airport name returned by APIVerve."
              },
              "iata": {
                "type": "string",
                "description": "Airport IATA code returned by APIVerve."
              },
              "icao": {
                "type": "string",
                "description": "Airport ICAO code returned by APIVerve."
              },
              "city": {
                "type": "string",
                "description": "Airport city returned by APIVerve."
              },
              "state": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "Airport state or region returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "country": {
                "type": "string",
                "description": "Airport country code returned by APIVerve."
              },
              "elevation": {
                "anyOf": [
                  {
                    "type": "number",
                    "description": "Airport elevation returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "latitude": {
                "type": "number",
                "description": "Airport latitude returned by APIVerve."
              },
              "longitude": {
                "type": "number",
                "description": "Airport longitude returned by APIVerve."
              },
              "timezone": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "Airport timezone returned by APIVerve."
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "additionalProperties": false,
            "description": "Airport details returned by the APIVerve airport distance endpoint."
          }
        },
        "additionalProperties": false,
        "description": "The response returned by APIVerve Airport Distance."
      }
    },
    {
      "id": "apiverve.get_word_definition",
      "service": "apiverve",
      "name": "get_word_definition",
      "description": "Get definitions for a word using APIVerve Dictionary.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "word": {
            "type": "string",
            "minLength": 1,
            "description": "The word to look up in the APIVerve endpoint."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for getting APIVerve word definitions."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "word": {
            "type": "string",
            "description": "The word that was defined."
          },
          "definitionCount": {
            "type": "integer",
            "description": "The number of definitions returned."
          },
          "definitions": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "One definition for the word."
            },
            "description": "The definitions returned by APIVerve."
          }
        },
        "additionalProperties": false,
        "description": "The response returned by APIVerve Dictionary."
      }
    },
    {
      "id": "apiverve.lookup_airlines",
      "service": "apiverve",
      "name": "lookup_airlines",
      "description": "Look up airlines by name or IATA code using APIVerve Airline Lookup.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The airline name to search for."
          },
          "iata": {
            "type": "string",
            "pattern": "^[A-Za-z]{2}$",
            "description": "The airline IATA code used by APIVerve."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for looking up APIVerve airlines.",
        "oneOf": [
          {
            "required": [
              "name"
            ]
          },
          {
            "required": [
              "iata"
            ]
          }
        ]
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "airlines": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Airline name returned by APIVerve."
                },
                "alias": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "Airline alias returned by APIVerve when present."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "iata": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "Airline IATA code returned by APIVerve."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "icao": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "Airline ICAO code returned by APIVerve."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "callsign": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "Airline callsign returned by APIVerve."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "country": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "Airline country returned by APIVerve."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "Airline identifier returned by APIVerve."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "isLowCost": {
                  "anyOf": [
                    {
                      "type": "boolean",
                      "description": "Whether APIVerve marks the airline as low cost."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "logoUrl": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "Airline logo URL returned by APIVerve when present."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "raw": {
                  "type": "object",
                  "additionalProperties": {
                    "description": "Raw airline field value."
                  },
                  "description": "The raw airline object returned by APIVerve."
                }
              },
              "additionalProperties": false,
              "description": "Normalized airline information returned by APIVerve."
            },
            "description": "The airlines returned by APIVerve."
          }
        },
        "additionalProperties": false,
        "description": "The response returned by APIVerve Airline Lookup."
      }
    },
    {
      "id": "apiverve.lookup_airport",
      "service": "apiverve",
      "name": "lookup_airport",
      "description": "Look up airport information by IATA code using APIVerve Airports Lookup.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "iata": {
            "type": "string",
            "pattern": "^[A-Za-z]{3}$",
            "description": "The IATA code used by APIVerve."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for looking up an APIVerve airport by IATA code."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "icao": {
            "type": "string",
            "description": "Airport ICAO code returned by APIVerve."
          },
          "iata": {
            "type": "string",
            "description": "Airport IATA code returned by APIVerve."
          },
          "name": {
            "type": "string",
            "description": "Airport name returned by APIVerve."
          },
          "city": {
            "type": "string",
            "description": "Airport city returned by APIVerve."
          },
          "state": {
            "anyOf": [
              {
                "type": "string",
                "description": "Airport state or region returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "country": {
            "type": "string",
            "description": "Airport country code returned by APIVerve."
          },
          "elevation": {
            "anyOf": [
              {
                "type": "number",
                "description": "Airport elevation returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "latitude": {
            "type": "number",
            "description": "Airport latitude returned by APIVerve."
          },
          "longitude": {
            "type": "number",
            "description": "Airport longitude returned by APIVerve."
          },
          "timezone": {
            "anyOf": [
              {
                "type": "string",
                "description": "Airport timezone returned by APIVerve."
              },
              {
                "type": "null"
              }
            ]
          },
          "cityInfo": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "City name returned by APIVerve."
                  },
                  "altName": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "Alternative city name returned by APIVerve."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "country": {
                    "type": "string",
                    "description": "City country code returned by APIVerve."
                  }
                },
                "additionalProperties": false,
                "description": "City information returned by APIVerve for an airport."
              },
              {
                "type": "null"
              }
            ]
          },
          "raw": {
            "type": "object",
            "additionalProperties": {
              "description": "Raw airport field value."
            },
            "description": "The raw airport object returned by APIVerve."
          }
        },
        "additionalProperties": false,
        "description": "Normalized airport information returned by APIVerve."
      }
    }
  ]
}
