Skip to main content

Pontos de extremidade da API de relatórios

Pontos de extremidade da API de relatórios

Atenção

Os pontos de extremidade incluídos na API de relatórios são privados e não vêm com uma política de depreciação no momento. O Anthology Ally pode alterar ou atualizar esses pontos de extremidade conforme as nossas estratégias ou de versões futuras.

Analise a documentação técnica a seguir para saber como configurar e personalizar adequadamente os pontos de extremidade. Verifique como integrar a API do Ally a uma ferramenta externa de relatórios para ter mais orientação.Integre a API do Ally a uma ferramenta externa de relatórios

Métodos disponíveis

A API do Ally para relatórios tem dois métodos. A seção a seguir os descreve:

Método

URL

Tipo de Solicitação HTTP

Descrição

Geral

https://[region]/api/v2/clients/[Ally Client ID]/reports/overall

Obter

Por padrão, esse método retorna um conjunto de dados com informações sobre o curso, WYSIWYG, além das pontuações e dos tipos de arquivos incluídos em cada curso a partir da instância LMS, não importa e o Ally estar habilitado ou não.

Problemas

https://[region]/api/v2/clients/[Ally Client ID]/reports/issues

Obter

Por padrão, este método retorna um conjunto de dados com as informações relacionadas a todos os problemas de acessibilidade que ocorrem em cada curso, incluídos na instância do LMS, não importa e o Ally estar habilitado ou não.

Dica

Substitua [Código do Cliente Ally] pelo seu código Ally. Se você não souber seu código, crie um chamado de suporte para solicitá-lo.

Dica

Substitua a [Region] conforme a região em que o ambiente Ally da sua instituição está hospedado:

Resposta de Status HTTP

A API do Ally inclui um campo de status nos metadados da seguinte maneira:

  • Status 200 - Bem-sucedido: Sua solicitação foi recebida com sucesso e o conjunto de dados solicitado faz parte da resposta.

  • Status 202 - Processamento: Sua solicitação foi recebida com sucesso, mas o conjunto de dados está em preparação e ainda não está disponível. Repita a solicitação após algum tempo (recomenda-se pelo menos um minuto).

  • Status 401 - Não autorizado: O Código do Cliente Ally ou o código de autorização não estão corretos.

  • Status 400 - Solicitação ruim: A URL tem um nome de parâmetro inválido, por exemplo, uma opção, operador ou valor de filtro desconhecido. Analise a sintaxe da URL. Lembre-se que algumas opções de filtro e ordenação são sensíveis a maiúsculas e minúsculas.

Documentação de Métodos

Método: Geral 

Solicitação HTTP: GET

https://[Region]/api/v2/clients/[Ally Client ID]/reports/overall

Substitua [Código do Cliente Ally] pelo seu código Ally. Se você não souber seu código, crie um chamado de suporte para solicitá-lo.

Substitua a [Region] conforme a região em que o ambiente Ally da sua instituição está hospedado:

Autorização: código do portador do OAuth.

Parâmetros: Filtros opcionais ou opções de classificação.

Corpo do Pedido: Nenhum

Resposta:

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

Método: Problemas

Solicitação HTTP: GET 

https://[Ally Client ID]/api/v2/clients/[Ally Client ID]/reports/overall

Substitua o código [Código de cliente do Ally] pelo seu código do Ally. Se você não souber seu código, crie um chamado de suporte para solicitá-lo.

Substitua a [Region] conforme a região em que o ambiente Ally da sua instituição está hospedado:

Autorização: código do portador do OAuth 

Parâmetros: Filtros opcionais ou opções de classificação.

Corpo do Pedido: Nenhum

Resposta:

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

Em que:

  • Data: contém o conjunto de dados dos resultados.

  • Metadados:

    • Para: registrar para quais dados serão buscados, "desvio" + "limite" ou "total" se a soma exceder o "total".

    • A partir de: registro que dá origem aos dados, "desvio" + 1.

    • Total: número total de cursos considerados pelo Ally na instância do LMS.

