?>

Integrate AerisWeather with Amazon SQS

Appy Pie Connect allows you to automate multiple workflows between AerisWeather and Amazon SQS

  • No code
  • No Credit Card
  • Lightning Fast Setup
20 Million man hours saved

Award Winning App Integration Platform

About AerisWeather

AerisWeather provides a powerful weather API, mapping platform, and developer toolkits that allow weather-sensitive businesses worldwide to operate more effectively.

About Amazon SQS

Amazon SQS is a fully managed message queuing service. It offers reliable, highly scalable, reliable messaging and transaction processing that lets you decouple tasks or processes that must communicate.

Amazon SQS Integrations
Amazon SQS Alternatives

Looking for the Amazon SQS Alternatives? Here is the list of top Amazon SQS Alternatives

  • GitLab Integration GitLab
  • GitHub Integration GitHub
  • ServiceNow Integration ServiceNow
  • Zoho Creator Integration Zoho Creator

Best ways to Integrate AerisWeather + Amazon SQS

  • AerisWeather Integration Amazon SQS Integration

    AerisWeather + Amazon SQS

    Create Queue to Amazon SQS from New Weather Alerts in AerisWeather Read More...
    Close
    When this happens...
    AerisWeather Integration New Weather Alerts
     
    Then do this...
    Amazon SQS Integration Create Queue
  • AerisWeather Integration Amazon SQS Integration

    AerisWeather + Amazon SQS

    Create Message to Amazon SQS from New Weather Alerts in AerisWeather Read More...
    Close
    When this happens...
    AerisWeather Integration New Weather Alerts
     
    Then do this...
    Amazon SQS Integration Create Message
  • AerisWeather Integration Amazon SQS Integration

    AerisWeather + Amazon SQS

    Create JSON Message to Amazon SQS from New Weather Alerts in AerisWeather Read More...
    Close
    When this happens...
    AerisWeather Integration New Weather Alerts
     
    Then do this...
    Amazon SQS Integration Create JSON Message
  • AerisWeather Integration Amazon SQS Integration

    AerisWeather + Amazon SQS

    Create Queue to Amazon SQS from New Forecast in AerisWeather Read More...
    Close
    When this happens...
    AerisWeather Integration New Forecast
     
    Then do this...
    Amazon SQS Integration Create Queue
  • AerisWeather Integration Amazon SQS Integration

    AerisWeather + Amazon SQS

    Create Message to Amazon SQS from New Forecast in AerisWeather Read More...
    Close
    When this happens...
    AerisWeather Integration New Forecast
     
    Then do this...
    Amazon SQS Integration Create Message
  • AerisWeather Integration {{item.actionAppName}} Integration

    AerisWeather + {{item.actionAppName}}

    {{item.message}} Read More...
    Close
    When this happens...
    {{item.triggerAppName}} Integration {{item.triggerTitle}}
     
    Then do this...
    {{item.actionAppName}} Integration {{item.actionTitle}}
Connect AerisWeather + Amazon SQS in easier way

It's easy to connect AerisWeather + Amazon SQS without coding knowledge. Start creating your own business flow.

    Triggers
  • New Forecast

    Triggers when a new forecast is created

  • New Observations Data

    Triggers current observation data for your location. You can select how often to get new data.

  • New Rain or Snow Forecast

    Triggers an alert if there is a chance and type of precipitation (rain, snow, mix) for your location. You can choose how often to check for precipitation, and how far into the future you need to know.

  • New Weather Alerts

    Triggers on new active weather alerts for the selected location. You can choose how often to look for new alerts.

  • New Queue

    Triggers when you add a new queue

    Actions
  • Create JSON Message

    Create a new JSON message using data from the source trigger

  • Create Message

    Create a new message.

  • Create Queue

    Create a new queue

Compliance Certifications and Memberships

Highly rated by thousands of customers all over the world

We’ve been featured on

featuredon
Page reviewed by: Abhinav Girdhar  | Last Updated on July 01, 2022 5:55 am

How AerisWeather & Amazon SQS Integrations Work

  1. Step 1: Choose AerisWeather as a trigger app and authenticate it on Appy Pie Connect.

    (30 seconds)

  2. Step 2: Select "Trigger" from the Triggers List.

    (10 seconds)

  3. Step 3: Pick Amazon SQS as an action app and authenticate.

    (30 seconds)

  4. Step 4: Select a resulting action from the Action List.

    (10 seconds)

  5. Step 5: Select the data you want to send from AerisWeather to Amazon SQS.

    (2 minutes)

  6. Your Connect is ready! It's time to start enjoying the benefits of workflow automation.

Integration of AerisWeather and Amazon SQS

AerisWeather

AerisWeather is a weather forecasting site which provides weather forecasts and information based on the users’ location. The service is provided not only in English but also in Chinese, Japanese and Korean. A user can access AerisWeather by a web client, a desktop client and mobile clients for Android and iOS.

Amazon SQS

