{"id":6420,"date":"2026-07-13T15:49:10","date_gmt":"2026-07-13T15:49:10","guid":{"rendered":"https:\/\/hub.paper-checker.com\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/"},"modified":"2026-07-13T15:49:10","modified_gmt":"2026-07-13T15:49:10","slug":"how-to-integrate-plagiarism-checker-api-application-lms","status":"publish","type":"post","link":"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/","title":{"rendered":"Como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS"},"content":{"rendered":"<p>A integra\u00e7\u00e3o de uma API do verificador de pl\u00e1gio em seu aplicativo ou sistema de gerenciamento de aprendizado (LMS) significa conectar seu software a um servi\u00e7o de detec\u00e7\u00e3o de pl\u00e1gio para que os documentos possam ser enviados programaticamente, os resultados retornados de forma consistente e os relat\u00f3rios gerados em sua pr\u00f3pria interface. Uma API do verificador de pl\u00e1gio atua como uma ponte entre seu aplicativo e um mecanismo de detec\u00e7\u00e3o externo \u2014 seu sistema envia arquivos ou texto, o servi\u00e7o os compara com bancos de dados e retorna um relat\u00f3rio de similaridade e seu aplicativo exibe os resultados aos usu\u00e1rios.<\/p>\n<p>Esse tipo de integra\u00e7\u00e3o elimina o atrito de envios manuais e permite que a verifica\u00e7\u00e3o de pl\u00e1gio aconte\u00e7a perfeitamente no fluxo de trabalho onde alunos e instrutores j\u00e1 est\u00e3o.<\/p>\n<h2>Os quatro padr\u00f5es de integra\u00e7\u00e3o<\/h2>\n<p>Existem quatro padr\u00f5es principais para integrar a verifica\u00e7\u00e3o de pl\u00e1gio em plataformas educacionais. Cada um atende a diferentes necessidades t\u00e9cnicas e n\u00edveis de complexidade.<\/p>\n<h3>Padr\u00e3o 1: integra\u00e7\u00e3o da API REST<\/h3>\n<p>Uma integra\u00e7\u00e3o da API REST conecta seu aplicativo ou site personalizado a um servi\u00e7o de detec\u00e7\u00e3o de pl\u00e1gio por meio de solicita\u00e7\u00f5es HTTP padr\u00e3o. Seu sistema envia documentos por meio de cargas \u00fateis JSON, recebe relat\u00f3rios de similaridade no formato JSON e lida com respostas em sua pr\u00f3pria base de c\u00f3digo. Esse padr\u00e3o oferece flexibilidade m\u00e1xima: voc\u00ea controla a interface do usu\u00e1rio, o fluxo de envio e a apresenta\u00e7\u00e3o do resultado. Funciona melhor para aplicativos da Web personalizados, ferramentas de terceiros ou plataformas que n\u00e3o se encaixam perfeitamente nos ecossistemas LMS padr\u00e3o.<\/p>\n<h3>Padr\u00e3o 2: integra\u00e7\u00e3o com LTI 1.3<\/h3>\n<p>A Interoperabilidade de Ferramentas de Aprendizagem (LTI) \u00e9 um padr\u00e3o aberto para conectar ferramentas educacionais com plataformas LMS. O LTI 1.3 introduziu o fluxo de autoriza\u00e7\u00e3o do OAuth 2.0 e o deep linking, tornando-o o padr\u00e3o moderno para integra\u00e7\u00f5es seguras. Para detec\u00e7\u00e3o de pl\u00e1gio, o LTI 1.3 permite que seu servi\u00e7o seja lan\u00e7ado como uma ferramenta dentro de um LMS, receba o contexto de atribui\u00e7\u00e3o, envie arquivos para verifica\u00e7\u00e3o e devolva os resultados no livro de notas do LMS. Esse padr\u00e3o \u00e9 o melhor para os provedores que desejam que sua ferramenta apare\u00e7a nativamente dentro do Canvas, Blackboard ou Moodle sem exigir que os alunos saiam de sua plataforma.<\/p>\n<h3>Padr\u00e3o 3: Plugin de pl\u00e1gio do Moodle<\/h3>\n<p>O Moodle possui um subsistema de pl\u00e1gio dedicado que permite que os plug-ins se integrem diretamente ao boletim de notas e aos fluxos de trabalho de atribui\u00e7\u00e3o. Um plug-in do Moodle Pl\u00e1gio \u00e9 registrado como um manipulador na API do Moodle Plagiarism, aparece como uma op\u00e7\u00e3o de envio quando os professores criam tarefas, recebem arquivos automaticamente, executam verifica\u00e7\u00f5es e retornam pontua\u00e7\u00f5es diretamente para o boletim de notas. Esse padr\u00e3o \u00e9 o melhor para desenvolvedores de plugins e institui\u00e7\u00f5es que exigem uma integra\u00e7\u00e3o nativa do Moodle com o m\u00ednimo de desenvolvimento personalizado.<\/p>\n<h3>Padr\u00e3o 4: Integra\u00e7\u00e3o Blackboard\/BrightSpace<\/h3>\n<p>O Blackboard (agora aberto LMS \/ BrightSpace) oferece suporte \u00e0 detec\u00e7\u00e3o de pl\u00e1gio por meio de sua estrutura de plugin de pl\u00e1gio, que fornece uma API para enviar documentos e recuperar relat\u00f3rios. As institui\u00e7\u00f5es que usam o Blackboard normalmente instalam um plugin de detec\u00e7\u00e3o de pl\u00e1gio de um provedor suportado, configure-o por meio da interface do administrador e o plugin lida com o envio de arquivos e a exibi\u00e7\u00e3o de resultados no ambiente Blackboard. Esse padr\u00e3o \u00e9 o melhor para institui\u00e7\u00f5es que desejam uma solu\u00e7\u00e3o de plugin gerenciada em vez de um desenvolvimento personalizado.<\/p>\n<h2>Compara\u00e7\u00e3o de padr\u00f5es de integra\u00e7\u00e3o<\/h2>\n<table>\n<thead>\n<tr>\n<th>Padr\u00e3o de integra\u00e7\u00e3o<\/th>\n<th>Plataforma<\/th>\n<th>Complexidade<\/th>\n<th>melhor para<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Integra\u00e7\u00e3o da API REST<\/td>\n<td>Aplicativos personalizados, sites<\/td>\n<td>Baixo<\/td>\n<td>Desenvolvedores que criam aplicativos ou sites personalizados que precisam de verifica\u00e7\u00e3o de pl\u00e1gio como um servi\u00e7o<\/td>\n<\/tr>\n<tr>\n<td>LTI 1.3 Integra\u00e7\u00e3o<\/td>\n<td>Canvas, quadro-negro, Moodle<\/td>\n<td>M\u00e9dio<\/td>\n<td>Provedores que desejam que sua ferramenta seja lan\u00e7ada nativamente dentro de um LMS com integra\u00e7\u00e3o total de SSO e gradebook<\/td>\n<\/tr>\n<tr>\n<td>Plugin de pl\u00e1gio do Moodle<\/td>\n<td>moodle<\/td>\n<td>m\u00e9dio-alto<\/td>\n<td>Desenvolvedores de plug-ins visando o ecossistema do Moodle com integra\u00e7\u00e3o profunda do GradeBook<\/td>\n<\/tr>\n<tr>\n<td>Integra\u00e7\u00e3o Blackboard\/BrightSpace<\/td>\n<td>Blackboard\/BrightSpace<\/td>\n<td>Baixo-m\u00e9dio<\/td>\n<td>Institui\u00e7\u00f5es que usam o Blackboard que desejam uma solu\u00e7\u00e3o de plugin gerenciada<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>O que recomendamos:<\/strong> Use a integra\u00e7\u00e3o da API REST se estiver criando um aplicativo personalizado. Use LTI 1.3 se voc\u00ea for um provedor que deseja integrar em v\u00e1rios LMSs com uma \u00fanica base de c\u00f3digo. Use o plug-in do Moodle Pl\u00e1gio somente se voc\u00ea segmentar especificamente as institui\u00e7\u00f5es do Moodle. Use a integra\u00e7\u00e3o com o Blackboard para institui\u00e7\u00f5es que exigem suporte a Blackboard nativo sem desenvolvimento personalizado.<\/p>\n<h2>Integra\u00e7\u00e3o da API REST \u2014 passo a passo com o Python<\/h2>\n<p>A integra\u00e7\u00e3o da API REST segue um padr\u00e3o direto de solicita\u00e7\u00e3o-resposta. Seu aplicativo envia documentos para o servi\u00e7o de detec\u00e7\u00e3o de pl\u00e1gio, recebe uma resposta e processa os resultados. Aqui est\u00e1 como o processo normalmente funciona.<\/p>\n<h3>Etapa 1: autentica\u00e7\u00e3o de chave de API<\/h3>\n<p>A maioria das APIs de detec\u00e7\u00e3o de pl\u00e1gio usa a autentica\u00e7\u00e3o de chave de API. Seu aplicativo inclui a chave da API em cabe\u00e7alhos de solicita\u00e7\u00e3o para cada chamada. Isso garante que apenas os aplicativos autorizados possam enviar documentos.<\/p>\n<pre>&lt;code&gt;import requests\nimport json\n\nAPI_KEY = \"your-api-key-here\"\nENDPOINT = \"https:\/\/api.plagiarism-checker-service.com\/v1\/check\"\n\nheaders = {\n  \"X-API-Key\": API_KEY,\n  \"Content-Type\": \"application\/json\"\n}\n&lt;\/code&gt;<\/pre>\n<h3>Etapa 2: envio de um documento<\/h3>\n<p>Envie um documento enviando uma carga \u00fatil JSON contendo o texto do documento, os metadados e os par\u00e2metros opcionais.<\/p>\n<pre>&lt;code&gt;def submit_document(text, document_name, course_id=None):\n  payload = {\n  \"text\": text,\n  \"filename\": document_name,\n  \"course_id\": course_id,\n  \"source_type\": \"student_submission\"\n  }\n\n  response = requests.post(ENDPOINT, headers=headers, json=payload)\n  result = response.json()\n\n  if response.status_code == 200:\n  return result[\"report_id\"]\n  else:\n  raise Exception(f\"Submission failed: {result['error']}\")\n\n# Usage example\nreport_id = submit_document(\n  text=\"Your student's paper text here...\",\n  document_name=\"student_paper_2026.docx\",\n  course_id=\"CS101-2026\"\n)\n&lt;\/code&gt;<\/pre>\n<h3>Passo 3: Recuperando o relat\u00f3rio<\/h3>\n<p>Ap\u00f3s o envio, o servi\u00e7o gera um relat\u00f3rio. Dependendo se a API oferece suporte a processamento s\u00edncrono ou ass\u00edncrono, voc\u00ea aguarda a resposta ou a pesquisa de status.<\/p>\n<pre>&lt;code&gt;def get_report_status(report_id):\n  status_url = f\"https:\/\/api.plagiarism-checker-service.com\/v1\/status\/{report_id}\"\n  response = requests.get(status_url, headers=headers)\n  return response.json()\n\n# Check report\nstatus = get_report_status(report_id)\nprint(f\"Report status: {status}\")\n&lt;\/code&gt;<\/pre>\n<h3>Etapa 4: resultados de processamento<\/h3>\n<p>A API retorna um relat\u00f3rio de similaridade que normalmente inclui uma pontua\u00e7\u00e3o de similaridade, correspond\u00eancias de origem e texto destacado.<\/p>\n<pre>&lt;code&gt;def process_report(report):\n  similarity_score = report.get(\"similarity_score\", 0)\n  sources = report.get(\"matches\", [])\n\n  print(f\"Similarity Score: {similarity_score}%\")\n  print(f\"Top Sources:\")\n\n  for source in sources[:5]:\n  print(f\"  - {source.get('source_name', 'Unknown')}\")\n  print(f\"  Match: {source.get('match_percentage', 0)}%\")\n&lt;\/code&gt;<\/pre>\n<p>Esse padr\u00e3o REST API oferece controle total sobre o fluxo de envio, exibi\u00e7\u00e3o de resultados e experi\u00eancia do usu\u00e1rio. A desvantagem \u00e9 que voc\u00ea precisa lidar com toda a integra\u00e7\u00e3o.<\/p>\n<h2>Integra\u00e7\u00e3o do Canvas LTI 1.3 \u2014 Fluxo de configura\u00e7\u00e3o e autentica\u00e7\u00e3o JWT<\/h2>\n<p>O Canvas \u00e9 uma das plataformas LMS mais amplamente adotadas, e a integra\u00e7\u00e3o de uma ferramenta de detec\u00e7\u00e3o de pl\u00e1gio por meio do LTI 1.3 fornece a integra\u00e7\u00e3o nativa mais profunda poss\u00edvel.<\/p>\n<h3>Entendendo o LTI 1.3 no Canvas<\/h3>\n<p>O LTI 1.3 (aterrissagem) substituiu o padr\u00e3o LTI 1.1.2 mais antigo por um modelo de autoriza\u00e7\u00e3o mais robusto. Ele usa o OAuth 2.0 com JWT (JSON Web Tokens) para autentica\u00e7\u00e3o, tornando-o mais seguro do que as abordagens de chave de API. As ferramentas do Canvas LTI 1.3 s\u00e3o lan\u00e7adas dentro do quadro do LMS, recebem o contexto de atribui\u00e7\u00e3o, enviam documentos e retornam os resultados para o boletim de notas.<\/p>\n<h3>Fluxo de configura\u00e7\u00e3o<\/h3>\n<p><strong>1. Crie uma chave LTI 1.3 no Canvas:<\/strong> Navegue at\u00e9 Configura\u00e7\u00f5es \u2192 Aplicativos \u2192 Configurar um novo aplicativo. O Canvas gera um ID de cliente e um segredo.<\/p>\n<p><strong>2. Configure o Deep Linking:<\/strong> Configure o URL de inicializa\u00e7\u00e3o do LTI e os URLs de retorno de chamada. O Canvas envia esses par\u00e2metros ao iniciar sua ferramenta.<\/p>\n<p><strong>3. Implemente a verifica\u00e7\u00e3o do JWT:<\/strong> Quando o Canvas inicia sua ferramenta, ele envia uma carga \u00fatil JWT contendo o contexto do usu\u00e1rio, o ID da atribui\u00e7\u00e3o e as informa\u00e7\u00f5es do curso. Seu aplicativo deve verificar a assinatura JWT usando o segredo do cliente.<\/p>\n<pre>&lt;code&gt;import jwt\n\ndef verify_canvas_jwt(jwt_token, client_secret):\n  try:\n  payload = jwt.decode(\n  jwt_token,\n  client_secret,\n  algorithms=[\"RS256\"],\n  audience=\"your-canvas-client-id\"\n  )\n  return payload\n  except jwt.ExpiredSignatureError:\n  raise Exception(\"Token expired\")\n  except jwt.InvalidTokenError:\n  raise Exception(\"Invalid token\")\n\n# Usage\ntry:\n  user_context = verify_canvas_jwt(jwt_token, client_secret)\n  assignment_id = user_context.get(\"custom\", {}).get(\"assignment_id\")\n  course_id = user_context.get(\"custom\", {}).get(\"context_id\")\nexcept Exception as e:\n  raise Exception(f\"JWT verification failed: {e}\")\n&lt;\/code&gt;<\/pre>\n<p><strong>4. Envie arquivos por meio da API do Canvas:<\/strong> Depois de ter o contexto de atribui\u00e7\u00e3o, use a API do Canvas para recuperar os envios dos alunos e enviar documentos ao seu servi\u00e7o de detec\u00e7\u00e3o de pl\u00e1gio.<\/p>\n<p><strong>5. Resultados de retorno:<\/strong> Publique o relat\u00f3rio de similaridade de volta ao Canvas por meio da API do GradeBook ou de um link LTI personalizado para que os instrutores possam ver os resultados diretamente em seu boletim de notas.<\/p>\n<h3>Webhooks da plataforma de detec\u00e7\u00e3o de pl\u00e1gio de tela<\/h3>\n<p>O Canvas oferece uma plataforma de detec\u00e7\u00e3o de pl\u00e1gio dedicada com assinaturas de webhook para integra\u00e7\u00f5es modernas. Essa abordagem permite que seu servi\u00e7o assine eventos de pl\u00e1gio e receba notifica\u00e7\u00f5es do webhook quando as verifica\u00e7\u00f5es forem conclu\u00eddas, eliminando a necessidade de polling.<\/p>\n<p>O fluxo de assinatura do webhook envolve:<\/p>\n<ul>\n<li>Assinando eventos de pl\u00e1gio, verifique os eventos por meio da API do Canvas Webhook<\/li>\n<li>Receber cargas JSON quando uma verifica\u00e7\u00e3o de pl\u00e1gio \u00e9 conclu\u00edda<\/li>\n<li>Processando o relat\u00f3rio e retornando os resultados ao Canvas<\/li>\n<\/ul>\n<p>Esse padr\u00e3o de webhook \u00e9 a abordagem recomendada para novas integra\u00e7\u00f5es com o Canvas, pois reduz a lat\u00eancia e o carregamento do servidor em compara\u00e7\u00e3o com o polling.<\/p>\n<h2>Plugin de pl\u00e1gio do Moodle \u2014 padr\u00e3o de desenvolvimento de plugins<\/h2>\n<p>O Moodle fornece um subsistema de pl\u00e1gio que permite que plugins de terceiros se integrem diretamente aos fluxos de trabalho e atribui\u00e7\u00e3o de notas. Um plugin Moodle Plagiarism segue um padr\u00e3o de desenvolvimento bem definido.<\/p>\n<h3>Arquitetura do plugin do Moodle Pl\u00e1gio<\/h3>\n<p>Um plug-in do Moodle Pl\u00e1gio se registra com a API do Moodle Plagiarism e aparece como uma op\u00e7\u00e3o de envio quando os professores criam tarefas. O plugin deve implementar fun\u00e7\u00f5es espec\u00edficas do manipulador que o Moodle chama durante o ciclo de vida do envio.<\/p>\n<pre>&lt;code&gt;\/\/ Example Moodle plagiarism plugin structure\n\nclass plagiarism_plugin_your_plugin extends plagiarism_plugin_base {\n\n  public function check($submission) {\n  \/\/ Retrieve the submitted file from the submission\n  \/\/ Send it to your plagiarism detection service\n  \/\/ Return a score and report\n  return $this-&gt;check_plagiarism($submission);\n  }\n\n  public function get_report_html($submission) {\n  \/\/ Return the HTML report for the Gradebook\n  return $this-&gt;generate_report_html($submission);\n  }\n\n  public function delete_submitted_files($submission) {\n  \/\/ Clean up files after check\n  $this-&gt;cleanup_files($submission);\n  }\n}\n&lt;\/code&gt;<\/pre>\n<h3>Padr\u00e3o de desenvolvimento de plugins<\/h3>\n<ol>\n<li><strong>Registre o plugin:<\/strong> Adicione seu plugin ao subsistema de pl\u00e1gio do Moodle, implementando a classe base e registrando-a no diret\u00f3rio <code>db\/<\/code>.<\/li>\n<li><strong>Lidar com os envios de atribui\u00e7\u00f5es:<\/strong> Implemente o m\u00e9todo <code>check()<\/code> para receber os arquivos enviados do m\u00f3dulo de atribui\u00e7\u00e3o do Moodle, envi\u00e1-los ao seu servi\u00e7o de detec\u00e7\u00e3o de pl\u00e1gio e receber uma pontua\u00e7\u00e3o de similaridade.<\/li>\n<li><strong>Gerar relat\u00f3rios:<\/strong> Implemente <code>get_report_html()<\/code> para retornar um relat\u00f3rio de similaridade formatado que o Moodle pode exibir na visualiza\u00e7\u00e3o de notas ou atribui\u00e7\u00f5es.<\/li>\n<li><strong>Gerenciar a limpeza do arquivo:<\/strong> Implementar <code>delete_submitted_files()<\/code> para manipular a exclus\u00e3o de documentos quando as atribui\u00e7\u00f5es s\u00e3o classificadas e os dados do aluno s\u00e3o arquivados.<\/li>\n<li><strong>Integre-se com notas:<\/strong> Devolva as pontua\u00e7\u00f5es ao Boletim do Moodle para que os instrutores vejam os resultados da semelhan\u00e7a ao lado do fluxo de trabalho de classifica\u00e7\u00e3o.<\/li>\n<\/ol>\n<p>Esse padr\u00e3o fornece integra\u00e7\u00e3o profunda \u2013 a verifica\u00e7\u00e3o de pl\u00e1gio acontece automaticamente quando os alunos enviam tarefas, os resultados aparecem diretamente no livro de notas e nenhuma interven\u00e7\u00e3o manual \u00e9 necess\u00e1ria. A desvantagem \u00e9 que o desenvolvimento do plugin do Moodle requer conhecimento em PHP e familiaridade com a arquitetura do Moodle.<\/p>\n<h2>Processamento ass\u00edncrono e webhooks \u2014 o padr\u00e3o moderno<\/h2>\n<p>Para aplicativos de produ\u00e7\u00e3o que lidam com altos volumes de envios, as chamadas de API s\u00edncronas criam gargalos. O processamento ass\u00edncrono com notifica\u00e7\u00f5es de webhook \u00e9 o padr\u00e3o moderno para aplicativos de verifica\u00e7\u00e3o de pl\u00e1gio de alto volume.<\/p>\n<h3>Por que o Async + Webhooks s\u00e3o importantes<\/h3>\n<p>Quando um aluno envia um papel, process\u00e1-lo de forma s\u00edncrona pode demorar alguns segundos. Em aplicativos que lidam com centenas de envios por hora, o processamento s\u00edncrono significa que os usu\u00e1rios esperam. O padr\u00e3o ass\u00edncrono resolve isso:<\/p>\n<ul>\n<li>Aceitando Envios instantaneamente<\/li>\n<li>Processando documentos de forma ass\u00edncrona nos servidores do servi\u00e7o<\/li>\n<li>Notificando seu aplicativo via webhook quando o processamento for conclu\u00eddo<\/li>\n<li>Retornando os resultados ao LMS ou aplicativo sem bloquear fluxos de trabalho do usu\u00e1rio<\/li>\n<\/ul>\n<h3>Configura\u00e7\u00e3o da assinatura do webhook<\/h3>\n<p>As assinaturas do Webhook seguem um padr\u00e3o padr\u00e3o:<\/p>\n<ol>\n<li><strong>Registrar pontos de extremidade do webhook:<\/strong> Seu aplicativo exp\u00f5e um terminal HTTP que recebe notifica\u00e7\u00f5es do webhook.<\/li>\n<li><strong>Subscreva-se a Eventos:<\/strong> Assine os eventos de conclus\u00e3o do Plagio por meio da API de gerenciamento de webhooks do servi\u00e7o.<\/li>\n<li><strong>Receber e processar webhooks:<\/strong> Quando uma verifica\u00e7\u00e3o de pl\u00e1gio \u00e9 conclu\u00edda, o servi\u00e7o envia uma solicita\u00e7\u00e3o POST ao terminal de webhook com os dados do relat\u00f3rio.<\/li>\n<li><strong>Verificar assinaturas do webhook:<\/strong> Verifique as cargas \u00fateis do webhook de entrada usando assinaturas HMAC ou tokens JWT para garantir a autenticidade.<\/li>\n<li><strong>Atualize o LMS ou o aplicativo:<\/strong> Assim que o webhook chegar com o relat\u00f3rio, atualize o registro do aluno, a entrada do livro de notas ou o banco de dados do aplicativo.<\/li>\n<\/ol>\n<p>Esse padr\u00e3o \u00e9 essencial para os sistemas de produ\u00e7\u00e3o. Ele elimina o polling, reduz as chamadas de API por ordens de magnitude e fornece resultados em tempo real, sem bloquear as intera\u00e7\u00f5es do usu\u00e1rio.<\/p>\n<h2>Arquitetura de conformidade \u2014 Requisitos t\u00e9cnicos da FERPA + GDPR<\/h2>\n<p>Ao integrar a detec\u00e7\u00e3o de pl\u00e1gio em aplicativos educacionais, a conformidade n\u00e3o \u00e9 uma nota de rodap\u00e9 legal &#8211; \u00e9 um requisito essencial da arquitetura. A FERPA e o GDPR regem como os dados educacionais s\u00e3o armazenados, processados e compartilhados.<\/p>\n<h3>Requisitos t\u00e9cnicos da FERPA<\/h3>\n<p>A Family Educational Rights Act (FERPA) estabelece padr\u00f5es federais para registros de educa\u00e7\u00e3o nos Estados Unidos. Do ponto de vista da arquitetura t\u00e9cnica:<\/p>\n<ul>\n<li><strong>Minimiza\u00e7\u00e3o de dados:<\/strong> Colete e armazene apenas os dados m\u00ednimos necess\u00e1rios para a verifica\u00e7\u00e3o de pl\u00e1gio. N\u00e3o armazene os identificadores dos alunos al\u00e9m do necess\u00e1rio.<\/li>\n<li><strong>Reten\u00e7\u00e3o de dados:<\/strong> Implemente pol\u00edticas de exclus\u00e3o automatizada para documentos enviados e relat\u00f3rios de similaridade. Os documentos devem ser exclu\u00eddos ap\u00f3s a conclus\u00e3o do cheque, a menos que a institui\u00e7\u00e3o exija reten\u00e7\u00e3o para revis\u00e3o.<\/li>\n<li><strong>Transfer\u00eancia de dados:<\/strong> Verifique se os documentos s\u00e3o transmitidos pelo TLS 1.2 ou superior. A criptografia em repouso deve ser aplicada a todos os dados armazenados.<\/li>\n<li><strong>Controle de acesso:<\/strong> Implemente o controle de acesso baseado em fun\u00e7\u00e3o (RBAC) para que apenas usu\u00e1rios autorizados (instrutores, administradores) possam visualizar relat\u00f3rios de similaridade.<\/li>\n<\/ul>\n<h3>Requisitos t\u00e9cnicos do GDPR<\/h3>\n<p>O Regulamento Geral de Prote\u00e7\u00e3o de Dados (GDPR) se aplica a institui\u00e7\u00f5es que processam dados de residentes da UE. Os requisitos do GDPR incluem:<\/p>\n<ul>\n<li><strong>Base legal:<\/strong> Documente a base legal para o processamento (normalmente interesse leg\u00edtimo ou consentimento expl\u00edcito).<\/li>\n<li><strong>Contrato de Processamento de Dados (DPA):<\/strong> Execute um DPA com seu provedor de servi\u00e7os de detec\u00e7\u00e3o de pl\u00e1gio, que descreve as responsabilidades de manipula\u00e7\u00e3o de dados.<\/li>\n<li><strong>Direito ao apagamento:<\/strong> Implemente pontos de extremidade da API ou mecanismos que permitem a exclus\u00e3o de dados do aluno mediante solicita\u00e7\u00e3o.<\/li>\n<li><strong>Localiza\u00e7\u00e3o de dados:<\/strong> Verifique se seu provedor armazena dados na UE ou os transfere fora. Se fora da UE, verifique as salvaguardas apropriadas (cl\u00e1usulas contratuais padr\u00e3o, decis\u00f5es de adequa\u00e7\u00e3o).<\/li>\n<li><strong>Privacidade por design:<\/strong> Incorpore a prote\u00e7\u00e3o de dados \u00e0 arquitetura do sistema \u2014 coleta de dados m\u00ednimo, exclus\u00e3o autom\u00e1tica e trilhas de auditoria claras.<\/li>\n<\/ul>\n<h3>Lista de verifica\u00e7\u00e3o de conformidade (arquitetura t\u00e9cnica)<\/h3>\n<table>\n<thead>\n<tr>\n<th>Requerimento<\/th>\n<th>Implementa\u00e7\u00e3o t\u00e9cnica<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Criptografia TLS<\/td>\n<td>Use o TLS 1.2+ para todos os dados em tr\u00e2nsito<\/td>\n<\/tr>\n<tr>\n<td>Criptografia em repouso<\/td>\n<td>Criptografia AES-256 para documentos e relat\u00f3rios armazenados<\/td>\n<\/tr>\n<tr>\n<td>Exclus\u00e3o automatizada<\/td>\n<td>Trabalhos agendados que excluem documentos ap\u00f3s o per\u00edodo de reten\u00e7\u00e3o<\/td>\n<\/tr>\n<tr>\n<td>Acesso baseado em fun\u00e7\u00e3o<\/td>\n<td>RBAC com n\u00edveis de permiss\u00e3o (estudante, instrutor, administrador)<\/td>\n<\/tr>\n<tr>\n<td>Registro de auditoria<\/td>\n<td>Registros imut\u00e1veis de quando os documentos s\u00e3o enviados, verificados e acessados<\/td>\n<\/tr>\n<tr>\n<td>Gerenciamento de consentimento<\/td>\n<td>IU e API de rastreamento de consentimento para gerenciamento de desativa\u00e7\u00e3o<\/td>\n<\/tr>\n<tr>\n<td>Verifica\u00e7\u00e3o da transfer\u00eancia de dados<\/td>\n<td>Confirme os mecanismos e as jurisdi\u00e7\u00f5es de transfer\u00eancia de dados do provedor<\/td>\n<\/tr>\n<tr>\n<td>Pol\u00edtica de privacidade<\/td>\n<td>Limpar pol\u00edtica de privacidade publicada para usu\u00e1rios explicando o uso de dados<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Arquitetura de primeira conformidade<\/h3>\n<p>Uma arquitetura de compliance primeiro constr\u00f3i a prote\u00e7\u00e3o de dados no design do sistema, em vez de aparafus\u00e1-la ap\u00f3s a implanta\u00e7\u00e3o. Isso significa:<\/p>\n<ul>\n<li>Projetando para exclus\u00e3o autom\u00e1tica de dados desde o primeiro dia<\/li>\n<li>Implementando o gerenciamento de consentimento antes de escrever qualquer c\u00f3digo<\/li>\n<li>Escolhendo um provedor cujas pr\u00e1ticas de manuseio de dados se alinham com suas obriga\u00e7\u00f5es de conformidade<\/li>\n<li>Documentando fluxos de dados para fins de auditoria<\/li>\n<\/ul>\n<p><strong>O que recomendamos:<\/strong> trata a conformidade com a FERPA e o GDPR como requisitos t\u00e9cnicos n\u00e3o negoci\u00e1veis. N\u00e3o assuma que os materiais de marketing de um provedor cobrem a conformidade \u2013 verifique sua implementa\u00e7\u00e3o t\u00e9cnica. Use um provedor que ofere\u00e7a pol\u00edticas claras de reten\u00e7\u00e3o de dados, padr\u00f5es de criptografia e suporte a DPA. Se a verifica\u00e7\u00e3o de conformidade for dif\u00edcil, sua institui\u00e7\u00e3o pode enfrentar riscos legais, independentemente de qu\u00e3o boa seja a detec\u00e7\u00e3o de pl\u00e1gio.<\/p>\n<h2>escolhendo seu provedor<\/h2>\n<p>Ao selecionar um provedor de detec\u00e7\u00e3o de pl\u00e1gio para integra\u00e7\u00e3o com API, avalie os seguintes fatores:<\/p>\n<h3>Qualidade de detec\u00e7\u00e3o<\/h3>\n<p>Avalie a cobertura do banco de dados do provedor e a precis\u00e3o da detec\u00e7\u00e3o de similaridade. Procure provedores que ofere\u00e7am acesso a bancos de dados acad\u00eamicos, fontes da web e materiais publicados. A precis\u00e3o \u00e9 importante \u2014 falsos positivos danificam a confian\u00e7a e os falsos negativos prejudicam a integridade acad\u00eamica.<\/p>\n<h3>Documenta\u00e7\u00e3o da API<\/h3>\n<p>Uma boa documenta\u00e7\u00e3o da API \u00e9 essencial. Procure provedores com documenta\u00e7\u00e3o clara da API REST, bibliotecas do SDK e exemplos de c\u00f3digo em v\u00e1rios idiomas. A m\u00e1 documenta\u00e7\u00e3o significa uma integra\u00e7\u00e3o mais lenta e mais tempo de desenvolvimento.<\/p>\n<h3>Suporte LMS<\/h3>\n<p>Verifique o suporte \u00e0 integra\u00e7\u00e3o do LMS \u2014 Canvas LTI 1.3, plug-in Moodle Plagiarism e integra\u00e7\u00e3o do Blackboard, se voc\u00ea precisar de algum deles. Alguns provedores suportam apenas plataformas espec\u00edficas.<\/p>\n<h3>Conformidade e tratamento de dados<\/h3>\n<p>Reveja a pol\u00edtica de reten\u00e7\u00e3o de dados do provedor, os padr\u00f5es de criptografia e o suporte ao DPA. \u00c9 aqui que muitos provedores ficam aqu\u00e9m.<\/p>\n<h3>Modelo de pre\u00e7os<\/h3>\n<p>Avalie as estruturas de pre\u00e7os \u2014 por cheque, assinatura ou licenciamento institucional. Considere se o modelo \u00e9 dimensionado adequadamente para suas necessidades de volume.<\/p>\n<h3>Suporte e documenta\u00e7\u00e3o<\/h3>\n<p>A qualidade do suporte ao provedor afeta a velocidade de integra\u00e7\u00e3o e a capacidade de solu\u00e7\u00e3o de problemas. Procure provedores com equipes de suporte responsivas e documenta\u00e7\u00e3o abrangente.<\/p>\n<h3>abordagem recomendada<\/h3>\n<ul>\n<li>Se voc\u00ea precisar de flexibilidade e controle m\u00e1ximos, escolha um provedor com uma API REST robusta.<\/li>\n<li>Se voc\u00ea precisar de uma integra\u00e7\u00e3o profunda com o LMS com o m\u00ednimo de desenvolvimento, escolha um provedor que ofere\u00e7a suporte a LTI 1.3 ou plugin nativo.<\/li>\n<li>Se a conformidade for cr\u00edtica, verifique as pr\u00e1ticas de manipula\u00e7\u00e3o de dados antes de se comprometer.<\/li>\n<li>Se voc\u00ea estiver criando um aplicativo educacional do zero, comece com a integra\u00e7\u00e3o da API REST e adicione plugins LMS conforme necess\u00e1rio.<\/li>\n<\/ul>\n<h2>Lista de verifica\u00e7\u00e3o de implementa\u00e7\u00e3o \u2014 etapas pr\u00e1ticas<\/h2>\n<p>Use esta lista de verifica\u00e7\u00e3o ao planejar sua integra\u00e7\u00e3o com a API de detec\u00e7\u00e3o de pl\u00e1gio:<\/p>\n<ul>\n<li>Defina o escopo da integra\u00e7\u00e3o: quais aplicativos ou plataformas LMS precisam de verifica\u00e7\u00e3o de pl\u00e1gio<\/li>\n<li>Selecione seu provedor e revise completamente a documenta\u00e7\u00e3o da API<\/li>\n<li>Verifique a conformidade do provedor com a FERPA, o GDPR e as pol\u00edticas da sua institui\u00e7\u00e3o<\/li>\n<li>Obtenha credenciais da API e configure a autentica\u00e7\u00e3o<\/li>\n<li>Projete o fluxo de envio: como os documentos ser\u00e3o enviados \u00e0 API<\/li>\n<li>Implementar a chave da API ou autentica\u00e7\u00e3o JWT (dependendo do padr\u00e3o de integra\u00e7\u00e3o)<\/li>\n<li>Construa a l\u00f3gica de processamento de resultados: como analisar e exibir relat\u00f3rios de similaridade<\/li>\n<li>Implemente o tratamento de erros para falhas de API e casos de borda<\/li>\n<li>Projete a interface do usu\u00e1rio para envio, exibi\u00e7\u00e3o de resultados e gera\u00e7\u00e3o de relat\u00f3rios<\/li>\n<li>Teste a integra\u00e7\u00e3o com documentos de amostra antes do uso da produ\u00e7\u00e3o<\/li>\n<li>Configurar pol\u00edticas de reten\u00e7\u00e3o de dados e exclus\u00e3o automatizada<\/li>\n<li>Documente a integra\u00e7\u00e3o para suas equipes de desenvolvimento e TI<\/li>\n<li>Treine instrutores e administradores sobre o uso da verifica\u00e7\u00e3o integrada de pl\u00e1gio<\/li>\n<\/ul>\n<h2>Resumo<\/h2>\n<p>A integra\u00e7\u00e3o de uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS requer um planejamento cuidadoso em rela\u00e7\u00e3o \u00e0 arquitetura t\u00e9cnica, requisitos de conformidade e experi\u00eancia do usu\u00e1rio. Os quatro padr\u00f5es de integra\u00e7\u00e3o \u2014 REST API, LTI 1.3, plugin Moodle e integra\u00e7\u00e3o com Blackboard \u2014 atendem a diferentes necessidades e n\u00edveis de complexidade.<\/p>\n<p>Principais conclus\u00f5es:<\/p>\n<ul>\n<li>A API REST oferece flexibilidade m\u00e1xima, mas requer mais esfor\u00e7o de desenvolvimento<\/li>\n<li>O LTI 1.3 oferece integra\u00e7\u00e3o profunda com LMS com autentica\u00e7\u00e3o JWT segura<\/li>\n<li>Os plug-ins do Moodle Plagiorismo fornecem integra\u00e7\u00e3o nativa do livro de notas<\/li>\n<li>O processamento ass\u00edncrono com webhooks \u00e9 o padr\u00e3o moderno para aplica\u00e7\u00f5es de produ\u00e7\u00e3o<\/li>\n<li>A conformidade com a FERPA e GDPR deve ser projetada na arquitetura desde o primeiro dia<\/li>\n<li>Escolha o seu provedor com base na qualidade da API, suporte ao LMS, pr\u00e1ticas de conformidade e pre\u00e7os<\/li>\n<\/ul>\n<p>A abordagem de conformidade em primeiro lugar \u2013 tratar os requisitos da FERPA e do GDPR como arquitetura t\u00e9cnica central e n\u00e3o como uma reflex\u00e3o tardia \u2013 \u00e9 o que separa as integra\u00e7\u00f5es respons\u00e1veis das arriscadas. Priorize a minimiza\u00e7\u00e3o de dados, a criptografia, a exclus\u00e3o automatizada e a verifica\u00e7\u00e3o do provedor antes de escrever qualquer c\u00f3digo de integra\u00e7\u00e3o.<\/p>\n<h2>Guias relacionados<\/h2>\n<p>Leia nosso conte\u00fado relacionado para um contexto mais profundo:<\/p>\n<ul>\n<li><a href=\"https:\/\/hub.paper-checker.com\/blog\/ethical-implications-ai-detection-databases-2\/\">implica\u00e7\u00f5es \u00e9ticas dos bancos de dados de detec\u00e7\u00e3o de IA<\/a> \u2014 Entendendo o contexto da FERPA e o contexto do GDPR nas ferramentas de integridade acad\u00eamica<\/li>\n<li><a href=\"https:\/\/hub.paper-checker.com\/blog\/best-plagiarism-checkers-2026\/\">Melhores verificadores de pl\u00e1gio 2026<\/a> \u2014 Estrutura de compara\u00e7\u00e3o e avalia\u00e7\u00e3o de provedores<\/li>\n<li><a href=\"https:\/\/hub.paper-checker.com\/blog\/copyleaks-vs-turnitin-which-wins-2026\/\">copyleaks vs turnitin: qual ganha 2026?<\/a> \u2014 detalhado Compara\u00e7\u00e3o de provedores para uso institucional<\/li>\n<li><a href=\"https:\/\/hub.paper-checker.com\/blog\/bulk-plagiarism-checker-for-educators\/\">Vador de pl\u00e1gio em massa para educadores<\/a> \u2014 casos de uso educacional e processamento em massa<\/li>\n<li><a href=\"https:\/\/hub.paper-checker.com\/blog\/ai-detector-reliability-2026\/\">confiabilidade do detector de IA em 2026<\/a> \u2014 Avalia\u00e7\u00e3o do contexto de precis\u00e3o e da qualidade da detec\u00e7\u00e3o<\/li>\n<\/ul>\n<h2>Refer\u00eancias-chave<\/h2>\n<p>Materiais de origem e documenta\u00e7\u00e3o:<\/p>\n<ul>\n<li><a href=\"https:\/\/copydetect.in\/ur\/blog\/copydetect-plagiarism-api-integration\">Guia de integra\u00e7\u00e3o do CopyDetect<\/a><\/li>\n<li><a href=\"https:\/\/netus.ai\/blog\/integrating-a-plagiarism-detector-api-with-your-website\">Guia de integra\u00e7\u00e3o do Netus AI<\/a><\/li>\n<li><a href=\"https:\/\/www.plagaware.com\/service\/api\">Documenta\u00e7\u00e3o da API do Plagaware<\/a><\/li>\n<li><a href=\"https:\/\/copyleaks.com\/api\/plagiarism-checker\">Documenta\u00e7\u00e3o da API do CopyLeaks<\/a><\/li>\n<li><a href=\"https:\/\/developerdocs.instructure.com\/services\/canvas\/external-tools\/plagiarism-detection-platform\/webhooks_subscriptions_for_plagiarism_platform\">Plataforma de detec\u00e7\u00e3o de pl\u00e1gio do Canvas \u2014 Assinaturas de webhooks<\/a><\/li>\n<li><a href=\"https:\/\/moodledev.io\/docs\/5.0\/apis\/subsystems\/plagiarism\">API do Moodle Plagiarism<\/a><\/li>\n<li><a href=\"https:\/\/8allocate.com\/blog\/ferpa-gdpr-for-ai-in-education-a-practical-deployment-checklist\/\">FERPA\/GDPR para IA na educa\u00e7\u00e3o \u2014 Lista de verifica\u00e7\u00e3o pr\u00e1tica de implanta\u00e7\u00e3o<\/a><\/li>\n<li><a href=\"https:\/\/poorvucenter.yale.edu\/teaching\/teaching-resource-library\/ai-guidance-for-teachers\/ai-course-assignment-design\/protecting\">Orienta\u00e7\u00e3o Yale Ferpa \u2014 Design de Atribui\u00e7\u00e3o de Curso de AI<\/a><\/li>\n<li><a href=\"https:\/\/plagiarismcheck.org\/for-developers\/\">Documenta\u00e7\u00e3o do desenvolvedor plagiarismcheck.org<\/a><\/li>\n<li><a href=\"https:\/\/www.compilatio.net\/en\/lms-integration\">Integra\u00e7\u00e3o de compila\u00e7\u00e3o LMS<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Aprenda como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS com guias passo a passo, exemplos de c\u00f3digo e arquitetura de conformidade para os requisitos da FERPA e do GDPR.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_locale":"pt_PT","_original_post":"https:\/\/hub.paper-checker.com\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/","iawp_total_views":1,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-6420","post","type-post","status-publish","format-standard","hentry","category-uncategorized","pt-PT"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS - Paper Checker<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS - Paper Checker\" \/>\n<meta property=\"og:description\" content=\"Aprenda como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS com guias passo a passo, exemplos de c\u00f3digo e arquitetura de conformidade para os requisitos da FERPA e do GDPR.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/\" \/>\n<meta property=\"og:site_name\" content=\"Paper Checker\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-13T15:49:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/hub.paper-checker.com\/wp-content\/uploads\/2024\/12\/home.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"21 minutos\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS - Paper Checker","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/","og_locale":"pt_PT","og_type":"article","og_title":"Como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS - Paper Checker","og_description":"Aprenda como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS com guias passo a passo, exemplos de c\u00f3digo e arquitetura de conformidade para os requisitos da FERPA e do GDPR.","og_url":"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/","og_site_name":"Paper Checker","article_published_time":"2026-07-13T15:49:10+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/hub.paper-checker.com\/wp-content\/uploads\/2024\/12\/home.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"admin","Tempo estimado de leitura":"21 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/#article","isPartOf":{"@id":"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/"},"author":{"name":"admin","@id":"https:\/\/hub.paper-checker.com\/#\/schema\/person\/7e979880444bcdcfb210d9b76a053c37"},"headline":"Como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS","datePublished":"2026-07-13T15:49:10+00:00","mainEntityOfPage":{"@id":"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/"},"wordCount":3804,"commentCount":0,"publisher":{"@id":"https:\/\/hub.paper-checker.com\/#organization"},"articleSection":["Uncategorized"],"inLanguage":"pt-PT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/","url":"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/","name":"Como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS - Paper Checker","isPartOf":{"@id":"https:\/\/hub.paper-checker.com\/#website"},"datePublished":"2026-07-13T15:49:10+00:00","breadcrumb":{"@id":"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/hub.paper-checker.com\/pt\/blog\/how-to-integrate-plagiarism-checker-api-application-lms\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/hub.paper-checker.com\/"},{"@type":"ListItem","position":2,"name":"Como integrar uma API do verificador de pl\u00e1gio em seu aplicativo ou LMS"}]},{"@type":"WebSite","@id":"https:\/\/hub.paper-checker.com\/#website","url":"https:\/\/hub.paper-checker.com\/","name":"Paper Checker","description":"","publisher":{"@id":"https:\/\/hub.paper-checker.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/hub.paper-checker.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-PT"},{"@type":"Organization","@id":"https:\/\/hub.paper-checker.com\/#organization","name":"Paper Checker","url":"https:\/\/hub.paper-checker.com\/","logo":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/hub.paper-checker.com\/#\/schema\/logo\/image\/","url":"https:\/\/paper-checker.com\/wp-content\/uploads\/2024\/12\/Group.png","contentUrl":"https:\/\/paper-checker.com\/wp-content\/uploads\/2024\/12\/Group.png","width":30,"height":30,"caption":"Paper Checker"},"image":{"@id":"https:\/\/hub.paper-checker.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/hub.paper-checker.com\/#\/schema\/person\/7e979880444bcdcfb210d9b76a053c37","name":"admin","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/secure.gravatar.com\/avatar\/04c851fab809bac4416b7937f4c28db54a7f55b67b05cd380845289fe111b878?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/04c851fab809bac4416b7937f4c28db54a7f55b67b05cd380845289fe111b878?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/04c851fab809bac4416b7937f4c28db54a7f55b67b05cd380845289fe111b878?s=96&d=mm&r=g","caption":"admin"},"sameAs":["http:\/\/paper-checker.com.loc"],"url":"https:\/\/hub.paper-checker.com\/blog\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/hub.paper-checker.com\/wp-json\/wp\/v2\/posts\/6420","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hub.paper-checker.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hub.paper-checker.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hub.paper-checker.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hub.paper-checker.com\/wp-json\/wp\/v2\/comments?post=6420"}],"version-history":[{"count":1,"href":"https:\/\/hub.paper-checker.com\/wp-json\/wp\/v2\/posts\/6420\/revisions"}],"predecessor-version":[{"id":6847,"href":"https:\/\/hub.paper-checker.com\/wp-json\/wp\/v2\/posts\/6420\/revisions\/6847"}],"wp:attachment":[{"href":"https:\/\/hub.paper-checker.com\/wp-json\/wp\/v2\/media?parent=6420"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hub.paper-checker.com\/wp-json\/wp\/v2\/categories?post=6420"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hub.paper-checker.com\/wp-json\/wp\/v2\/tags?post=6420"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}