Skip to main content

Datastores

Datastores define a destination for data loaded into a workspace by pipelines. The default datastore for a workspace is its own PostgreSQL database hosted by Meltano Cloud, but this can be changed at any time to another datastore with your own credentials (see our supported dataplugins of type LOADER).


Objects​

Datastore​

PathJSON TypeFormatDescription
idstringVersion 4 UUIDThe datastore ID
createdstringISO 8601 timestampThe instant at which the datastore was created
lastModifiedstringISO 8601 timestampThe instant at which the datastore was last modified
namestringThe datastore name
dataPluginstringCreate / update with dataplugin fullyQualifiedName
workspacestringVersion 4 UUIDThe datastore workspace id
jdbcUrlstringJDBC URLThe datastore JDBC URL
propertiesobjectPropertiesThe datastore properties

Properties​

For each setting s in the dataplugin settings:

PathTypeDescription
s.names.kindRefer to s.description

Requests​

View all datastores in a workspace​

GET /api/workspaces/{workspace-id}/datastores

Returns the datastores in the workspace {workspace-id}.

Prerequisites​

  • Workspace {workspace-id} must exist
Examples
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://app.meltano.com:443/api/workspaces/af265392-77df-438a-8fa9-d5485c05adc1/datastores' -i -X GET

Response​

200 OK

Datastore collection with HAL links.

{
"_embedded" : {
"datastores" : [ {
"id" : "b0ceccd2-81b7-450c-b12a-1615392f6b10",
"created" : "2026-10-01T13:41:02.879714",
"lastModified" : "2026-10-01T13:41:02.879717",
"name" : "Warehouse",
"properties" : {
"password" : "A0Lt2pn7_N1qGVnR0_1MvS0T0n",
"dbname" : "bgdbqmc",
"default_target_schema" : "analytics",
"port" : "5432",
"host" : "db.meltano.internal",
"user" : "bgdbqmc"
},
"commands" : { },
"dataPlugin" : "loaders/target-postgres--matatika",
"dataPluginType" : "loader",
"dataPluginLogoUrl" : "/assets/logos/loaders/postgres.png",
"logoUrl" : "/assets/logos/loaders/postgres.png",
"workspace" : "af265392-77df-438a-8fa9-d5485c05adc1",
"jdbcUrl" : "jdbc:postgresql://db.meltano.internal:5432/bgdbqmc",
"managed" : true,
"draft" : false,
"_links" : {
"self" : {
"href" : "https://app.meltano.com/api/datastores/b0ceccd2-81b7-450c-b12a-1615392f6b10"
},
"dataplugin" : {
"href" : "https://app.meltano.com/api/dataplugins/5c86195f-d856-4c58-83ac-7adfe4054ecc"
}
}
} ]
},
"_links" : {
"self" : {
"href" : "https://app.meltano.com/api/workspaces/af265392-77df-438a-8fa9-d5485c05adc1/datastores?page=0&size=20"
}
},
"page" : {
"size" : 20,
"totalElements" : 1,
"totalPages" : 1,
"number" : 0
}
}

View a datastore​

GET /api/datastores/{datastore-id}

Returns the datastore {datastore-id}.

Prerequisites​

  • Datastore {datastore-id} must exist
Examples
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://app.meltano.com:443/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17' -i -X GET

Response​

200 OK

Datastore with HAL links.

{
"id" : "3c0abcb2-1f81-4365-8962-550ab87eac17",
"created" : "2026-10-01T13:41:08.68879",
"lastModified" : "2026-10-01T13:41:09.984038",
"name" : "Test datastore (updated)",
"properties" : {
"host" : "db.meltano.internal",
"password" : "A0Lt2pn7_N1qGVnR0_1MvS0T0n",
"default_target_schema" : "analytics",
"dbname" : "bgdbqmc",
"user" : "bgdbqmc"
},
"commands" : { },
"dataPlugin" : "loaders/target-postgres--matatika",
"dataPluginType" : "loader",
"dataPluginLogoUrl" : "/assets/logos/loaders/postgres.png",
"logoUrl" : "/assets/logos/loaders/postgres.png",
"workspace" : "af265392-77df-438a-8fa9-d5485c05adc1",
"jdbcUrl" : "jdbc:postgresql://db.meltano.internal:5432/bgdbqmc",
"managed" : false,
"draft" : false,
"_links" : {
"self" : {
"href" : "https://app.meltano.com/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17"
},
"update datastore" : {
"href" : "https://app.meltano.com/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17"
},
"delete datastore" : {
"href" : "https://app.meltano.com/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17"
},
"make-default" : {
"href" : "https://app.meltano.com/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17/default"
},
"dataplugin" : {
"href" : "https://app.meltano.com/api/dataplugins/5c86195f-d856-4c58-83ac-7adfe4054ecc"
}
}
}

