Skip to main content

Raporlama API'si Uç Noktaları

Raporlama API'si Uç Noktaları

Uyarı

Raporlama API'sine dâhil edilen uç noktalar, özel uç noktalardır ve şu anda bunlarla ilgili bir kullanımdan kaldırma ilkesi bulunmamaktadır. Anthology Ally, yol haritamıza veya gelecekteki sürümlere bağlı olarak bu uç noktaları değiştirebilir veya güncelleştirebilir.

Uç noktalarınızı uygun şekilde nasıl ayarlayacağınızı ve özelleştireceğinizi öğrenmek için aşağıdaki teknik belgeleri gözden geçirin. Ek yönergeler için, Ally'ın API'si, Haricî Raporlama Aracı ile nasıl entegre edilir? konusuna bakabilirsiniz.Ally'ın API'sini Haricî Bir Raporlama Aracıyla Entegre Etme

Mevcut yöntemler

Ally'ın raporlama API'sinde, iki yöntem mevcuttur. Aşağıdaki bölümde bunlar açıklanmaktadır:

Yöntem

URL

HTTP İstek Tipi

Açıklama

Genel

https://[bölge]/api/v2/clients/[Ally İstemci Kimliği]/reports/overall

Get

Varsayılan olarak bu yöntem, Ally'ın etkinleştirilip etkinleştirilmediğine bakılmaksızın LMS örneğinden kurs, WYSIWYG ve her bir kursa dâhil edilmiş olan dosyaların puanları ve dosya türleri hakkındaki bilgileri içeren bir veri kümesi döndürür.

Sorunlar

https://[bölge]/api/v2/clients/[Ally İstemci Kimliği]/reports/issues

Get

Varsayılan olarak bu yöntem, Ally'ın etkinleştirilmiş olup olmadığına bakılmaksızın LMS örneğine dâhil edilmiş olan her bir kursta meydana gelen tüm erişilebilirlik sorunlarına ilişkin bilgileri içeren bir veri kümesi döndürür.

İpucu

[Ally İstemci Kimliği] nizi Ally Kimlik ile değiştirin. Kimliğinizi bilmiyorsanız talep etmek için bir destek bileti oluşturabilirsiniz.

İpucu

[Bölge] kurumunuzun Ally ortamının barındırıldığı bölgeye bağlı olarak değiştirin:

HTTP Durum Yanıtı

Ally API'si, meta verilerde aşağıdaki gibi bir durum alanı içerir:

  • Durum 200 - Başarılı: İsteğiniz başarıyla alındı ve istenen veri seti yanıtın bir parçasıdır.

  • Durum 202 - İşleme: İsteğiniz başarıyla alındı ancak veri seti hazırlanma aşamasında ve henüz erişilebilir değil. İsteğinizi bir süre sonra tekrarlayın (en az bir dakika beklemeniz önerilir).

  • Durum 401 - Yetkisiz: Ally İstemci Kimliği veya yetkilendirme belirteci doğru değildir.

  • Durum 400 - Kötü istek: URL'nin geçersiz bir parametre adı vardır, örneğin bilinmeyen bir filtre seçeneği, operatörü veya değeri. URL'nin söz dizimini gözden geçirin. Bazı filtre ve sıralama seçeneklerinin büyük harf hassasiyetli olduğunu unutmayın.

Yöntemler Dokümantasyonu

Yöntem: Genel 

HTTP talebi: GET

https:// [Bölge]/api/v2/clients/[Ally İstemci Kimliği]/reports/overall

[Ally İstemci Kimliği] nizi Ally Kimlik ile değiştirin. Kimliğinizi bilmiyorsanız talep etmek için bir destek bileti oluşturabilirsiniz.

[Bölge] kurumunuzun Ally ortamının barındırıldığı bölgeye bağlı olarak değiştirin:

Yetkilendirme: OAuth taşıyıcı belirteci.

Parametreler: İsteğe bağlı filtreler veya sıralama seçenekleri.

İstek Gövdesi: Yok

Yanıt:

{ 
    "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 
    } 
} 

Yöntem: Sorunlar

HTTP talebi: GET 

https:// [Bölge]/api/v2/clients/[Ally İstemci Kimliği]/reports/overall

[Ally İstemci Kimliği] yerine Ally kimliğinizi girin. Kimliğinizi bilmiyorsanız talep etmek için bir destek bileti oluşturabilirsiniz.

[Bölge] kurumunuzun Ally ortamının barındırıldığı bölgeye bağlı olarak değiştirin:

Yetkilendirme: OAuth taşıyıcı belirteci 

Parametreler: İsteğe bağlı filtreler veya sıralama seçenekleri.

İstek Gövdesi: Yok

Yanıt:

{ 
    "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 
    } 
} 

Burada;

  • Veri: sonuçların veri setini içerir.

  • Metadata:

    • Kime: hangi verinin alınacağını kaydet, toplam "toplam" sınırını aşıyorsa "offset" + "limit" veya "total" olur.

    • From: verinin başlayacağı kayıt, "offset" + 1 olur.

    • Toplam: Ally tarafından LMS örneğinde dikkate alınan toplam kurs sayısı.

