- API-Dokumentation
- CLI
- Integrationsleitfäden
- Blog
- Wie Maschinen lernen, Wörter zu verstehen: eine Anleitung zu Einbettungen in NLP
- Eingabeaufforderungsbasiertes Lernen mit Transformers
- Ef Robots II: Wissensdegesterration und Feinabstimmung
- Effiziente Transformer I: Warnmechanismen
- Tief hierarchische, nicht überwachte Absichtsmodellierung: Nutzen ohne Trainingsdaten
- Beheben der Anmerkungsverzerrung durch Communications Mining
- Aktives Lernen: Bessere ML-Modelle in weniger Zeit
- Auf Zahlen kommt es an – Bewertung der Modellleistung mit Metriken
- Darum ist Modellvalidierung wichtig
- Vergleich von Communications Mining und Google AutoML für die Ermittlung von Konversationsdaten
Streams (Legacy)
/api/v1/datasets/<project>/<dataset_name>/streams
/api/v1/datasets/<project>/<dataset_name>/streams
Erforderliche Berechtigungen: Streams-Administrator, Bezeichnungen anzeigen
- Bash
curl -X PUT 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "stream": { "comment_filter": { "user_properties": { "number:Spend": { "maximum": 100000, "minimum": 100 }, "number:Transactions": { "one_of": [ 1 ] }, "string:Country": { "one_of": [ "uk", "de" ] } } }, "description": "Used by ACME RPA to create tickets for disputes.", "model": { "label_thresholds": [ { "name": [ "Some Label" ], "threshold": 0.37 }, { "name": [ "Another Label" ], "threshold": 0.46 }, { "name": [ "Parent Label", "Child Label" ], "threshold": 0.41 } ], "version": 8 }, "name": "dispute", "title": "Collateral Disputes" } }'
curl -X PUT 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "stream": { "comment_filter": { "user_properties": { "number:Spend": { "maximum": 100000, "minimum": 100 }, "number:Transactions": { "one_of": [ 1 ] }, "string:Country": { "one_of": [ "uk", "de" ] } } }, "description": "Used by ACME RPA to create tickets for disputes.", "model": { "label_thresholds": [ { "name": [ "Some Label" ], "threshold": 0.37 }, { "name": [ "Another Label" ], "threshold": 0.46 }, { "name": [ "Parent Label", "Child Label" ], "threshold": 0.41 } ], "version": 8 }, "name": "dispute", "title": "Collateral Disputes" } }' - Knoten
const request = require("request"); request.put( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { stream: { comment_filter: { user_properties: { "number:Spend": { maximum: 100000, minimum: 100 }, "number:Transactions": { one_of: [1] }, "string:Country": { one_of: ["uk", "de"] }, }, }, description: "Used by ACME RPA to create tickets for disputes.", model: { label_thresholds: [ { name: ["Some Label"], threshold: 0.37 }, { name: ["Another Label"], threshold: 0.46 }, { name: ["Parent Label", "Child Label"], threshold: 0.41 }, ], version: 8, }, name: "dispute", title: "Collateral Disputes", }, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );
const request = require("request"); request.put( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { stream: { comment_filter: { user_properties: { "number:Spend": { maximum: 100000, minimum: 100 }, "number:Transactions": { one_of: [1] }, "string:Country": { one_of: ["uk", "de"] }, }, }, description: "Used by ACME RPA to create tickets for disputes.", model: { label_thresholds: [ { name: ["Some Label"], threshold: 0.37 }, { name: ["Another Label"], threshold: 0.46 }, { name: ["Parent Label", "Child Label"], threshold: 0.41 }, ], version: 8, }, name: "dispute", title: "Collateral Disputes", }, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.put( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "stream": { "name": "dispute", "title": "Collateral Disputes", "description": "Used by ACME RPA to create tickets for disputes.", "model": { "version": 8, "label_thresholds": [ {"name": ["Some Label"], "threshold": 0.37}, {"name": ["Another Label"], "threshold": 0.46}, { "name": ["Parent Label", "Child Label"], "threshold": 0.41, }, ], }, "comment_filter": { "user_properties": { "string:Country": {"one_of": ["uk", "de"]}, "number:Spend": {"minimum": 100, "maximum": 100000}, "number:Transactions": {"one_of": [1]}, } }, } }, ) print(json.dumps(response.json(), indent=2, sort_keys=True))
import json import os import requests response = requests.put( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "stream": { "name": "dispute", "title": "Collateral Disputes", "description": "Used by ACME RPA to create tickets for disputes.", "model": { "version": 8, "label_thresholds": [ {"name": ["Some Label"], "threshold": 0.37}, {"name": ["Another Label"], "threshold": 0.46}, { "name": ["Parent Label", "Child Label"], "threshold": 0.41, }, ], }, "comment_filter": { "user_properties": { "string:Country": {"one_of": ["uk", "de"]}, "number:Spend": {"minimum": 100, "maximum": 100000}, "number:Transactions": {"one_of": [1]}, } }, } }, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "status": "ok", "stream": { "context": "0", "created_at": "2019-08-03T12:30:00.123456Z", "dataset_id": "abcdef0123456789", "description": "Used by ACME RPA to create tickets for disputes.", "id": "0123456789abcdef", "model": { "version": 8 }, "name": "dispute", "title": "Collateral Disputes", "updated_at": "2019-08-03T12:30:00.123456Z" } }
{ "status": "ok", "stream": { "context": "0", "created_at": "2019-08-03T12:30:00.123456Z", "dataset_id": "abcdef0123456789", "description": "Used by ACME RPA to create tickets for disputes.", "id": "0123456789abcdef", "model": { "version": 8 }, "name": "dispute", "title": "Collateral Disputes", "updated_at": "2019-08-03T12:30:00.123456Z" } }
Streams ermöglichen eine persistente, zustandsbehaftete Iteration durch Kommentare in einem Dataset, mit vorhergesagten Beschriftungen und allgemeinen Feldern, die mit einem fixierten Modell berechnet werden.
Sobald ein Stream erstellt wurde, können die Abruf- und Advance -Methoden verwendet werden, um Kommentare zu durchlaufen.
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
name | string | ja | API-Name für den Stream, der in URLs verwendet wird. Muss innerhalb eines Datasets eindeutig sein und mit [A-Za-z0-9-_]{1,256} übereinstimmen.
|
title | string | nein | Einzeiliger, visuell lesbarer Titel für den Stream. |
description | string | nein | Eine längere Beschreibung des Streams. |
model | Modell | nein | Wenn angegeben, enthalten aus diesem Stream abgerufene Kommentare Vorhersagen aus einem angehefteten Modell. |
comment_filter | CommentFilter | nein | Wenn angegeben, werden Kommentare, die nicht mit dem Filter übereinstimmen, nicht zurückgegeben. Hier finden Sie Details dazu, wie sich der Kommentarfilter auf die vom Stream zurückgegebenen Ergebnisse auswirkt. |
Model
das folgende Format:
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
version | Integer | ja | Eine Modellversion, die über die Seite Modelle angeheftet wurde. |
label_thresholds | array<LabelThreshold> | nein | Wenn diese Option festgelegt ist, werden nur Werte zurückgegeben, die den angegebenen label_thresholds entsprechen. Wenn diese Option nicht festgelegt ist, werden alle Beschriftungen und alle Vorhersagewerte zurückgegeben.
|
LabelThreshold
das folgende Format:
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
name | array<string> | ja | Der Name der zurückzugebenden Bezeichnung, formatiert als Liste hierarchischer Bezeichnungen. Beispielsweise hat die Beschriftung "Some Label" das Format ["Some Label"] und die Beschriftung "Parent Label > Child Label" das Format ["Parent Label", "Child Label"] .
|
threshold | Nummer | ja | Der Konfidenz-Schwellenwert, der für die Bezeichnung verwendet werden soll (eine Zahl zwischen 0,0 und 1,0). Die Bezeichnung wird für einen Kommentar nur zurückgegeben, wenn die Vorhersage über diesem Schwellenwert liegt. |
CommentFilter
das folgende Format:
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
user_properties | UserPropertyFilter | nein | Ein Filter, der auf die Benutzereigenschaften eines Kommentars angewendet wird. Weitere Informationen zu Benutzereigenschaften finden Sie in der Kommentarreferenz. |
UserPropertyFilter
ist eine Zuordnung von Benutzereigenschaftsnamen, die gefiltert werden sollen. String-Eigenschaften können nach Werten in einem Satz gefiltert werden ({"one_of": ["val_1", "val_2"]}
). Zahleneigenschaften können entweder nach Werten in einem Satz ({"one_of": [123, 456]}
) oder nach einem Bereich ({"minimum": 123, "maximum": 456}
) gefiltert werden.
/api/v1/datasets/<project>/<dataset_name>/streams
/api/v1/datasets/<project>/<dataset_name>/streams
- Bash
curl -X PUT 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "stream": { "comment_filter": { "user_properties": { "number:Spend": { "maximum": 100000, "minimum": 100 }, "number:Transactions": { "one_of": [ 1 ] }, "string:Country": { "one_of": [ "uk", "de" ] } } }, "description": "Used by ACME RPA to create tickets for disputes.", "model": { "label_thresholds": [ { "name": [ "Some Label" ], "threshold": 0.37 }, { "name": [ "Another Label" ], "threshold": 0.46 }, { "name": [ "Parent Label", "Child Label" ], "threshold": 0.41 } ], "version": 8 }, "name": "dispute", "title": "Collateral Disputes" } }'
curl -X PUT 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "stream": { "comment_filter": { "user_properties": { "number:Spend": { "maximum": 100000, "minimum": 100 }, "number:Transactions": { "one_of": [ 1 ] }, "string:Country": { "one_of": [ "uk", "de" ] } } }, "description": "Used by ACME RPA to create tickets for disputes.", "model": { "label_thresholds": [ { "name": [ "Some Label" ], "threshold": 0.37 }, { "name": [ "Another Label" ], "threshold": 0.46 }, { "name": [ "Parent Label", "Child Label" ], "threshold": 0.41 } ], "version": 8 }, "name": "dispute", "title": "Collateral Disputes" } }' - Knoten
const request = require("request"); request.put( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { stream: { comment_filter: { user_properties: { "number:Spend": { maximum: 100000, minimum: 100 }, "number:Transactions": { one_of: [1] }, "string:Country": { one_of: ["uk", "de"] }, }, }, description: "Used by ACME RPA to create tickets for disputes.", model: { label_thresholds: [ { name: ["Some Label"], threshold: 0.37 }, { name: ["Another Label"], threshold: 0.46 }, { name: ["Parent Label", "Child Label"], threshold: 0.41 }, ], version: 8, }, name: "dispute", title: "Collateral Disputes", }, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );
const request = require("request"); request.put( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { stream: { comment_filter: { user_properties: { "number:Spend": { maximum: 100000, minimum: 100 }, "number:Transactions": { one_of: [1] }, "string:Country": { one_of: ["uk", "de"] }, }, }, description: "Used by ACME RPA to create tickets for disputes.", model: { label_thresholds: [ { name: ["Some Label"], threshold: 0.37 }, { name: ["Another Label"], threshold: 0.46 }, { name: ["Parent Label", "Child Label"], threshold: 0.41 }, ], version: 8, }, name: "dispute", title: "Collateral Disputes", }, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.put( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "stream": { "name": "dispute", "title": "Collateral Disputes", "description": "Used by ACME RPA to create tickets for disputes.", "model": { "version": 8, "label_thresholds": [ {"name": ["Some Label"], "threshold": 0.37}, {"name": ["Another Label"], "threshold": 0.46}, { "name": ["Parent Label", "Child Label"], "threshold": 0.41, }, ], }, "comment_filter": { "user_properties": { "string:Country": {"one_of": ["uk", "de"]}, "number:Spend": {"minimum": 100, "maximum": 100000}, "number:Transactions": {"one_of": [1]}, } }, } }, ) print(json.dumps(response.json(), indent=2, sort_keys=True))
import json import os import requests response = requests.put( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "stream": { "name": "dispute", "title": "Collateral Disputes", "description": "Used by ACME RPA to create tickets for disputes.", "model": { "version": 8, "label_thresholds": [ {"name": ["Some Label"], "threshold": 0.37}, {"name": ["Another Label"], "threshold": 0.46}, { "name": ["Parent Label", "Child Label"], "threshold": 0.41, }, ], }, "comment_filter": { "user_properties": { "string:Country": {"one_of": ["uk", "de"]}, "number:Spend": {"minimum": 100, "maximum": 100000}, "number:Transactions": {"one_of": [1]}, } }, } }, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "status": "ok", "stream": { "context": "0", "created_at": "2019-08-03T12:30:00.123456Z", "dataset_id": "abcdef0123456789", "description": "Used by ACME RPA to create tickets for disputes.", "id": "0123456789abcdef", "model": { "version": 8 }, "name": "dispute", "title": "Collateral Disputes", "updated_at": "2019-08-03T12:30:00.123456Z" } }
{ "status": "ok", "stream": { "context": "0", "created_at": "2019-08-03T12:30:00.123456Z", "dataset_id": "abcdef0123456789", "description": "Used by ACME RPA to create tickets for disputes.", "id": "0123456789abcdef", "model": { "version": 8 }, "name": "dispute", "title": "Collateral Disputes", "updated_at": "2019-08-03T12:30:00.123456Z" } }
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>
- Bash
curl -X GET 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute' \ -H "Authorization: Bearer $REINFER_TOKEN"
curl -X GET 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute' \ -H "Authorization: Bearer $REINFER_TOKEN" - Knoten
const request = require("request"); request.get( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );
const request = require("request"); request.get( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.get( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, ) print(json.dumps(response.json(), indent=2, sort_keys=True))
import json import os import requests response = requests.get( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "status": "ok", "stream": { "context": "0", "created_at": "2019-08-03T12:30:00.123456Z", "dataset_id": "abcdef0123456789", "description": "Used by ACME RPA to create tickets for disputes.", "id": "0123456789abcdef", "model": { "version": 8 }, "name": "dispute", "title": "Collateral Disputes", "updated_at": "2019-08-03T12:30:00.123456Z" } }
{ "status": "ok", "stream": { "context": "0", "created_at": "2019-08-03T12:30:00.123456Z", "dataset_id": "abcdef0123456789", "description": "Used by ACME RPA to create tickets for disputes.", "id": "0123456789abcdef", "model": { "version": 8 }, "name": "dispute", "title": "Collateral Disputes", "updated_at": "2019-08-03T12:30:00.123456Z" } }
/api/v1/datasets/<project>/<dataset_name>/streams
/api/v1/datasets/<project>/<dataset_name>/streams
- Bash
curl -X GET 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams' \ -H "Authorization: Bearer $REINFER_TOKEN"
curl -X GET 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams' \ -H "Authorization: Bearer $REINFER_TOKEN" - Knoten
const request = require("request"); request.get( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );
const request = require("request"); request.get( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.get( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, ) print(json.dumps(response.json(), indent=2, sort_keys=True))
import json import os import requests response = requests.get( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "status": "ok", "stream": { "context": "0", "created_at": "2019-08-03T12:30:00.123456Z", "dataset_id": "abcdef0123456789", "description": "Used by ACME RPA to create tickets for disputes.", "id": "0123456789abcdef", "model": { "version": 8 }, "name": "dispute", "title": "Collateral Disputes", "updated_at": "2019-08-03T12:30:00.123456Z" } }
{ "status": "ok", "stream": { "context": "0", "created_at": "2019-08-03T12:30:00.123456Z", "dataset_id": "abcdef0123456789", "description": "Used by ACME RPA to create tickets for disputes.", "id": "0123456789abcdef", "model": { "version": 8 }, "name": "dispute", "title": "Collateral Disputes", "updated_at": "2019-08-03T12:30:00.123456Z" } }
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>
- Bash
curl -X DELETE 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute' \ -H "Authorization: Bearer $REINFER_TOKEN"
curl -X DELETE 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute' \ -H "Authorization: Bearer $REINFER_TOKEN" - Knoten
const request = require("request"); request.delete( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );
const request = require("request"); request.delete( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.delete( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, ) print(json.dumps(response.json(), indent=2, sort_keys=True))
import json import os import requests response = requests.delete( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "status": "ok" }
{ "status": "ok" }
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>/fetch
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>/fetch
- Bash
curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/fetch' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "size": 8 }'
curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/fetch' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "size": 8 }' - Knoten
const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/fetch", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { size: 8 }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );
const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/fetch", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { size: 8 }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/fetch", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={"size": 8}, ) print(json.dumps(response.json(), indent=2, sort_keys=True))
import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/fetch", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={"size": 8}, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "filtered": 6, "is_end_sequence": false, "results": [ { "comment": { "context": "1", "created_at": "2018-10-15T15:39:51.815000Z", "id": "0123456789abcdef", "last_modified": "2018-10-15T15:39:51.815000Z", "messages": [ { "body": { "text": "Hi Bob,\n\nCould you send me today's figures?" }, "from": "alice@company.com", "sent_at": "2011-12-11T11:02:03.000000+00:00", "signature": { "text": "Thanks,\nAlice" }, "subject": { "text": "Today's figures" }, "to": ["bob@organisation.org"] } ], "source_id": "18ba5ce699f8da1f", "text_format": "plain", "thread_id": "3c314542414538353242393446393", "timestamp": "2011-12-11T01:02:03.000000+00:00", "uid": "18ba5ce699f8da1f.0123456789abcdef", "user_properties": { "number:Participants": 2, "number:Position in Thread": 1, "number:Recipients": 1, "string:Folder": "Sent (/ Sent)", "string:Has Signature": "Yes", "string:Message ID": "<abcdef@abc.company.com>", "string:Sender": "alice@company.com", "string:Sender Domain": "company.com", "string:Thread": "<abcdef@abc.company.com>" } }, "entities": [], "labels": [], "sequence_id": "qs8QcHIBAACuYzDeit-pwQdWGYGQImdy" }, { "comment": { "context": "1", "created_at": "2018-10-15T18:39:51.815000Z", "id": "abcdef0123456789", "last_modified": "2018-10-15T18:39:51.815000Z", "messages": [ { "body": { "text": "Alice,\n\nHere are the figures for today." }, "from": "bob@organisation.org", "sent_at": "2011-12-11T11:02:03.000000+00:00", "signature": { "text": "Regards,\nBob" }, "subject": { "text": "RE: Today's figures" }, "to": ["alice@company.com"] } ], "source_id": "18ba5ce699f8da1f", "text_format": "plain", "thread_id": "3c314542414538353242393446393", "timestamp": "2011-12-11T02:02:03.000000+00:00", "uid": "18ba5ce699f8da1f.abcdef0123456789", "user_properties": { "number:Participants": 3, "number:Position in Thread": 2, "number:Recipients": 2, "string:Folder": "Inbox (/ Inbox)", "string:Has Signature": "No", "string:Message ID": "def@xyz.project.com", "string:Sender": "bob@organisation.org", "string:Sender Domain": "organisation.org", "string:Thread": "<abcdef@abc.company.com>" } }, "entities": [], "labels": [ { "name": ["Some Top-Level Label"], "probability": 0.8374786376953125 }, { "name": ["Another Top-Level Label", "Child Label"], "probability": 0.6164003014564514 } ], "sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR" } ], "sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR", "status": "ok" }
{ "filtered": 6, "is_end_sequence": false, "results": [ { "comment": { "context": "1", "created_at": "2018-10-15T15:39:51.815000Z", "id": "0123456789abcdef", "last_modified": "2018-10-15T15:39:51.815000Z", "messages": [ { "body": { "text": "Hi Bob,\n\nCould you send me today's figures?" }, "from": "alice@company.com", "sent_at": "2011-12-11T11:02:03.000000+00:00", "signature": { "text": "Thanks,\nAlice" }, "subject": { "text": "Today's figures" }, "to": ["bob@organisation.org"] } ], "source_id": "18ba5ce699f8da1f", "text_format": "plain", "thread_id": "3c314542414538353242393446393", "timestamp": "2011-12-11T01:02:03.000000+00:00", "uid": "18ba5ce699f8da1f.0123456789abcdef", "user_properties": { "number:Participants": 2, "number:Position in Thread": 1, "number:Recipients": 1, "string:Folder": "Sent (/ Sent)", "string:Has Signature": "Yes", "string:Message ID": "<abcdef@abc.company.com>", "string:Sender": "alice@company.com", "string:Sender Domain": "company.com", "string:Thread": "<abcdef@abc.company.com>" } }, "entities": [], "labels": [], "sequence_id": "qs8QcHIBAACuYzDeit-pwQdWGYGQImdy" }, { "comment": { "context": "1", "created_at": "2018-10-15T18:39:51.815000Z", "id": "abcdef0123456789", "last_modified": "2018-10-15T18:39:51.815000Z", "messages": [ { "body": { "text": "Alice,\n\nHere are the figures for today." }, "from": "bob@organisation.org", "sent_at": "2011-12-11T11:02:03.000000+00:00", "signature": { "text": "Regards,\nBob" }, "subject": { "text": "RE: Today's figures" }, "to": ["alice@company.com"] } ], "source_id": "18ba5ce699f8da1f", "text_format": "plain", "thread_id": "3c314542414538353242393446393", "timestamp": "2011-12-11T02:02:03.000000+00:00", "uid": "18ba5ce699f8da1f.abcdef0123456789", "user_properties": { "number:Participants": 3, "number:Position in Thread": 2, "number:Recipients": 2, "string:Folder": "Inbox (/ Inbox)", "string:Has Signature": "No", "string:Message ID": "def@xyz.project.com", "string:Sender": "bob@organisation.org", "string:Sender Domain": "organisation.org", "string:Thread": "<abcdef@abc.company.com>" } }, "entities": [], "labels": [ { "name": ["Some Top-Level Label"], "probability": 0.8374786376953125 }, { "name": ["Another Top-Level Label", "Child Label"], "probability": 0.6164003014564514 } ], "sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR" } ], "sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR", "status": "ok" }
Sobald ein Stream erstellt wurde, kann er abgefragt werden, um Kommentare und deren vorhergesagte Beschriftungen und allgemeine Felder abzurufen. Im Folgenden finden Sie einige wichtige Aspekte, die beim Abrufen von Kommentaren aus einem Stream beachtet werden sollten.
Kommentarwarteschlange
Wenn ein Stream erstellt wird, wird seine Anfangsposition gleich seiner Erstellungszeit festgelegt. Bei Bedarf können Sie den Stream auf eine andere Position einstellen (entweder zeitlich vorwärts oder rückwärts), indem Sie den Endpunkt zurücksetzen verwenden. Der Stream gibt Kommentare ab seiner aktuellen Position zurück. Die Position des Kommentars in der Kommentarwarteschlange wird durch die Reihenfolge bestimmt, in der die Kommentare hochgeladen wurden.
Vorrücken Ihrer Position in der Warteschlange
Da der Stream ab seiner aktuellen Position immer Kommentare zurückgibt, sollte er nach jeder Abrufanforderung mithilfe des erweiterten Endpunkts zur nächsten Position vorrückt werden. Auf diese Weise garantiert die API, dass alle Kommentare mindestens einmal verarbeitet werden – wenn Ihre Anwendung bei der Verarbeitung eines Batches fehlschlägt, wird sie beim Neustart desselben Batches aufgenommen. (Beachten Sie, dass eine Anwendung einen Kommentar erfolgreich verarbeiten kann, aber im Vorabschritt fehlschlagen kann. Daher ist es wichtig, dass ein Kommentar mehrmals angezeigt wird.)
sequence_id
des Batches) oder ihn für jeden einzelnen Kommentar vorrücken (mit dem in der Antwort enthaltenen sequence_id
des Kommentars). .
Kommentar-Filter
comment_filter
angegeben wurde, werden Kommentare, die dem Filter nicht entsprechen, nicht in die Ergebnisse aufgenommen, zählen aber weiterhin zum angeforderten size
, sodass Sie möglicherweise Antworten sehen, bei denen alle size
-Kommentare gefiltert werden out, was zu einem leeren results
-Array führt. Im folgenden Beispiel fordern wir 8 Kommentare an, die alle herausgefiltert werden.
{
"filtered": 8,
"results": [],
"sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR",
"status": "ok"
}
{
"filtered": 8,
"results": [],
"sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR",
"status": "ok"
}
max_filtered
festlegen, der verhindert, dass gefilterte Kommentare auf den angeforderten size
werden.
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
size | Nummer | ja | Die Anzahl der Kommentare, die für diesen Stream abgerufen werden sollen. Gibt weniger zurück, wenn das Ende des Batches erreicht wird oder wenn Kommentare gemäß dem Kommentarfilter herausgefiltert werden. Der Maximalwert ist 1024. |
max_filtered | Nummer | nein | Praktischer Parameter für Streams mit einem Kommentarfilter. Wenn angegeben, werden bis zu max_filtered gefilterte Kommentare nicht auf die angeforderten size . Dies ist nützlich, wenn Sie erwarten, dass eine große Anzahl von Kommentaren nicht mit dem Filter übereinstimmt. Hat keine Auswirkung auf Streams ohne Kommentarfilter. Der Maximalwert ist 1024.
|
Name | Typ | BESCHREIBUNG |
---|---|---|
status | string | ok wenn die Anforderung erfolgreich ist, oder error im Falle eines Fehlers. Weitere Informationen zu Fehlerantworten finden Sie in der Übersicht .
|
filtered | Nummer | Anzahl der Kommentare, die gemäß einem Kommentarfilter herausgefiltert wurden. Wenn der Stream ohne Filter erstellt wurde, ist diese Zahl immer 0 .
|
sequence_id | string | Die Batch-Sequence-ID. Wird verwendet, um die Verarbeitung dieses Batches zu bestätigen und mit dem Stream zum nächsten Batch fortzufahren. |
is_end_sequence | _bool_ | „true“, wenn zum Zeitpunkt der Anforderung keine zusätzlichen Ergebnisse im Stream vorhanden waren. Andernfalls „False“. |
results | array<Result> | Ein Array mit Ergebnisobjekten. |
Result
das folgende Format:
Name | Typ | BESCHREIBUNG |
---|---|---|
comment | Kommentar (Comment) | Kommentieren Sie Daten aus. Eine detaillierte Erklärung finden Sie unter Kommentarreferenz. |
sequence_id | string | Die Sequence-ID des Kommentars. Wird verwendet, um die Verarbeitung dieses Kommentars zu bestätigen und den Stream zum nächsten Kommentar fortzusetzen. |
labels | array<Label> | Ein Array mit vorhergesagten Beschriftungen für diesen Kommentar, bei dem Label das hier beschriebene Format hat.
|
entities | array<Entity> | Ein Array mit vorhergesagten Entitäten für diesen Kommentar, wobei Entity ein hier beschriebenes Format hat.
|
label_properties | array<LabelProperty> | Ein Array mit vorhergesagten Beschriftungseigenschaften für diesen Kommentar, bei dem LabelProperty ein hier beschriebenes Format hat.
|
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>/advance
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>/advance
Erforderliche Berechtigungen: Streams verbrauchen, Beschriftungen anzeigen.
- Bash
curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/advance' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR" }'
curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/advance' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR" }' - Knoten
const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/advance", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { sequence_id: "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR" }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );
const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/advance", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { sequence_id: "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR" }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/advance", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={"sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR"}, ) print(json.dumps(response.json(), indent=2, sort_keys=True))
import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/advance", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={"sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR"}, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR", "status": "ok" }
{ "sequence_id": "qs8QcHIBAADJ1p3W2FtmBB3QiOJsCJlR", "status": "ok" }
sequence_id
zurück, das die Position darstellt, an der sie abgerufen wurde. Wenn Sie den gleichen sequence_id
an die Vorab-API übergeben, wird sichergestellt, dass der Stream beim nächsten Abruf an dieser Position gestartet wird. Sie können zum nächsten Batch vorgehen, indem Sie die sequence_id
des aktuellen Batches verwenden. Alternativ können Sie mit dem sequence_id
des aktuellen Kommentars zum nächsten Kommentar übergehen.
Da eine Anwendung einen Kommentar erfolgreich verarbeiten kann, aber im erweiterten Schritt fehlschlagen kann, ist es wichtig, dass ein Kommentar auf der Clientanwendungsseite mehrmals angezeigt wird.
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
sequence_id | string | ja | Die Sequence-ID, zu der der Stream weitergeleitet werden soll. |
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>/reset
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>/reset
Erforderliche Berechtigungen: Streams verbrauchen, Beschriftungen anzeigen.
- Bash
curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/reset' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "to_comment_created_at": "2020-06-03T16:05:00" }'
curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/reset' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "to_comment_created_at": "2020-06-03T16:05:00" }' - Knoten
const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/reset", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { to_comment_created_at: "2020-06-03T16:05:00" }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );
const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/reset", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { to_comment_created_at: "2020-06-03T16:05:00" }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/reset", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={"to_comment_created_at": "2020-06-03T16:05:00"}, ) print(json.dumps(response.json(), indent=2, sort_keys=True))
import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/reset", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={"to_comment_created_at": "2020-06-03T16:05:00"}, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "sequence_id": "4LvtenIBAAA=", "status": "ok", "stream": { "created_at": "2019-08-03T12:30:00.123456Z", "dataset_id": "abcdef0123456789", "description": "Used by ACME RPA to create tickets for disputes.", "id": "0123456789abcdef", "model": { "version": 8 }, "name": "dispute", "title": "Collateral Disputes", "updated_at": "2019-08-03T12:30:00.123456Z" } }
{ "sequence_id": "4LvtenIBAAA=", "status": "ok", "stream": { "created_at": "2019-08-03T12:30:00.123456Z", "dataset_id": "abcdef0123456789", "description": "Used by ACME RPA to create tickets for disputes.", "id": "0123456789abcdef", "model": { "version": 8 }, "name": "dispute", "title": "Collateral Disputes", "updated_at": "2019-08-03T12:30:00.123456Z" } }
created_at
des Kommentars und nicht die Eigenschaft timestamp
).
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
to_comment_created_at | string | ja | Ein ISO-8601-Zeitstempel. |
sequence_id
, das der neuen Streamposition entspricht.
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>/exceptions
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>/exceptions
- Bash
curl -X PUT 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "exceptions": [ { "metadata": { "type": "No Prediction" }, "uid": "18ba5ce699f8da1f.abcdef0123456789" }, { "metadata": { "type": "Wrong Prediction" }, "uid": "18ba5ce699f8da1f.0123456789abcdef" } ] }'
curl -X PUT 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "exceptions": [ { "metadata": { "type": "No Prediction" }, "uid": "18ba5ce699f8da1f.abcdef0123456789" }, { "metadata": { "type": "Wrong Prediction" }, "uid": "18ba5ce699f8da1f.0123456789abcdef" } ] }' - Knoten
const request = require("request"); request.put( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { exceptions: [ { metadata: { type: "No Prediction" }, uid: "18ba5ce699f8da1f.abcdef0123456789", }, { metadata: { type: "Wrong Prediction" }, uid: "18ba5ce699f8da1f.0123456789abcdef", }, ], }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );
const request = require("request"); request.put( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { exceptions: [ { metadata: { type: "No Prediction" }, uid: "18ba5ce699f8da1f.abcdef0123456789", }, { metadata: { type: "Wrong Prediction" }, uid: "18ba5ce699f8da1f.0123456789abcdef", }, ], }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.put( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "exceptions": [ { "uid": "18ba5ce699f8da1f.abcdef0123456789", "metadata": {"type": "No Prediction"}, }, { "uid": "18ba5ce699f8da1f.0123456789abcdef", "metadata": {"type": "Wrong Prediction"}, }, ] }, ) print(json.dumps(response.json(), indent=2, sort_keys=True))
import json import os import requests response = requests.put( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "exceptions": [ { "uid": "18ba5ce699f8da1f.abcdef0123456789", "metadata": {"type": "No Prediction"}, }, { "uid": "18ba5ce699f8da1f.0123456789abcdef", "metadata": {"type": "Wrong Prediction"}, }, ] }, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "status": "ok" }
{ "status": "ok" }
Mit diesem Endpunkt können Sie Kommentare als Ausnahmen in der Plattform mit Tags versehen, sodass ein Modelltrainer sie überprüfen und beschriften kann, um das Modell zu verbessern. Wir empfehlen, die Kommentare zu markieren, für die das Modell keine Vorhersagen zurückgegeben hat, und Kommentare, für die das Modell falsche Vorhersagen zurückgegeben hat. (Hilfe beim Entwerfen des Ablaufs der Ausnahmebehandlung finden Sie im Integrationshandbuch).
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
exceptions | array<Exception> | ja | Eine Liste der Ausnahmen. |
Exception
das folgende Format:
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
uid | string | ja | Der uid des Kommentars, der als Ausnahme gekennzeichnet werden soll.
|
metadata | Metadata | ja | Ein Objekt, das Ausnahmemetadaten enthält. |
Metadata
das folgende Format:
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
type | string | ja | Der Ausnahmetyp ist als Filtereigenschaft in der Communications Mining-UI verfügbar. Der Wert kann eine beliebige Zeichenfolge sein. Wählen Sie eine kurze, leicht verständliche Zeichenfolge wie „Keine Vorhersage“ und „False Vorhersage“. |
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>/exceptions?uid=<comment_uid0>[&uid=<comment_uid1>...]
/api/v1/datasets/<project>/<dataset_name>/streams/<stream_name>/exceptions?uid=<comment_uid0>[&uid=<comment_uid1>...]
- Bash
curl -X DELETE 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions?uid=18ba5ce699f8da1f.abcdef0123456789&uid=18ba5ce699f8da1f.0123456789abcdef' \ -H "Authorization: Bearer $REINFER_TOKEN"
curl -X DELETE 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions?uid=18ba5ce699f8da1f.abcdef0123456789&uid=18ba5ce699f8da1f.0123456789abcdef' \ -H "Authorization: Bearer $REINFER_TOKEN" - Knoten
const request = require("request"); request.delete( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions?uid=18ba5ce699f8da1f.abcdef0123456789&uid=18ba5ce699f8da1f.0123456789abcdef", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );
const request = require("request"); request.delete( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions?uid=18ba5ce699f8da1f.abcdef0123456789&uid=18ba5ce699f8da1f.0123456789abcdef", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.delete( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions?uid=18ba5ce699f8da1f.abcdef0123456789&uid=18ba5ce699f8da1f.0123456789abcdef", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, ) print(json.dumps(response.json(), indent=2, sort_keys=True))
import json import os import requests response = requests.delete( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/streams/dispute/exceptions?uid=18ba5ce699f8da1f.abcdef0123456789&uid=18ba5ce699f8da1f.0123456789abcdef", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "status": "ok" }
{ "status": "ok" }
Ausnahmen können mit der Kommentar-UID nicht mehr markiert werden.
- Streams
- Erstellen Sie einen Stream
- Aktualisieren Sie einen Stream
- Rufen Sie einen Stream nach Namen ab
- Rufen Sie alle Streams ab
- Löschen Sie einen Stream
- Kommentare aus einem Stream abrufen
- Bringen Sie einen Stream vor
- Einen Stream zurücksetzen
- Kennzeichnen Sie eine Ausnahme
- Entfernen Sie das Tag einer Ausnahme