Update Export Destination
(v2)PUT
Updates an export destination and returns it with its credentials masked. Omit a credential to leave the stored one alone; resending the masked value a read returned does the same, so a destination you read and send straight back keeps working.
curl -X PUT "https://api.confident-ai.com/v2/export-destinations/{exportDestinationId}" \
-H "CONFIDENT_API_KEY: <PROJECT-API-KEY>" \
-H "Content-Type: application/json" \
-d '{
"name": "Nightly S3 exports",
"type": "S3",
"bucket": "acme-llm-exports",
"region": "us-east-1",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"secretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
"pathPrefix": "confident-ai/",
"snowflakeConfig": {
"account": "myorg-myaccount",
"username": "CONFIDENT_EXPORTER",
"role": "CONFIDENT_EXPORT_ROLE",
"warehouse": "CONFIDENT_WH",
"database": "ANALYTICS",
"schema": "CONFIDENT",
"privateKey": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASC...\n-----END PRIVATE KEY-----",
"privateKeyPassphrase": "correct-horse-battery-staple"
},
"enabled": true
}'{
"success": true,
"data": {
"id": "<EXPORT-DESTINATION-ID>",
"name": "Nightly S3 exports",
"type": "S3",
"bucket": "acme-llm-exports",
"region": "us-east-1",
"accessKeyId": "***************XAMPLE",
"secretAccessKey": "***************PLEKEY",
"pathPrefix": "confident-ai/",
"snowflakeConfig": {
"account": "myorg-myaccount",
"username": "CONFIDENT_EXPORTER",
"role": "CONFIDENT_EXPORT_ROLE",
"warehouse": "CONFIDENT_WH",
"database": "ANALYTICS",
"schema": "CONFIDENT",
"privateKey": "***************Y-----",
"privateKeyPassphrase": "***************"
},
"enabled": true,
"createdAt": "2025-01-15T10:30:00.000Z",
"updatedAt": "2025-01-20T08:15:00.000Z"
},
"link": "https://app.confident-ai.com/project/<PROJECT-ID>/project-settings/exports",
"deprecated": false
}Headers
CONFIDENT_API_KEYstringRequiredThe API key of your Confident AI project.
Path parameters
exportDestinationIdstringRequiredThe id of the export destination.
Request body
namestringThe name of the destination, as it appears in your project.
typeenumWhere exports go.
S3uploads files to a bucket andSNOWFLAKEloads rows into tables; any other member is rejected on create. A destination's type can't be changed after it is created.Show 4 enum valuesHide 4 enum values
S3GCSAZURE_BLOBSNOWFLAKE
bucketstringThe name of the bucket exports are uploaded to.
regionstringThe region the bucket lives in.
accessKeyIdstringA new access key id for the bucket. Omit it to leave the stored key id untouched. Sending back the masked value a read returned leaves it untouched too, so a destination you read and send straight back keeps working.
secretAccessKeystringA new secret access key for the bucket. Omit it to leave the stored secret untouched. Sending back the masked value a read returned leaves it untouched too; the mask is never written into storage.
pathPrefixstring | nullA folder inside the bucket to write exports under. A leading slash is stripped and a trailing one added, so
/confident-aiis stored asconfident-ai/. Sendnullto clear it and write to the root of the bucket; an empty string is ignored.snowflakeConfigobjectThe Snowflake settings to change. Omitted fields keep their stored values.
Show 8 propertiesHide 8 properties
accountstringThe Snowflake account identifier, as
<organization>-<account>. A fullhttps://<account>.snowflakecomputing.comURL is accepted and trimmed to the identifier.usernamestringThe Snowflake user Confident AI signs in as, ideally a
TYPE = SERVICEuser whoseRSA_PUBLIC_KEYmatchesprivateKey.rolestringThe role loads run as. It needs USAGE on the warehouse, database and schema, and CREATE
TABLEon the schema.warehousestringThe warehouse that runs each load.
databasestringThe database the export tables live in.
schemastringThe schema Confident AI creates
CONFIDENT_TRACESandCONFIDENT_ANNOTATIONSin.privateKeystringA new PEM private key. Omit it, or send back the masked value a read returned, to keep the stored key.
privateKeyPassphrasestring | nullA new passphrase for an encrypted private key. Omit it, or send back the masked value, to keep the stored one; send
nullto clear it.
enabledbooleanWhether export schedules may upload to this destination. Set it to
falseto stop uploads without deleting the destination.
Response
Update Export Destination succeeded.
successbooleanIndicates if the request was successful.
dataobjectA destination export schedules send exports to, with its credentials masked. Confident AI returns the last six characters of each credential so you can tell which one is stored, never the credential itself.
Show 12 propertiesHide 12 properties
idstringThe id of the destination, generated by Confident AI.
namestringThe name of the destination.
typeenumWhere exports go.
S3uploads files to a bucket andSNOWFLAKEloads rows into tables; any other member is rejected on create. A destination's type can't be changed after it is created.Show 4 enum valuesHide 4 enum values
S3GCSAZURE_BLOBSNOWFLAKE
bucketstring | nullThe name of the bucket exports are uploaded to, or
nullfor aSNOWFLAKEdestination.regionstring | nullThe region the bucket lives in, or
nullfor aSNOWFLAKEdestination.accessKeyIdstring | nullNull for a
SNOWFLAKEdestination. Otherwise the stored access key id, masked: fifteen asterisks followed by its last six characters. The real key id is never returned. Send this value back on an update to leave the stored key id alone, or omit the field entirely.secretAccessKeystring | nullNull for a
SNOWFLAKEdestination. Otherwise the stored secret access key, masked: fifteen asterisks followed by its last six characters. The real secret is never returned. Send this value back on an update to leave the stored secret alone, or omit the field entirely.pathPrefixstring | nullThe folder inside the bucket exports are written under, always ending in a slash, or
nullwhen they are written to the root of the bucket or the destination isSNOWFLAKE.snowflakeConfigobject | nullA Snowflake destination's settings with the private key and passphrase masked.
Show 8 propertiesHide 8 properties
accountstringThe Snowflake account identifier, as
<organization>-<account>. A fullhttps://<account>.snowflakecomputing.comURL is accepted and trimmed to the identifier.usernamestringThe Snowflake user Confident AI signs in as, ideally a
TYPE = SERVICEuser whoseRSA_PUBLIC_KEYmatchesprivateKey.rolestringThe role loads run as. It needs USAGE on the warehouse, database and schema, and CREATE
TABLEon the schema.warehousestringThe warehouse that runs each load.
databasestringThe database the export tables live in.
schemastringThe schema Confident AI creates
CONFIDENT_TRACESandCONFIDENT_ANNOTATIONSin.privateKeystringThe stored private key, masked: fifteen asterisks followed by its last six characters. Send this value back on an update to keep the stored key.
privateKeyPassphrasestring | nullThe stored passphrase, fully masked as fifteen asterisks, or
nullwhen the key is unencrypted. Send it back on an update to keep the stored passphrase.
enabledbooleanWhether export schedules may upload to this destination.
createdAtstringThe timestamp when the destination was created.
updatedAtstringThe timestamp when the destination was last updated.
linkstringThis is the URL of the resource on the Confident AI platform.
deprecatedbooleanIndicates if this endpoint is deprecated.