Release 19.0 240419.19.0

This update brings more power to integrations by adding new endpoints for integration management and unlocks new integration features in the Skylark UI.

Features

Upsert request :arrow-up:

An optional upsert argument has been added to the update mutation.

mutation upsertMutation {
  updateMovie(external_id: "movie1", upsert: true, movie: {
    title: "Upserted movie",
    synopsis: "This movie will be upserted"
  }) {
    uid
  }
}

If a movie with the matching external_id is found, it will be updated. If not, then a new movie will be created.

Integration updates :nut-and-bolt:

We've added new features to our integration service to help manage your integrations. These new features include:

View available integrations

Fetch a list of all the potential integrations available to you, including information on whats required to enable that integration.

Example response:

{
    "image": {
        "cloudinary": [
            {
                "additional_required_fields": [
                    "cloud_name"
                ],
                "description": "Cloudinary image integration",
                "documentation_link": "https://docs.skylarkplatform.com/docs/cloudinary-integration"
            }
        ]
    },
    "video": {
        "mux": [
            {
                "additional_required_fields": [
                    "mux_api_access_key",
                    "mux_api_secret_key"
                ],
                "description": "Mux video integration",
                "documentation_link": "https://docs.skylarkplatform.com/docs/mux-integration"
            }
        ]
    }
}

View enabled integrations, including fetching your webhook token

Fetch a list of all integrations you've configured. This will show whether the integration is enabled and show the token to use in your webhook urls.

Example:

{
    "image": {
        "cloudinary": {
            "created": "2024-04-19T09:39:06.714945",
            "enabled": true,
            "modified": "2024-04-19T09:39:06.714961",
            "token": "d9b9b0d8-71c3-4e11-8e0c-be41475d0b0b"
        }
    },
    "video": {
        "mux": {
            "created": "2024-04-19T09:42:49.285081",
            "enabled": true,
            "modified": "2024-04-19T09:42:49.285093",
            "token": "3bbc467d-bb4d-4427-b827-615291b7e508"
        }
    }
}

Delete or disable integrations

Sending a DELETE request to the path /<integration_type>/<provider> (for example /video/mux) allows you to disable that integration. When an integration is disabled, any incoming webhooks from that provider will be ignored.

Sending the same request again to a disabled integration will delete it entirely.