Set a datastore as the workspace default​

PUT /api/datastores/{datastore-id}/default

Sets the datastore {datastore-id} as the workspace default.

Prerequisites​

  • Datastore {datastore-id} must exist
Examples
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://app.meltano.com:443/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17/default' -i -X PUT \
-H 'Content-Type: application/json'

Response​

200 OK

No response body provided.


Initialise a new datastore in a workspace​

POST /api/workspaces/{workspace-id}/datastores

Initialises a new datastore in the workspace {workspace-id}.

Prerequisites​

  • Workspace {workspace-id} must exist
Examples
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://app.meltano.com:443/api/workspaces/af265392-77df-438a-8fa9-d5485c05adc1/datastores' -i -X POST \
-H 'Content-Type: application/json'

Response​

200 OK

Datastore with HAL links.

{
"id" : "3c0abcb2-1f81-4365-8962-550ab87eac17",
"created" : "2026-10-01T13:41:08.558418571",
"lastModified" : "2026-10-01T13:41:08.558420154",
"properties" : { },
"commands" : { },
"workspace" : "af265392-77df-438a-8fa9-d5485c05adc1",
"managed" : false,
"draft" : false,
"_links" : {
"self" : {
"href" : "https://app.meltano.com/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17"
},
"create datastore" : {
"href" : "https://app.meltano.com/api/workspaces/af265392-77df-438a-8fa9-d5485c05adc1/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17"
}
}
}

Create or update a datastore in a workspace​

PUT /api/workspaces/{workspace-id}/datastores/{datastore-id}

Creates or updates the datastore {datastore-id} in the workspace {workspace-id}.

Prerequisites​

  • Workspace {workspace-id} must exist

Body​

Datastore resource.

{
"name" : "Test datastore",
"dataPlugin" : "loaders/target-postgres",
"properties" : {
"password" : "A0Lt2pn7_N1qGVnR0_1MvS0T0n",
"host" : "db.meltano.internal",
"user" : "bgdbqmc",
"default_target_schema" : "analytics",
"dbname" : "bgdbqmc"
}
}
Examples
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://app.meltano.com:443/api/workspaces/af265392-77df-438a-8fa9-d5485c05adc1/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17' -i -X PUT \
-H 'Content-Type: application/json' \
-d '{
"name" : "Test datastore",
"dataPlugin" : "loaders/target-postgres",
"properties" : {
"password" : "A0Lt2pn7_N1qGVnR0_1MvS0T0n",
"host" : "db.meltano.internal",
"user" : "bgdbqmc",
"default_target_schema" : "analytics",
"dbname" : "bgdbqmc"
}
}'

Response​

200 OK / 201 Created

Datastore with HAL links.

{
"id" : "3c0abcb2-1f81-4365-8962-550ab87eac17",
"created" : "2026-10-01T13:41:08.68879012",
"lastModified" : "2026-10-01T13:41:08.68879201",
"name" : "Test datastore",
"properties" : {
"password" : "A0Lt2pn7_N1qGVnR0_1MvS0T0n",
"host" : "db.meltano.internal",
"user" : "bgdbqmc",
"default_target_schema" : "analytics",
"dbname" : "bgdbqmc"
},
"commands" : { },
"dataPlugin" : "loaders/target-postgres--matatika",
"dataPluginType" : "loader",
"dataPluginLogoUrl" : "/assets/logos/loaders/postgres.png",
"logoUrl" : "/assets/logos/loaders/postgres.png",
"workspace" : "af265392-77df-438a-8fa9-d5485c05adc1",
"jdbcUrl" : "jdbc:postgresql://db.meltano.internal:5432/bgdbqmc",
"managed" : false,
"draft" : false,
"_links" : {
"self" : {
"href" : "https://app.meltano.com/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17"
},
"update datastore" : {
"href" : "https://app.meltano.com/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17"
},
"delete datastore" : {
"href" : "https://app.meltano.com/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17"
},
"make-default" : {
"href" : "https://app.meltano.com/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17/default"
},
"dataplugin" : {
"href" : "https://app.meltano.com/api/dataplugins/5c86195f-d856-4c58-83ac-7adfe4054ecc"
}
}
}

Delete a datastore​

DELETE /api/datastores/{datastore-id}

Deletes the datastore {datastore-id}.

Prerequisites​

  • Datastore {datastore-id} must exist
Examples
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://app.meltano.com:443/api/datastores/3c0abcb2-1f81-4365-8962-550ab87eac17' -i -X DELETE

Response​

204 No Content

No response body provided.


See Also​