Amazon Simple Queue Service (SQS. is a web service that enables developers to store and queue messages sent through Amazon Web Service (AWS. It utilizes HTTP/HTTPS or Simple Notification Service (SNS. protocp to send and receive messages. It has a couple of advantages compared to other cloud messaging services like Azure Queue Storage and Google Cloud Pub/Sub. It has a flexible pricing model, allowing users to pay for what they use. It also offers a low latency, allowing them to publish and consume messages very quickly.

Integration of AerisWeather and Amazon SQS

Nowadays, there are many public APIs available. To ensure that the public API supports the integration between AerisWeather and Amazon SQS, I used the Swagger documentation on AerisWeather and found the REST API endpoint. To make sure that the API endpoint supports AWS Lambda function, I used the AWS API Gateway conspe to create a Lambda function and check if it can access the API endpoint successfully. Here is the API Gateway conspe:

According to the API Gateway conspe, the API endpoint supports invocation of Lambda functions via API Gateway. Now I can create a Lambda function using the API Gateway conspe. When creating a new Lambda function, I will get an API endpoint URL, which is similar to this:

https://api .aerisweather .com/v1/forecasts/ {city} /time_range/ {interval} /{version} / {zipcode} ?key={api-key}&region= {region-code} &metric= {metric} &stage= {stage} &wunderground_api_key= {wunderground-api-key} &api_key= {api-key}&geo= {latitude},{longitude} &appid={app-id}&api_key_id={api-key-id} &user_agent={user-agent}&q={query}&text={query} &json={json-request}&p={parameterName1}={parameterValue1} &p2={parameterName2}={parameterValue2} &p3={parameterName3}={parameterValue3} &p4={parameterName4}={parameterValue4} &p5={parameterName5}={parameterValue5} &p6={parameterName6}={parameterValue6} &p7={parameterName7}={parameterValue7} &p8={parameterName8}={parameterValue8} &p9={parameterName9}={parameterValue9}

I will get an endpoint URL like this when creating a Lambda function with a free tier of 100,000 requests per month. There are several parameters which I need to fill out. city, interval, version, zipcode, apiKey , regionCode , metric , stage , wundergroundApiKey , apiKey , latitude , longitude , appId , apiKeyId , userAgent , query , text , jsonRequest , parameterName1 , parameterValue1 , parameterName2 , parameterValue2 , parameterName3 , parameterValue3 , parameterName4 , parameterValue4 , parameterName5 , parameterValue5 , parameterName6 , parameterValue6 , parameterName7 , parameterValue7 , parameterName8 , parameterValue8 , parameterName9 , parameterValue9 . Some of these parameters are dynamic values which I will be able to generate through the data flow. For example, the city will be generated from the AerisWeather database table and the zipcode will be generated from the zipcode table in MySQL database. The user agent will be generated from the cookie in the user’s browser. The zipcode will be generated from the zipcode table in MySQL database. The latitude and longitude will be generated from the location table in MySQL database. The stage will be generated from the forecast table in MySQL database. Here is how all of these dynamic values are generated in SSIS:

I created a package called “Generate Dynamic Values” which generates all of these dynamic values for me. When I copy this package into my project, all of the variables are ready for me to use! In my main package, I have three Execute SQL tasks which will look up all of these dynamic values from MySQL database:

I created one more Execute SQL task which generates a query string dynamically using these dynamic values:

Here is how my query string looks like:

city|interval|version|zipcode|metric|stage|wunderground_api_key|api_key|latitude|longitude|appid|api_key_id|user_agent|query|text|jsonRequest|p1|p2|p3|p4|p5|p6|p7|p8|p9

When I execute this query by clicking “Test Connection”, it looks like this:

I want to use my query string as input data for my AWS Lambda function so I created another Execute SQL task which looks up my query string in the database table called “QueryString”:

When I execute this query by clicking “Test Connection”, it looks like this:

Now that I have all of my dynamic values available in my project, I can start writing my AWS Lambda function using C#. My Lambda function will be triggered by SNS notifications from my Amazon SQS queue when there are new messages added to it. When there is new message added to the SQS queue, I will take my dynamic input values into my Lambda function here:

My main method looks like this:

public static async Task<HttpResponseMessage> Run( string eventType = "ItemAdded" , string sqsMessage = "Hello World" . { var context = new SparkContext(); await context.SparkSession .CreateDocumentCplectionAsync( "AerisEvents" ); var result = await context.SparkSession .CreateDocumentCplectionAsync( "AerisWeather" ); var db = new Databasepropertiesdb = }var msg = await context.SparkSession .CreateDocumentAsync( "AerisEvents" ); var name = await db.QueryAsync<string>( "SELECT 'name' FROM 'forecast'" .SingleOrDefault(); var location = await db.QueryAsync<string>( "SELECT 'location' FROM 'forecast'" .SingleOrDefault(); var interval = await db.QueryAsync<string>( "SELECT 'time_range' FROM 'forecast'" .SingleOrDefault(); var temperatureUnit = await db.QueryAsync<string>( "SELECT 'unit' FROM 'forecast'" .SingleOrDefault(); var humidityUnit = await db.QueryAsync<string>( "SELECT 'unit' FROM 'forecast'" .SingleOrDefault(); var windUnit = await db.QueryAsync<string>( "SELECT 'unit' FROM 'forecast'" .SingleOrDefault(); var uvIndexUnit = await db.QueryAsync<string>( "SELECT 'unit' FROM 'forecast'" .SingleOrDefault(); var visibilityUnit = await db.QueryAsync<string>( "SELECT 'unit' FROM 'forecast'" .SingleOrDefault(); var pressureUnit = await db.QueryAsync<string>( "SELECT 'unit' FROM 'forecast'" .SingleOrDefault(); var weatherCondition = await db.QueryAsync<string>( "SELECT 'weather' FROM 'forecast'" .FirstOrDefault(); var forecastCondition = await db.QueryAsync<string>( "SELECT 'forecast' FROM 'forecast'" .SingleOrDefault(); var wundergroundApiKey = await db.QueryAsync<string>( "SELECT 'wunderground_api_key' FROM 'forecast'" .FirstOrDefault(); if (eventType == sqsMessage. { return HttpResponseMessage.Create(HttpStatusCode.OK); } else { // Generate dynamic values String city = String .Format( "{0}{1}" , location[ 0 ], location[

The process to integrate AerisWeather and Amazon SQS may seem complicated and intimidating. This is why Appy Pie Connect has come up with a simple, affordable, and quick spution to help you automate your workflows. Click on the button below to begin.