Berichterstellungs-API-Endpunkte
Berichterstellungs-API-Endpunkte
Warnung
Endpunkte, die in der API für die Berichterstellung enthalten sind, sind private Endpunkte und unterliegen derzeit keiner Alterungsrichtlinie. Anthology Ally kann diese Endpunkte je nach unserer Roadmap oder in zukünftigen Versionen ändern oder aktualisieren.
Lesen Sie die folgende technische Dokumentation, um zu erfahren, wie Sie Ihre Endpunkte entsprechend einrichten und anpassen. Weitere Informationen finden Sie unter Ally-API in ein externes Berichtstool integrieren.
Verfügbare Methoden
Für die Ally-API für die Berichterstellung gibt es zwei Methoden. Im folgenden Abschnitt werden sie beschrieben:
Methode | URL | HTTP-Anforderungstyp | Beschreibung |
Overall | https://[Region]/api/v2/clients/[Ally-Client-ID]/reports/overall | Get | Standardmäßig gibt diese Methode ein Dataset mit Informationen zum Kurs, WYSIWYG sowie den Ergebnissen und Dateitypen der Dateien zurück, die in jedem Kurs der LMS-Instanz enthalten sind, unabhängig davon, ob Ally aktiviert ist oder nicht. |
Issues | https://[Region]/api/v2/clients/[Ally-Client-ID]/reports/issues | Get | Standardmäßig gibt diese Methode ein Dataset mit Informationen zu allen Problemen mit der Barrierefreiheit in jedem Kurs zurück, der in der LMS-Instanz enthalten ist, unabhängig davon, ob Ally aktiviert ist oder nicht. |
Tipp
Ersetzen Sie [Ally-Client-ID] durch Ihre Ally-ID. Wenn Sie Ihre ID nicht kennen, können Sie ein Support-Ticket erstellen, um sie anzufordern.
Tipp
Ersetzen Sie [Region] abhängig von der Region, in der die Ally-Umgebung Ihrer Institution gehostet wird:
US-Rechenzentrum: prod.ally.ac
Kanadisches Rechenzentrum: prod-ca-central-1.ally.ac
Europäisches Rechenzentrum: prod-eu-central-1.ally.ac
Rechenzentrum in Singapur: prod-ap-southeast-1.ally.ac
Australisches Rechenzentrum: prod-ap-southeast-2.ally.ac
HTTP-Status-Antwort
Die Ally-API enthält in den Metadaten ein Statusfeld:
Status 200 - Erfolgreich: Ihre Anforderung wurde erfolgreich empfangen, und das angeforderte Dataset ist Teil der Antwort.
Status 202 - Verarbeitung: Ihre Anfrage wurde erfolgreich empfangen, aber der Datensatz befindet sich in Vorbereitung und ist noch nicht verfügbar. Wiederholen Sie Ihre Anfrage nach einiger Zeit (empfohlen wird mindestens eine Minute).
Status 401 - Nicht autorisiert: Die Ally-Client-ID oder das Autorisierungstoken sind nicht korrekt.
Status 400 - Ungültige Anforderung: Die URL hat einen ungültigen Parameternamen, z. B. eine unbekannte Filteroption, einen unbekannten Operator oder Wert. Überprüfen Sie die Syntax der URL. Denken Sie daran, dass bei einigen Filter- und Sortieroptionen zwischen Groß- und Kleinschreibung unterschieden wird.
Methodendokumentation
Methode: Insgesamt
HTTP-Anforderung: GET
https:// [Region]/api/v2/clients/[Ally-Client-ID]/reports/overall
Ersetzen Sie [Ally-Client-ID] durch Ihre Ally-ID. Wenn Sie Ihre ID nicht kennen, können Sie ein Support-Ticket erstellen, um sie anzufordern.
Ersetzen Sie [Region] abhängig von der Region, in der die Ally-Umgebung Ihrer Institution gehostet wird:
US-Rechenzentrum: prod.ally.ac
Kanadisches Rechenzentrum: prod-ca-central-1.ally.ac
Europäisches Rechenzentrum: prod-eu-central-1.ally.ac
Rechenzentrum in Singapur: prod-ap-southeast-1.ally.ac
Australisches Rechenzentrum: prod-ap-southeast-2.ally.ac
Autorisierung: OAuth-Bearer-Token.
Parameter: Optionale Filter oder Sortieroptionen.
Anfragetext: Keine
Antwort:
{
"data": [
{
"application/x-quiz": 2,
"observedDeletedOn": "",
"termName": "Fall 2016",
"courseId": "1",
"application/x-announcement": 0,
"image": 4,
"termId": "2",
"document": 93,
"allyEnabled": true,
"pdf": 74,
"courseCode": "BIO101",
"application/x-assignment": 0,
"departmentId": "1",
"totalFiles": 192,
"courseUrl": "https://ally.instructure.com/courses/1",
"departmentName": "Anthology Ally",
"application/x-page": 1,
"filesScore": 0.6022810739019293,
"application/x-syllabus": 1,
"numberOfStudents": 1,
"html-page": 5,
"lastCheckedOn": "2022-04-13 15:33:23",
"WYSIWYGScore": 1.0,
"totalWYSIWYG": 5,
"courseName": "Biology 101",
"application/x-discussion-topic": 1,
"other": 11,
"overallScore": 0.6129724428830603,
"presentation": 5
}
],
"metadata": {
"filteredTotal": 0,
"total": 7186,
"to": 7186,
"status": "Processing",
"from": 1
}
} Methode: Probleme
HTTP-Anforderung: GET
https:// [Region]/api/v2/clients/[Ally-Client-ID]/reports/overall
Ersetzen Sie [Ally-Client-ID] durch Ihre Ally-ID. Wenn Sie Ihre ID nicht kennen, können Sie ein Support-Ticket erstellen, um sie anzufordern.
Ersetzen Sie [Region] abhängig von der Region, in der die Ally-Umgebung Ihrer Institution gehostet wird:
US-Rechenzentrum: prod.ally.ac
Kanadisches Rechenzentrum: prod-ca-central-1.ally.ac
Europäisches Rechenzentrum: prod-eu-central-1.ally.ac
Rechenzentrum in Singapur: prod-ap-southeast-1.ally.ac
Australisches Rechenzentrum: prod-ap-southeast-2.ally.ac
Autorisierung: OAuth-Bearertoken
Parameter: Optionale Filter oder Sortieroptionen.
Anfragetext: Keine
Antwort:
{
"data": [
{
"imageDecorative2": 4,
"htmlEmptyHeading2": 0,
"imageSeizure1": 2,
"observedDeletedOn": "",
"htmlObjectAlt2": 0,
"security1": 3,
"termName": "Fall 2016",
"courseId": "1",
"languageCorrect3": 14,
"htmlColorContrast2": 2,
"htmlLinkName3": 0,
"termId": "2",
"languagePresence3": 10,
"allyEnabled": true,
"htmlLabel2": 0,
"alternativeText2": 68,
"htmlImageAlt2": 0,
"htmlImageRedundantAlt3": 0,
"headingsPresence2": 20,
"courseCode": "BIO101",
"headingsSequential3": 4,
"departmentId": "1",
"htmlHeadingsPresence2": 0,
"courseUrl": "https://ally.instructure.com/courses/1",
"headingsStartAtOne3": 4,
"departmentName": "Anthology Ally",
"htmlHeadingsStart2": 0,
"htmlTdHasHeader2": 0,
"htmlList3": 0,
"htmlDefinitionList3": 0,
"htmlCaption2": 0,
"tableHeaders2": 23,
"htmlEmptyTableHeader2": 0,
"htmlHasLang3": 1,
"ocred2": 0,
"scanned1": 6,
"htmlBrokenLink2": 0,
"numberOfStudents": 1,
"htmlHeadingOrder3": 0,
"lastCheckedOn": "2022-04-13 15:33:23",
"headingsHigherLevel3": 0,
"contrast2": 28,
"title3": 46,
"imageOcr3": 0,
"tagged2": 4,
"libraryReference": 172,
"courseName": "Biology 101",
"imageContrast2": 0,
"imageDescription2": 4,
"htmlTitle3": 1,
"parsable1": 2
}
],
"metadata": {
"filteredTotal": 0,
"total": 7186,
"to": 7186,
"status": "Processing",
"from": 1
}
} Wobei gilt:
Daten: Enthält den Datensatz der Ergebnisse.
Metadaten:
An: Datensatz, zu dem die Daten abgerufen werden, es ist "offset" + "limit" oder "total", wenn die Summe "total" überschreitet.
Von: Datensatz, von dem aus die Daten beginnen, es ist "offset" + 1.
Gesamt: Gesamtzahl der Kurse, die von Ally in der LMS-Instanz berücksichtigt wurden.
Offset - ab welchem Datensatz beginnt
Die erste Zeile ist Offset = 0,
Wenn Offset < 0, dann erhält der Benutzer den Fehler 400: [Ungültiger Wert (Parameter=Offset, Meldung=Keine solchen Daten)],
Wenn (offset >= total) => dann erhält der Benutzer den Fehler 400 - [Ungültiger Wert (parameter=offset, message=No such data) ]
Limit - wie viele Datensätze ab Offset abgerufen werden
Bei (Limit < 1) erhält der Benutzer den Fehler 400: [Ungültiger Wert (Parameter = Limit, Meldung = Limit außerhalb des Grenzwerts)]
Wenn (Limit > 10000), erhält der Benutzer den Fehler 400 - [Ungültiger Wert (parameter=limit, message=Limit außerhalb der Grenzen)]
Wenn (Offset < total && offset + limit > Total), dann ändern wir das Limit im Hintergrund für Sie, und die Daten werden bis zum Schluss (Total) abgerufen
Filter und Sortieroptionen
Endpunktantworten können in der URL gefiltert werden. In diesem Abschnitt werden die verfügbaren Optionen beschrieben:
Sortieroptionen
Sie können festlegen, ob Sie die Ergebnisse nach einem Kriterium aufsteigend oder absteigend sortiert anzeigen möchten. Wenn Sie eine Sortieroption hinzufügen, müssen Sie den Sortierparameter wie unten beschrieben hinzufügen:
endpoint-url?sort=<Sort parameter value>
Dabei kann <Parameterwert sortieren> einer der folgenden Parameterwerte sein:
Parameter-Wert | Beschreibung | Unterstützt in | Beispiel |
courseName | Sortierung nach Kursname, z.B. Chemie 101 (courseCode ist nicht gültig) | Overall- und Issues-Endpunkte | endpoint-url?sort=courseName |
courseId | Sortierung nach Kurs-ID, z.B. 123456 (dies ist in der Regel eine ganze Zahl) | Overall- und Issues-Endpunkte | endpoint-url?sort=courseId |
termId | Nach Kursabschnitts-ID sortieren. Z.B. Summe | Overall- und Issues-Endpunkte | endpoint-url?sort=termId |
termName | Sortieren nach Begriff Name. z.B. Sommer | Overall- und Issues-Endpunkte | endpoint-url?sort=termName |
overallScore | Nach der Gesamtbewertung der Barrierefreiheit für jeden Kurs sortieren. | Nur Overall-Endpunkt. | endpoint-url?sort=overallScore |
filesScore | Sortieren Sie die Ergebnisse nach der Dateibewertung der einzelnen Kurse. | Nur Overall-Endpunkt. | endpoint-url?sort=filesScore |
wysiwygScore | Sortieren Sie die Ergebnisse nach der WYSIWYG-Bewertung der einzelnen Kurse. | Overall-Endpunkt und nur für Ally für LMS verfügbar. | endpoint-url?sort= wysiwygScore |
webPagesScore | Sortieren Sie die Ergebnisse nach der Webseiten-Bewertung der einzelnen Domains. | Overall-Endpunkt und nur für Ally für Web und WCM verfügbar. | endpoint-url?sort= webPagesScore |
Anmerkung
Bei Parameterwerten wird zwischen Groß- und Kleinschreibung unterschieden, und es kann jeweils nur eine Sortieroption verwendet werden.
Standardmäßig werden die Ergebnisse in aufsteigender Reihenfolge sortiert. Wenn Sie eine andere Reihenfolge festlegen möchten, können Sie den Order-Parameter hinzufügen:
endpoint-url?sort=<Sort parameter value>&order=<Order value>
Dabei kann <Bestellwert> sein: asc oder desc
Beispiel:
https://prod.ally.ac/api/v2/clients/0/issues?sort=courseName&order=desc
Filtermöglichkeiten
Sie können Filteroptionen verwenden, um kleinere oder reduzierte Ergebnisse basierend auf den ausgewählten Kriterien zu erhalten. Wenn Sie eine Filteroption hinzufügen müssen, müssen Sie den Filterparameter wie unten beschrieben hinzufügen:
Filterparameter (ohne Bediener)
Name des Filterparameters | Beschreibung | Unterstützt in |
allyEnabled | Sie können die Kurse abrufen, in denen Ally aktiv ist Wert ist wahr oder falsch | Overall- und Issues-Endpunkte |
departmentId | Nach Abteilungs-ID filtern | Overall- und Issues-Endpunkte |
departmentName | Filtern Sie nach dem Namen der Abteilung. z.B. Ingenieurwesen | Overall- und Issues-Endpunkte |
termId | Nach Kursabschnitts-ID filtern | Overall- und Issues-Endpunkte |
termName | Filtern Sie nach dem Namen des Begriffs. z.B. Sommer | Overall- und Issues-Endpunkte |
courseId | Filtern Sie nach der ID oder einem Kurs. z.B. 123456 (dies ist in der Regel eine ganze Zahl) | Overall- und Issues-Endpunkte |
courseName | Nach dem Namen eines Kurses filtern. z.B. Chemie 101 (courseCode ist nicht gültig) | Overall- und Issues-Endpunkte |
endpoint-url?<Filter Parameter>=<value>
Filterparameter (mit Operator)
endpoint-url?<Filter Parameter>=<Operator>:<value>
Wobei gilt:
<Filterparameter>: Filterparameter, um eine kleinere Menge von Ergebnissen zu erhalten. Sie können die unterstützten Parameter in der folgenden Tabelle sehen.
<Operator>: Sie müssen einen Operator verwenden, um zu filtern, z. B. gleich, nicht gleich.
<value>: Wert, der im Filter verwendet wird.
Name des Filterparameters | Feldtyp | Unterstützte Operatoren | Beschreibung | Unterstützt in |
allyEnabled | Boolesch | eq, ne (gleich/ungleich) | Sie können die Kurse abrufen, in denen Ally aktiv ist. Wert ist wahr oder falsch. | Overall- und Issues-Endpunkte |
courseName | Zeichenfolge | EQ, NE, CO, NC, SW | Nach dem Namen eines Kurses filtern. z.B. Chemie 101 (courseCode ist nicht gültig) | Overall- und Issues-Endpunkte |
courseId | Zeichenfolge | EQ, NE, CO, NC, SW | Filtern Sie nach ID oder Kurs. Z.B. 123456 (dies ist in der Regel eine ganze Zahl) | Overall- und Issues-Endpunkte |
termId | Zeichenfolge | EQ, NE, CO, NC, SW | Nach Kursabschnitts-ID filtern. | Overall- und Issues-Endpunkte |
termName | Zeichenfolge | EQ, NE, CO, NC, SW | Filtern Sie nach dem Namen des Begriffs. z.B. Sommer | Overall- und Issues-Endpunkte |
overallScore | Zahl | EQ, NE, LE, LT, GE, GT | Sie können nach einer Gesamtbewertung filtern. z.B. Kurse mit einer Punktzahl von 90% | Gesamtendpunkt und in allen Ally-Lösungen: LMS, Websites und WCM. |
filesScore | Zahl | EQ, NE, LE, LT, GE, GT | Sie können nach der Dateibewertung filtern. z.B. Kurse mit einer Dateipunktzahl von 90% | Gesamtendpunkt und in allen Ally-Lösungen: LMS, Websites und WCM. |
wysiwygScore | Zahl | EQ, NE, LE, LT, GE, GT | Sie können nach dem WYSIWYG-Ergebnis filtern. z.B. Kurse mit einer WYSIWYG-Punktzahl von 90% | Overall-Endpunkt und nur für Ally für LMS verfügbar. |
webPagesScore | Zahl | EQ, NE, LE, LT, GE, GT | Sie können nach der Bewertung einer Domäne filtern, z. B. Webseiten mit einer Punktzahl von 90 %. | Gesamtendpunkt und nur für Ally für Web oder WCM verfügbar. |
Anmerkung
Bei Parameterwerten wird zwischen Groß- und Kleinschreibung unterschieden.
Unterstützte Operatoren
Die folgende Tabelle enthält die unterstützten Operatoren basierend auf dem Feldtyp:
Feldtyp | Operator | Beschreibung |
Zeichenfolge | eq | Ist gleich |
Zeichenfolge | ne | Ist nicht gleich |
Zeichenfolge | co | Enthält das Schlüsselwort |
Zeichenfolge | nc | Enthält kein Schlüsselwort |
Zeichenfolge | sw | Beginnt mit Schlüsselwort |
Zahl | eq | Ist gleich |
Zahl | ne | Ist nicht gleich |
Zahl | le | Kleiner oder gleich |
Zahl | lt | Weniger als |
Zahl | ge | Größer als oder gleich |
Zahl | gt | Größer als |
Beispiel:
Im folgenden Beispiel werden alle Kurse abgerufen, die das Schlüsselwort "tests" im Kursnamen enthalten:
https://prod.ally.ac/api/v2/clients/15/reports/overall?courseName=co:tests
Verwenden mehrerer Filter
Sie können die Sortier- und Filteroptionen in derselben Endpunkt-URL kombinieren, indem Sie das Zeichen „&‟ zwischen den beiden Bedingungen hinzufügen. Angenommen, Sie möchten alle Kurse abrufen, die das Schlüsselwort „test‟ im Kursnamen enthalten, für den Ally aktiviert ist, und für die das Gesamtergebnis weniger als 90 % beträgt. Die URL würde wie folgt aussehen:
https://prod.ally.ac/api/v2/clients/0/overall?courseName=co:test&allyEnabled=true&overallScore=lt:0.9
Sie können auch zwei Filteroptionen verwenden. Angenommen, Sie möchten alle Kurse mit einem Gesamtergebnis zwischen 10 % und 70 % abrufen:
https://prod.ally.ac/api/v2/clients/0/reports/overall?overallScore=ge:0.1&overallScore=le:0.7