Deslocamento - de onde o disco começa

  • A primeira linha é deslocada = 0,

  • Quando desvio < 0, o usuário recebe o erro 400 – [Valor inválido (parâmetro=desvio, mensagem=Nenhum dado desse tipo)]

  • Quando (desvio <= total) o usuário recebe o erro 400 – [Valor inválido (parâmetro=desvio, mensagem=Nenhum dado desse tipo)]

Limite - quantos registros são recuperados a partir do desvio

  • Quando (limite < 1), o usuário recebe o erro 400 – [Valor inválido (parâmetro=limite, mensagem=Limite fora do escopo)]

  • Quando (limite > 10000) o usuário recebe o erro 400 - [Valor inválido (parâmetro=limite, mensagem=Limite fora do escopo)]

  • Quando (desvion < total && desvio + limite > total), mudamos o limite em segundo plano para você, e os dados serão recuperados até o final (total)

Filtros e opções de ordenação

As respostas do ponto de extremidade podem ser filtradas na URL. Esta seção descreve as opções disponíveis:

Opções de ordenação

Você pode definir se prefere exibir os resultados classificados em ordem crescente ou decrescente conforme um critério. Se você precisar adicionar uma opção de classificação, adicione o parâmetro de classificação conforme descrito abaixo:

endpoint-url?sort=<Sort parameter value>

Onde <valor do parâmetro Sort> pode ser qualquer um dos seguintes valores de parâmetro:

Valor do parâmetro

Descrição

Apoiado em

Exemplo:

courseName

Ordene por nome do curso, por exemplo, Química 101

(courseCode não é válido)

Pontos de extremidade gerais e de problemas

endpoint-url?sort=courseName

courseId

Ordene por código do curso, por exemplo, 123456

(isso geralmente é um número inteiro)

Pontos de extremidade gerais e de problemas

endpoint-url?sort=courseId

termId

Classifique pelo código do período. Por exemplo, Sum

Pontos de extremidade gerais e de problemas

endpoint-url?sort=termId

termName

Ordenar por nome do período. por exemplo, Verão

Pontos de extremidade gerais e de problemas

endpoint-url?sort=termName

overallScore

Classifique pela pontuação geral de acessibilidade de cada curso.

Somente ponto de extremidade geral.

endpoint-url?sort=overallScore

filesScore

Classifique os resultados pela pontuação do arquivo de cada curso.

Somente ponto de extremidade geral.

endpoint-url?sort=filesScore

wysiwygScore

Classifique os resultados pela pontuação WYSIWYG de cada curso.

Ponto de extremidade geral e disponível apenas para o Ally para LMS.

endpoint-url?sort= wysiwygScore

webPagesScore

Classifique os resultados pela pontuação da página da Web de cada domínio.

Ponto de extremidade geral, disponível apenas para o Ally para Web e WCM.

endpoint-url?sort= webPagesScore

Nota

Os valores de parâmetro diferenciam maiúsculas e minúsculas, e somente uma opção de classificação pode ser utilizada por vez.

Por padrão, os resultados são classificados em ordem crescente. se quiser definir uma ordem diferente, pode adicionar o parâmetro de ordem:

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

Onde <valor de ordem> pode ser: asc ou desc

Exemplo:

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

Opções de filtragem

Você pode utilizar as opções de filtragem para obter respostas menores ou reduzidas com base nos critérios selecionados. Se precisar adicionar uma opção de filtragem, deve adicionar o parâmetro de filtragem conforme descrito abaixo:

Parâmetros de Filtro (sem operador)

Nome do parâmetro do filtro

Descrição

Apoiado em

allyEnabled

Você pode obter os cursos em que o Ally está ativo

Valor é verdadeiro ou falso

Pontos de extremidade gerais e de problemas

departamento

Filtrar pelo código do departamento

Pontos de extremidade gerais e de problemas

departmentName

Filtre pelo nome do departamento. por exemplo, Engenharia

Pontos de extremidade gerais e de problemas

termId

Filtrar pelo código do período

Pontos de extremidade gerais e de problemas

termName

Filtre pelo nome do período. por exemplo, Verão

Pontos de extremidade gerais e de problemas

courseId

Filtre pelo código ou por um curso. por exemplo, 123456

(isso geralmente é um número inteiro)