Ofset - hangi rekor başlangıcından

  • İlk sıra kaydırılır = 0,

  • Ofset < 0 olduğunda kullanıcı, 400 hatası alır - [Geçersiz değer (parametre=ofset, ileti=Böyle bir veri yok)],

  • (Ofset >= total) => olduğunda kullanıcı 400 hatası alır - [Geçersiz değer (parametre=ofset, message=Böyle veri yok) ]

Limit - ofsetten itibaren kaç kayıt alınır

  • (limit < 1) olduğunda, kullanıcı, 400 hatası alır - [Geçersiz değer (parametre=limit, ileti=Limit, sınırların dışında)]

  • (limit 10000 >) olduğunda kullanıcı 400 hatası alır - [Geçersiz değer (parametre=limit, message=Sınır dışında)]

  • (Offset < total && offset + limit > total) olduğunda, arka planda limiti sizin için değiştiriyoruz ve veri sona (toplam) kadar alınır

Filtreler ve sıralama seçenekleri

Uç nokta yanıtları URL'de filtrelenebilir. Bu bölümde kullanılabilecek seçenekler açıklanmaktadır:

Sıralama seçenekleri

Sonuçları bir ölçütü göz önünde bulundurarak artan veya azalan düzende sıralanmış olarak görüntülemek isteyip istemediğinizi tanımlayabilirsiniz. Sıralama seçeneği eklemenizi gerektiren durumlarda, sıralama parametresini aşağıda açıklandığı gibi eklemeniz gerekir:

endpoint-URL?sort=<Sort parameter value>

<Parametre değerini Sıralama> aşağıdaki parametre değerlerinden herhangi biri olabilir:

Parametre değeri

Açıklama

Desteklenen Yer

Örnek

courseName

Kurs adına göre sıralayın, örneğin Kimya 101

(courseCode geçerli değil)

Genel ve Sorunlar uç noktaları

endpoint-url?sort=courseName

courseId

Ders ID'sine göre sıralayın, örneğin 123456

(bu genellikle tam sayıdır)

Genel ve Sorunlar uç noktaları

endpoint-url?sort=courseId

termId

Dönem kimliğine göre sıralayın. Örneğin Summa

Genel ve Sorunlar uç noktaları

endpoint-url?sort=termId

termName

Dönem Adına göre sıralayın. örneğin Yaz

Genel ve Sorunlar uç noktaları

endpoint-url?sort=termName

overallScore

Her kursun genel erişilebilirlik puanına göre sıralayın.

Yalnızca Genel uç noktası.

endpoint-url?sort=overallScore

filesScore

Sonuçları her kursun dosya puanına göre sıralayın.

Yalnızca Genel uç noktası.

endpoint-url?sort=filesScore

wysiwygScore

Sonuçları her kursun WYSIWYG puanına göre sıralayın.

Genel uç noktasında ve yalnızca LMS İçin Ally'da kullanılabilir.

endpoint-url?sort= wysiwygScore

webPagesScore

Sonuçları her etki alanının web sayfası puanına göre sıralayın.

Genel uç noktasında ve yalnızca Web ve WCM İçin Ally'da kullanılabilir.

endpoint-url?sort= webPagesScore

Not

Parametre değerleri, büyük/küçük harfe duyarlıdır ve aynı anda yalnızca bir sıralama seçeneği kullanılabilir.

Varsayılan olarak, sonuçlar, artan düzende sıralanır. Farklı bir sıralama yapmak isterseniz şu sıralama parametresini ekleyebilirsiniz:

endpoint-url?sort=<Sort parameter="" value="">&order=<Order value></Sort>

Burada <Order değeri> şu olabilir: asc veya desc

Örnek:

https://prod.ally.ac/api/v2/clients/0/issues?sort=courseName&order=desc

Filtreleme seçenekleri

Filtreleme seçeneklerini, seçilen ölçütlere bağlı olarak daha az sayıda veya sınırlı sayıda yanıt almak için kullanabilirsiniz. Bir filtreleme seçeneği eklemeniz gerekirse, aşağıda açıklandığı şekilde filtreleme parametresini eklemelisiniz:

Filtre Parametreleri (operatörsüz)

Filtre parametre adı

Açıklama

Desteklenen Yer

allyEnabled

Ally'nin etkin olduğu kursları alabilirsiniz

Değer doğru ya da yanlış

Genel ve Sorunlar uç noktaları

departman Id

Departman kimliğine göre filtreleme

Genel ve Sorunlar uç noktaları

departman Adı

Departman adına göre filtreleyin. örneğin Mühendislik

Genel ve Sorunlar uç noktaları

termId

Dönem kimliğine göre filtreleyin

Genel ve Sorunlar uç noktaları

termName

Dönem adına göre filtreleyin. örneğin Yaz

