Hi,
I am new to Statuspage and I am currently experiencing an error 400 when I try to update a Statuspage component via AWS Lambda.
This is the code for the lambda function I am using:
import requests
import json
def post_to_statuspage(payload):
headers = {'content-type': 'application/json', 'Authorization': 'Oauth a31d80fb-xxxxxx-xxxxx0849' }
url = 'https://api.statuspage.io/v1/pages/0b7rflm22xxx/components/q74nxxx8zt7'
return requests.patch(url=url, data=payload, headers=headers)
def package_data(payload):
data = {'event' : payload }
response = post_to_statuspage(json.dumps(data))
return response.status_code
def lambda_handler(event, context):
alerts = event["component"]
status = []
for alert in alerts:
status.append(package_data(alert))
return status
The test event/payload I am using only has the following:
{
"component": {
"status": "under_maintenance"
}
}
Where could the problem be?
I figured this out.
I just cleaned up the script.
Does it work when you replace
data = {'event' : payload }
response = post_to_statuspage(json.dumps(data))
with
response = post_to_statuspage(json.dumps(payload))
?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks for this but no it doesn't.
I am already converting to JSON with my package_data.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I did try replacing as suggested but the error still persists.
Any help with this will be appreciated.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.