Blueprints

Extract data from an API and load it to S3 on schedule (every Friday afternoon)

About this blueprint

API Ingest S3

This flow extracts data from an HTTP API and loads it to S3 as a JSON file

yaml
id: api-to-s3
namespace: blueprint

tasks:
  - id: getPokemon
    type: io.kestra.plugin.fs.http.Download
    method: GET
    uri: https://pokeapi.co/api/v2/pokemon/psyduck

  - id: upload
    type: io.kestra.plugin.aws.s3.Upload
    bucket: kestraio
    from: "{{outputs.getPokemon.uri}}"
    key: psyduck.json
    accessKeyId: "{{ secret('AWS_ACCESS_KEY_ID') }}"
    secretKeyId: "{{ secret('AWS_SECRET_ACCESS_KEY') }}"
    region: "{{ secret('AWS_DEFAULT_REGION') }}"

triggers:
  - id: firstMondayOfTheMonth
    type: io.kestra.core.models.triggers.types.Schedule
    timezone: Europe/Berlin # adjust to your timezone
    cron: "0 17 * * FRI" # at 5 PM on every Friday

Download

Upload

Schedule

New to Kestra?

Use blueprints to kickstart your first workflows.

Get started with Kestra