Pontos de extremidade gerais e de problemas

courseName

Filtrar pelo nome de um curso. Por exemplo, Química 101

(courseCode não é válido)

Pontos de extremidade gerais e de problemas

endpoint-url? <Filter parameter="">=<value></Filter>

Parâmetros do Filtro (com operador)

endpoint-url?<Filter Parameter>=<Operator>:<value>

Em que:

  • <Parâmetro de Filtro>: Parâmetro de filtragem para obter um conjunto menor de resultados. Você pode consultar os parâmetros compatíveis na tabela abaixo.

  • <Operador>: Você deve utilizar um operador para filtrar, igual ou igual.

  • <valor>: Valor utilizado no filtro.

Nome do parâmetro do filtro

Tipo de campo

Operadores compatíveis

Descrição

Apoiado em

allyEnabled

Booliano

eq, ne

Você pode obter os cursos em que o Ally está ativo.

Valor é verdadeiro ou falso.

Pontos de extremidade gerais e de problemas

courseName

Sequência de caracteres

eq, ne, co, nc, sw

Filtrar pelo nome de um curso. Por exemplo, Química 101

(courseCode não é válido)

Pontos de extremidade gerais e de problemas

courseId

Sequência de caracteres

eq, ne, co, nc, sw

Filtrar pelo código ou curso. Por exemplo, 123456

(isso geralmente é um número inteiro)

Pontos de extremidade gerais e de problemas

termId

Sequência de caracteres

eq, ne, co, nc, sw

Filtrar pelo código do período.

Pontos de extremidade gerais e de problemas

termName

Sequência de caracteres

eq, ne, co, nc, sw

Filtre pelo nome do período. por exemplo, verão

Pontos de extremidade gerais e de problemas

overallScore

Número

EQ, NE, LE, LT, GE, GT

Você pode filtrar pela pontuação geral. por exemplo, cursos com pontuação igual a 90%

Endpoint geral e em todas as soluções Ally: LMS, websites e WCM.

filesScore

Número

EQ, NE, LE, LT, GE, GT

Você pode filtrar pela pontuação dos arquivos. por exemplo, cursos com nota de arquivos igual a 90%

Endpoint geral e em todas as soluções Ally: LMS, websites e WCM.

wysiwygScore

Número

EQ, NE, LE, LT, GE, GT

Você pode filtrar pela pontuação WYSIWYG. por exemplo, cursos com pontuação WYSIWYG igual a 90%

Ponto de extremidade geral e disponível apenas para o Ally para LMS.

webPagesScore

Número

EQ, NE, LE, LT, GE, GT

Você pode filtrar pela pontuação de um domínio, por exemplo: páginas da web com uma pontuação igual a 90%.

Ponto de extremidade geral e disponível apenas para o Ally para Web ou WCM.

Nota

Os valores de parâmetro diferenciam maiúsculas e minúsculas.

Operadores compatíveis

A tabela a seguir contém os operadores compatíveis com base no tipo de campo:

Tipo de campo

Operador

Descrição

Sequência de caracteres

eq

É igual

Sequência de caracteres

ne

Não é igual

Sequência de caracteres

co

Contém a palavra-chave

Sequência de caracteres

nc

Não contém a palavra-chave

Sequência de caracteres

sw

Começa com a palavra-chave

Número

eq

É igual

Número

ne

Não é igual

Número

le

Menor ou igual

Número

lt

Menos que

Número

ge

Maior que ou igual

Número

gt

Maior que

Exemplo:

O exemplo a seguir recupera todos os cursos que contenham a palavra-chave "tests" no nome do curso:

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

Uso de múltiplos filtros

Você pode combinar as opções de classificação e filtragem no mesma URL do ponto de extremidade adicionando o caractere "&" entre as duas condições. Por exemplo, digamos que você queira recuperar todos os cursos que contêm a palavra-chave "test" no nome do curso em que o Ally está habilitado e que tenha pontuação geral inferior a 90%. A URL seria assim:

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

Você também pode utilizar duas opções de filtragem. Por exemplo, digamos que você precise obter todos os cursos que tenham uma pontuação geral entre 10% e 70%:

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