Genel ve Sorunlar uç noktaları

courseId

Kimlik veya parkura göre filtreleyin. örneğin 123456

(bu genellikle tam sayıdır)

Genel ve Sorunlar uç noktaları

courseName

Kursun adına göre filtreleyin. Örneğin Kimya 101

(courseCode geçerli değil)

Genel ve Sorunlar uç noktaları

endpoint-URL mi? <Filter parameter="">=<value></Filter>

Filtre Parametreleri (operatörle birlikte)

endpoint-URL mi? <Filter parameter="">=<Operator>:<value></Operator></Filter>

Burada;

  • <Filtre Parametresi>: Daha küçük bir sonuç seti elde etmek için parametreyi filtrelemek. Aşağıdaki tablodaki desteklenen parametrelere başvurabilirsiniz.

  • <Operatör>: Filtrelemek için eşit değil, eşit değil, bir operatör kullanmalısınız.

  • <value>: Filtrede kullanılan değer.

Filtre parametre adı

Alan türü

Desteklenen operatörler

Açıklama

Desteklenen Yer

allyEnabled

Boole

eq, ne

Ally'nin etkin olduğu kursları alabilirsiniz.

Değer doğru ya da yanlış.

Genel ve Sorunlar uç noktaları

courseName

Dize

EQ, NE, CO, NC, SW

Kursun adına göre filtreleyin. Örneğin Kimya 101

(courseCode geçerli değil)

Genel ve Sorunlar uç noktaları

courseId

Dize

EQ, NE, CO, NC, SW

Kimliğe veya kursa göre filtreleyin. Örneğin 123456

(bu genellikle tam sayıdır)

Genel ve Sorunlar uç noktaları

termId

Dize

EQ, NE, CO, NC, SW

Dönem kimliğine göre filtreleyin.

Genel ve Sorunlar uç noktaları

termName

Dize

EQ, NE, CO, NC, SW

Dönem adına göre filtreleyin. örneğin Yaz

Genel ve Sorunlar uç noktaları

overallScore

Sayı

eq, ne, le, lt, ge, gt

Genel puana göre filtreleyebilirsiniz. Örneğin, %90 puana sahip dersler

Genel uç nokta ve tüm Ally çözümlerinde: LMS, web siteleri ve WCM.

filesScore

Sayı

eq, ne, le, lt, ge, gt

Dosya puanına göre filtreleyebilirsiniz. Örneğin, dosya puanı %90 olan dersler

Genel uç nokta ve tüm Ally çözümlerinde: LMS, web siteleri ve WCM.

wysiwygScore

Sayı

eq, ne, le, lt, ge, gt

WYSIWYG puanına göre filtreleyebilirsiniz. Örneğin, %90 WYSIWYG puanına sahip kurslar

Genel uç noktasında ve yalnızca LMS İçin Ally'da kullanılabilir.

webPagesScore

Sayı

eq, ne, le, lt, ge, gt

Etki alanının puanına göre filtreleyebilirsiniz. Örneğin, puanı %90'a eşit olan web sayfaları.

Genel uç noktasında ve yalnızca Web veya WCM İçin Ally'da kullanılabilir.

Not

Parametre değerleri büyük/küçük harfe duyarlıdır.

Desteklenen operatörler

Aşağıdaki tablo, alan türüne göre desteklenen işleçleri içerir:

Alan türü

İşleç

Açıklama

Dize

eq

eşittir

Dize

ne

eşit değildir

Dize

co

Anahtar kelime içerir

Dize

nc

Anahtar kelime içermiyor

Dize

sw

Anahtar kelimeyle başlar

Sayı

eq

eşittir

Sayı

ne

eşit değildir

Sayı

le

Ya da daha az

Sayı

lt

Küçük

Sayı

ge

Büyük veya eşit

Sayı

gt

Daha büyük

Örnek:

Aşağıdaki örnek, adının içinde "testler" anahtar sözcüğü geçen tüm kursları alır:

https://prod.ally.ac/api/v2/clients/15/reports/overall?courseName=co:tests 

Birden fazla filtre kullanımı

İki koşul arasına "&" karakterini ekleyerek sıralama ve filtreleme seçeneklerini aynı uç nokta URL'sinde birlikte kullanabilirsiniz. Örneğin, Ally'ın etkinleştirildiği kurslardan kurs adında "test" anahtar sözcüğü geçen ve genel puanın %90'dan küçük olduğu tüm kursları almak istediğinizi varsayalım. URL şöyle görünür:

https://prod.ally.ac/api/v2/clients/0/overall?courseName=co:test&allyEnabled=true&overallScore=lt:0.9

İki filtreleme seçeneğini de kullanabilirsiniz. Örneğin, genel puanı %10 ile %70 arasında olan tüm kursları elde etmeniz gerektiğini varsayalım:

https://prod.ally.ac/api/v2/clients/0/reports/overall?overallScore=ge:0.1&overallScore=le:0.7