Manifest
Start developing your snap-in with a manifest.yaml
file. The manifest defines the snap-in’s configuration, including its name, description, version, connection details, and functionality.
Begin by setting the values for name
and description
in the template.
Set snap-in functionalities
DevRev supports creating snap-ins for importing data from an external system into DevRev (extraction) and exporting data from DevRev to an external system (loading). Implementing the extraction functionality is essential, while loading is optional.
To define the functionalities, review the functions
section in the manifest.
If loading is not implemented, remove it from the list. This action also removes the option from the DevRev app.
Check the imports
section next.
Update the slug
, display_name
, and description
to match your snap-in.
If loading is not used, remove loader_function
.
Ensure that extractor_function
and loader_function
names correspond with those in the functions
section.
Establish a connection to the external system
Keyrings are a collection of authentication information, used by a snap-in to authenticate to the external system in API calls. This can include a key (for example, a PAT token or API key), its type, the organization ID for which a key is valid, and in some cases the organization name.
Keyrings provide a secure way to store and manage credentials within your DevRev snap-in. This eliminates the need to expose sensitive information like passwords or access tokens directly within your code or configuration files, enhancing overall security. They also provide a valid token by abstracting OAuth token renewal from the end user.
They are called Connections in the DevRev app.
Configure a keyring
Keyrings are configured in the manifest.yaml
by configuring a keyring_type
, like in the example.
You can find more information about keyrings and keyring types here.