mailerlite API foutcode 422 voor abonnees eindpunt

Vandaag, implementeerde ik de koppeling tussen PiCockpit.com en de Mailerlite API (die wij gebruiken aus onze nieuwsbriefsoftware).

https://api.mailerlite.com/api/v2/subscribers

Ik kreeg de volgende foutmelding:

{"error":{"code":422, "message": "Unprocessable entity"}}

Het POST verzoek stuurde 422 terug als status code.

Helaas is er weinig documentatie over dat op Mailerlite. Mijn implementatie was correct (dit is trouwens Crystal Lang):

	get "/test" do |env|
	  body = "email": \[email protected]".}
	  zet lichaam
      response = HTTP::Client.post("https://api.mailerlite.com/api/v2/subscribers",
      		headers: HTTP::Headers{
      			"X-MailerLite-ApiKey" => "MAILERLITE_APIKEY",
      			"Content-Type": "application/json"
      			},
      		body: body)
  	  als response.status_code !.= 201
  	  	zet "newsletter_subscription :: error code #{response.status_code}"
  	  	puts response.body
  	  anders
  	  	puts "nieuwsbrief_inschrijving :: OK"
  	  	zet respons.body
  	  end
	einde

waarbij MAILERLITE_APIKEY de API-sleutel is die u in de backend aanmaakt:

https://dashboard.mailerlite.com/integrations/api

(Klik op "Nieuw token genereren", het wordt maar één keer aan u getoond).

Hoe 422 te repareren bij het aanroepen van het abonnees eindpunt van de Mailerlite API

De mailerlite support gaf me de oplossing:

bepaalde e-mailadressen worden geweigerd - b.v. e-mailadressen die support@ zijn. Dit komt doordat het bouncepercentage bij deze adressen hoger is.

Hoe ziet een succesvolle reactie eruit?

Met een ander e-mail adres, ziet het antwoord er als volgt uit:

{"id":2348923942342834, "name":"", "email": "[email protected]", "sent":0, "opened":0, "opened_rate":0, "clicked":0, "clicked_rate":0, "type": "unconfirmed", "country_id":"", "signup_ip":null, "signup_timestamp":null, "confirmation_ip":null, "confirmation_timestamp":null, "fields":[{"key": "last_name", "value":"", "type": "TEXT"},{"key": "company", "value":"", "type": "TEXT"},{"key": "country", "value":{"key": "country", "value":"", "type": "TEXT"},{"key": "city", "value":"", "type": "TEXT"},{"key": "phone", "value":"", "type": "TEXT"},{"key": "state", "value":"", "type": "TEXT"},{"key": "state", "value":"",}”TEXT”},{“key”:”z_i_p”,”value”:””,”type”:”TEXT”}],”date_subscribe”:”2022-05-19 12:09:24″,”date_unsubscribe”:null,”date_created”:”2022-05-19 12:09:24″,”date_updated”:”2022-05-19 12:09:24″}

De antwoordcode is 201, "gemaakt".

Huur ons in

Als u ondersteuning nodig heeft voor uw backend of frontend ontwikkeling, kunt u ons inhuren. Neem contact op voor meer informatie.