Sources
APIs to connect your data
Sources connect your databases to Felt.
With these APIs, you can configure data source connections, credentials, and sync settings to create live maps.
Retrieve all data sources accessible to the authenticated user within the workspace.
Only needed when using the API as part of a plugin
Source references
UnauthorizedError
UnauthorizedError
NotFoundError
Unprocessable Entity
Unprocessable Entity
InternalServerError
GET /api/v2/sources HTTP/1.1
Host: felt.com
Authorization: Bearer YOUR_API_KEY
Accept: */*
[
{
"automatic_sync": "enabled",
"connection_type": "abs_bucket",
"created_at": 1,
"id": "luCHyMruTQ6ozGk3gPJfEB",
"last_synced_at": 1,
"links": {
"self": "https://felt.com/api/v2/sources/V0dnOMOuTd9B9BOsL9C0UjmqC"
},
"name": "text",
"owner_id": "luCHyMruTQ6ozGk3gPJfEB",
"permissions": {
"type": "workspace_editors"
},
"sync_status": "syncing",
"type": "source_reference",
"updated_at": 1,
"workspace_id": "luCHyMruTQ6ozGk3gPJfEB"
}
]
Create a new data source connection with authentication credentials and access permissions.
Connecting the Source and inspecting its datasets will happen asynchronously after the API response is returned. To determine when the inspection process has completed, poll the Show Source endpoint and check for sync_status: completed
.
Source reference
UnauthorizedError
UnauthorizedError
NotFoundError
Unprocessable Entity
Unprocessable Entity
InternalServerError
POST /api/v2/sources HTTP/1.1
Host: felt.com
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 269
{
"connection": {
"blob_storage_url": "text",
"credentials": [
{
"credential": {
"connection_string": "text",
"type": "azure_storage_connection_string"
},
"name": "text",
"use_case": "source_authentication"
}
],
"type": "abs_bucket"
},
"name": "text",
"permissions": {
"type": "workspace_editors"
}
}
{
"automatic_sync": "enabled",
"connection_type": "abs_bucket",
"created_at": 1,
"id": "luCHyMruTQ6ozGk3gPJfEB",
"last_synced_at": 1,
"links": {
"self": "https://felt.com/api/v2/sources/V0dnOMOuTd9B9BOsL9C0UjmqC"
},
"name": "text",
"owner_id": "luCHyMruTQ6ozGk3gPJfEB",
"permissions": {
"type": "workspace_editors"
},
"sync_status": "syncing",
"type": "source_reference",
"updated_at": 1,
"workspace_id": "luCHyMruTQ6ozGk3gPJfEB"
}
Update data source connection settings, access permissions, or configuration details.
Connecting the Source and inspecting its datasets will happen asynchronously after the API response is returned. To determine when the inspection process has completed, poll the Show Source endpoint and check for sync_status: completed
.
The ID of the source to update
Source reference
UnauthorizedError
UnauthorizedError
NotFoundError
Unprocessable Entity
Unprocessable Entity
InternalServerError
POST /api/v2/sources/{source_id}/update HTTP/1.1
Host: felt.com
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 119
{
"connection": {
"blob_storage_url": "text",
"type": "abs_bucket"
},
"name": "text",
"permissions": {
"type": "workspace_editors"
}
}
{
"automatic_sync": "enabled",
"connection_type": "abs_bucket",
"created_at": 1,
"id": "luCHyMruTQ6ozGk3gPJfEB",
"last_synced_at": 1,
"links": {
"self": "https://felt.com/api/v2/sources/V0dnOMOuTd9B9BOsL9C0UjmqC"
},
"name": "text",
"owner_id": "luCHyMruTQ6ozGk3gPJfEB",
"permissions": {
"type": "workspace_editors"
},
"sync_status": "syncing",
"type": "source_reference",
"updated_at": 1,
"workspace_id": "luCHyMruTQ6ozGk3gPJfEB"
}
Trigger a full data synchronization from the source to update all connected layers with latest data.
Syncing will happen asynchronously after the API response is returned. To determine when the inspection process has completed, poll the Show Source endpoint and check for sync_status: completed
.
The ID of the source to sync
Source reference
UnauthorizedError
UnauthorizedError
NotFoundError
Unprocessable Entity
Unprocessable Entity
InternalServerError
POST /api/v2/sources/{source_id}/sync HTTP/1.1
Host: felt.com
Authorization: Bearer YOUR_API_KEY
Accept: */*
{
"automatic_sync": "enabled",
"connection_type": "abs_bucket",
"created_at": 1,
"id": "luCHyMruTQ6ozGk3gPJfEB",
"last_synced_at": 1,
"links": {
"self": "https://felt.com/api/v2/sources/V0dnOMOuTd9B9BOsL9C0UjmqC"
},
"name": "text",
"owner_id": "luCHyMruTQ6ozGk3gPJfEB",
"permissions": {
"type": "workspace_editors"
},
"sync_status": "syncing",
"type": "source_reference",
"updated_at": 1,
"workspace_id": "luCHyMruTQ6ozGk3gPJfEB"
}
Retrieve detailed configuration and connection information for a specific data source.
The ID of the source to show
Source
UnauthorizedError
UnauthorizedError
NotFoundError
Unprocessable Entity
Unprocessable Entity
InternalServerError
GET /api/v2/sources/{source_id} HTTP/1.1
Host: felt.com
Authorization: Bearer YOUR_API_KEY
Accept: */*
{
"automatic_sync": "enabled",
"connection": {
"blob_storage_url": "text",
"credentials": [
{
"created_at": 1,
"credential": {
"connection_string": "text",
"type": "azure_storage_connection_string"
},
"id": "luCHyMruTQ6ozGk3gPJfEB",
"name": "text",
"source_id": "luCHyMruTQ6ozGk3gPJfEB",
"updated_at": 1,
"use_case": "source_authentication"
}
],
"type": "abs_bucket"
},
"created_at": 1,
"datasets": [
{
"created_at": 1,
"description": "text",
"geometry_type": "polygon",
"id": "luCHyMruTQ6ozGk3gPJfEB",
"inspection_status": "completed",
"name": "text",
"type": "dataset",
"updated_at": 1
}
],
"id": "luCHyMruTQ6ozGk3gPJfEB",
"last_synced_at": 1,
"name": "text",
"owner_id": "luCHyMruTQ6ozGk3gPJfEB",
"permissions": {
"type": "workspace_editors"
},
"sync_status": "syncing",
"type": "source",
"updated_at": 1,
"workspace_id": "luCHyMruTQ6ozGk3gPJfEB"
}
Permanently delete a data source connection and all its associated layers and data.
Any layers created from the Source will remain after it is deleted, but they will no longer be refreshed.
The ID of the source to delete
No Content
UnauthorizedError
UnauthorizedError
NotFoundError
Unprocessable Entity
Unprocessable Entity
InternalServerError
DELETE /api/v2/sources/{source_id} HTTP/1.1
Host: felt.com
Authorization: Bearer YOUR_API_KEY
Accept: */*
No content
Add authentication credentials to an existing data source for secure access.
Some sources may need to be configured with additional credentials to work with Felt. Access to S3 Buckets, for example, may be protected by IAM policies. Adding a SourceCredential-AwsAssumeRole
credential to your S3 Bucket source allows Felt to connect to a private source.
Sensitive fields in credentials, like SourceCredential-KeyPair.private_key
, will be returned as felt:redacted
.
The ID of the source to attach the credential
Source credential created
UnauthorizedError
UnauthorizedError
NotFoundError
Unprocessable Entity
Unprocessable Entity
InternalServerError
POST /api/v2/sources/{source_id}/credentials HTTP/1.1
Host: felt.com
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 137
{
"credential": {
"role_arn": "text",
"role_session_name": "text",
"type": "aws_assume_role"
},
"name": "text",
"use_case": "stac_api_authentication"
}
{
"created_at": 1,
"credential": {
"role_arn": "text",
"role_session_name": "text",
"type": "aws_assume_role"
},
"id": "luCHyMruTQ6ozGk3gPJfEB",
"name": "text",
"source_id": "luCHyMruTQ6ozGk3gPJfEB",
"updated_at": 1,
"use_case": "stac_api_authentication"
}
Update existing authentication credentials for a data source connection.
Sensitive fields in credentials, like SourceCredential-KeyPair.private_key
, will be returned as felt:redacted
.
The ID of the source that the credential belongs to
The ID of the credential
Source credential updated
UnauthorizedError
UnauthorizedError
NotFoundError
Unprocessable Entity
Unprocessable Entity
InternalServerError
POST /api/v2/sources/{source_id}/credentials/{credential_id}/update HTTP/1.1
Host: felt.com
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 137
{
"credential": {
"role_arn": "text",
"role_session_name": "text",
"type": "aws_assume_role"
},
"name": "text",
"use_case": "stac_api_authentication"
}
{
"created_at": 1,
"credential": {
"role_arn": "text",
"role_session_name": "text",
"type": "aws_assume_role"
},
"id": "luCHyMruTQ6ozGk3gPJfEB",
"name": "text",
"source_id": "luCHyMruTQ6ozGk3gPJfEB",
"updated_at": 1,
"use_case": "stac_api_authentication"
}
Remove authentication credentials from a data source connection.
The ID of the source that the credential belongs to
The ID of the credential to delete
No Content
UnauthorizedError
UnauthorizedError
NotFoundError
Unprocessable Entity
Unprocessable Entity
InternalServerError
DELETE /api/v2/sources/{source_id}/credentials/{credential_id} HTTP/1.1
Host: felt.com
Authorization: Bearer YOUR_API_KEY
Accept: */*
No content
Was this helpful?