Points de terminaison de Snowpipe Streaming API REST¶
Les en-têtes de requête suivants s’appliquent à tous les points de terminaison de Snowpipe Streaming REST API :
En-tête |
Description |
---|---|
|
jeton d’authentification |
|
JWT/OAuth |
Get Hostname¶
Get Hostname
renvoie le nom d’hôte utilisé pour interagir avec Snowpipe Streaming REST API. Chaque compte a un nom d’hôte unique.
GET /v2/streaming/hostname
Réponse :
Champ |
Type |
Description |
---|---|---|
status_code |
int |
Code de statut que les clients peuvent utiliser pour mapper les erreurs internes avec la documentation publique. |
message |
string |
Message d’erreur descriptif expliquant l’erreur lorsque le code de réponse n’est pas 200 (Succès). Sinon, il est vide pour le code de réponse 200. |
hostname |
string |
Le nom d’hôte de l’ensemble de lignes du compte. |
Exchange Rowset Scoped Token¶
Exchange Rowset Scoped Token
renvoie un jeton de sécurité qui peut être utilisé pour accéder uniquement au service lié à l’API de Snowpipe Streaming. Le client bénéficie ainsi d’une protection en matière de sécurité.
POST /oauth/token
Requête :
Attribut |
Obligatoire |
Composant |
Description |
---|---|---|---|
content_type |
Oui |
En-tête |
« application/x-www-form-urlencoded » |
grant_type |
Oui |
charge utile |
|
scope |
Oui |
charge utile |
Le nom d’hôte de l’ensemble de lignes du compte |
Réponse :
Champ |
Type |
Description |
---|---|---|
status_code |
int |
Code de statut que les clients peuvent utiliser pour mapper les erreurs internes avec la documentation publique. |
message |
string |
Message d’erreur descriptif expliquant l’erreur lorsque le code de réponse n’est pas 200 (Succès). Sinon, il est vide pour le code de réponse 200. |
token |
string |
Le jeton du champ d’application de l’ensemble de lignes. |
Open Channel¶
L’opération Open Channel
permet de créer ou d’ouvrir un nouveau canal par rapport à un canal ou à une table. Si le canal existe déjà, Snowflake bouscule le séquenceur client du canal et renvoie le dernier jeton de décalage engagé.
PUT /v2/streaming/databases/{databaseName}/schemas/{schemaName}/pipes/{pipeName}/channels/{channelName}
Requête :
Attribut |
Obligatoire |
Composant |
Description |
---|---|---|---|
databaseName |
Oui |
URI |
Nom de la base de données, non sensible à la casse |
schemaName |
Oui |
URI |
Nom du schéma, non sensible à la casse |
pipeName |
Oui |
URI |
Nom du canal, non sensible à la casse |
channelName |
Oui |
URI |
Nom du canal que vous créez ou rouvrez, non sensible à la casse |
offset_token |
Non |
charge utile |
Chaîne utilisée pour définir un jeton de décalage lors de l’ouverture d’un canal. |
requestId |
Non |
Paramètre de requête |
UUID utilisé pour suivre les requêtes dans le système |
Réponse :
Champ |
Type |
Description |
---|---|---|
channel_status_code |
Chaîne |
Indique le statut du canal. |
last_committed_offset_token |
Chaîne |
Dernier jeton de décalage engagé |
database_name |
Chaîne |
Le nom de la base de données à laquelle le canal appartient. |
schema_name |
Chaîne |
Le nom du schéma auquel le canal appartient. |
nom_canal |
Chaîne |
Le nom du canal auquel le canal appartient. |
channel_name |
Chaîne |
Le nom du canal. |
rows_inserted |
int |
Un compte de toutes les lignes insérées dans ce canal. |
rows_parsed |
int |
Un compte de toutes les lignes analysées, mais pas nécessairement insérées dans ce canal. |
rows_errors |
int |
Un compte de toutes les lignes qui ont connu des erreurs lors de l’insertion dans ce canal et qui ont donc été rejetées. |
last_error_offset_upper_bound |
Chaîne |
La limite supérieure du dernier jeton de décalage de l’ensemble de lignes inséré correspondant à une erreur. Le jeton de décalage réel de l’ensemble de lignes contenant la dernière erreur est soit celui-ci, soit celui qui lui est strictement antérieur dans l’ordre d’ingestion des canaux. |
last_error_message |
Chaîne |
Un message lisible par l’être humain correspondant au dernier code d’erreur pour ce canal, avec les données sensibles du client expurgées. |
last_error_timestamp |
timestamp_utc |
Horodatage auquel la dernière erreur s’est produite. |
snowflake_avg_processing_latency_ms |
int |
Temps moyen de traitement e2e pour ce canal. |
Append Row(s)¶
L’opération Append Rows
insère un lot de lignes dans le canal donné.
POST /v2/streaming/data/databases/{databaseName}/schemas/{schemaName}/pipes/{pipeName}/channels/{channelName}/rows
Requête :
Attribut |
Obligatoire |
Composant |
Description |
---|---|---|---|
databaseName |
Oui |
URI |
Nom de la base de données, non sensible à la casse |
schemaName |
Oui |
URI |
Nom du schéma, non sensible à la casse |
pipeName |
Oui |
URI |
Canal, non sensible à la casse |
channelName |
Oui |
URI |
Nom du canal, non sensible à la casse |
continuationToken |
Oui pour les clients avec état, mais pas obligatoire pour les clients sans état |
Paramètre de requête |
Jeton de continuité de Snowflake, encapsule les séquenceurs de clients et de lignes |
offsetToken |
Non |
Paramètre de requête |
Chaîne utilisée pour l’ensemble des jetons de décalage par lot. |
rows |
Oui |
charge utile |
Charge utile des données réelles qui seront ingérées au format NDJSON. |
requestId |
Non |
Paramètre de requête |
UUID utilisé pour suivre les requêtes dans le système. |
Réponse :
Champ |
Type |
Description |
---|---|---|
status_code |
int |
Code de statut que les clients peuvent utiliser pour mapper les erreurs internes avec la documentation publique |
next_continuation_token |
string |
Le jeton de continuation suivant provient de Snowflake, qui encapsule à la fois les séquenceurs de clients et de lignes. Il doit être utilisé pour l’insertion du lot suivant. |
message |
string |
Message d’erreur descriptif expliquant l’erreur lorsque le code de réponse n’est pas 200 (Succès). Sinon, il est vide pour le code de réponse 200. |
Drop Channel¶
L’opération Drop Channel
dépose un canal sur le serveur avec ses métadonnées.
DELETE /v2/streaming/databases/{databaseName}/schemas/{schemaName}/pipes/{pipeName}/channels/{channelName}
Requête :
Attribut |
Obligatoire |
Composant |
Description |
---|---|---|---|
databaseName |
Oui |
URI |
Nom de la base de données, non sensible à la casse |
schemaName |
Oui |
URI |
Nom du schéma, non sensible à la casse |
pipeOrTableName |
Oui |
URI |
Nom du canal ou de la table, non sensible à la casse |
channelName |
Oui |
URI |
Nom du canal, non sensible à la casse |
continuationToken |
Non |
charge utile |
Jeton de continuation de Snowflake, qui encapsule les séquenceurs de clients et de lignes. S’il n’est pas fourni, nous supprimerons le canal avec le dernier séquenceur du client. |
requestId |
Non |
Paramètre de requête |
UUID utilisé pour suivre les requêtes dans le système |
Réponse :
Champ |
Type |
Description |
---|---|---|
status_code |
int |
Code de statut que les clients peuvent utiliser pour mapper les erreurs internes avec la documentation publique |
message |
string |
Message d’erreur descriptif expliquant l’erreur lorsque le code de réponse n’est pas 200 (Succès). Sinon, il est vide pour le code de réponse 200. |
Bulk Get Channel Status¶
L’opération Bulk Get Channel Status
renvoie le statut d’un canal pour un séquenceur client spécifique.
POST /v2/streaming/databases/{databaseName}/schemas/{schemaName}/pipes/{pipeName}:bulk-channel-status
Requête :
Attribut |
Obligatoire |
Composant |
Description |
---|---|---|---|
databaseName |
Oui |
URI |
Nom de la base de données, non sensible à la casse |
schemaName |
Oui |
URI |
Nom du schéma, non sensible à la casse |
pipeName |
Oui |
URI |
Nom du canal, non sensible à la casse |
channelName |
Oui |
Charge utile |
Un tableau de noms de chaînes pour lesquelles le client souhaite obtenir un statut, sensible à la casse. |
Réponse :
Champ |
Type |
Description |
---|---|---|
channel_status_code |
Chaîne |
Indique le statut du canal. |
last_committed_offset_token |
Chaîne |
Dernier jeton de décalage engagé |
database_name |
Chaîne |
Le nom de la base de données à laquelle le canal appartient. |
schema_name |
Chaîne |
Le nom du schéma auquel le canal appartient. |
nom_canal |
Chaîne |
Le nom du canal auquel le canal appartient. |
channel_name |
Chaîne |
Le nom du canal. |
rows_inserted |
int |
Un compte de toutes les lignes insérées dans ce canal. |
rows_parsed |
int |
Un compte de toutes les lignes analysées, mais pas nécessairement insérées dans ce canal. |
rows_errors |
int |
Un compte de toutes les lignes qui ont connu des erreurs lors de l’insertion dans ce canal et qui ont donc été rejetées. |
last_error_offset_upper_bound |
Chaîne |
La limite supérieure du dernier jeton de décalage de l’ensemble de lignes inséré correspondant à une erreur. Le jeton de décalage réel de l’ensemble de lignes contenant la dernière erreur est soit celui-ci, soit celui qui lui est strictement antérieur dans l’ordre d’ingestion des canaux. |
last_error_message |
Chaîne |
Un message lisible par l’être humain correspondant au dernier code d’erreur pour ce canal, avec les données sensibles du client expurgées. |
last_error_timestamp |
timestamp_utc |
Horodatage auquel la dernière erreur s’est produite. |
snowflake_avg_processing_latency_ms |
int |
Temps moyen de traitement e2e pour ce canal. |