Você pode notar que, ao atualizar para o IRIS For Health da versão 2024.1 para 2024.2+ (2025.1, 2026.1, etc.), onde você acessava anteriormente seu Portal FHIR, agora você está recebendo “Not Found”.

Interface de Programação de Aplicações (API) é um conjunto de definições de sub-rotina, protocolos e ferramentas para a construção de aplicações de software. Em termos gerais, é um conjunto de métodos de comunicação claramente definidos entre vários componentes de software.
Você pode notar que, ao atualizar para o IRIS For Health da versão 2024.1 para 2024.2+ (2025.1, 2026.1, etc.), onde você acessava anteriormente seu Portal FHIR, agora você está recebendo “Not Found”.

Redoc é uma solução de código aberto capaz de renderizar especificações de API em OpenAPI 2.0 ou 3.0+ como portais web muito bonitos e funcionais. Atualmente, para ter algo semelhante, precisamos da extensão ZPM SwaggerUI ou instalar o IAM (InterSystems API Manager) e configurar o Portal do Desenvolvedor do IAM. Agora, a comunidade tem mais uma opção: iris-redoc. Essa solução instala um aplicativo web na sua instância IRIS que usa o Redoc para apresentar um portal web elegante para suas APIs REST.

Uma pergunta que surge rapidamente ao configurar o IAM (também conhecido como Kong Gateway) é quantas rotas devem ser criadas para alcançar todos os objetos de negócio em uma API IRIS.
Um erro comum é criar uma rota por objeto de negócio, multiplicando desnecessariamente o número de rotas.
IAM - InterSystems API Manager é uma ótima ferramenta para monitorar seu tráfego. Se você está tentando usá-lo em seu cluster Kubernetes, talvez tenha tentado fazer um deployment semelhante a este:
apiVersion: intersystems.com/v1alpha1
kind: IrisCluster
metadata:
name: iris
spec:
licenseKeySecret:
name: iris-key-secret
configSource:
name: iris-cpf
imagePullSecrets:
- name: intersystems-pull-secret
topology:
data:
image: containers.intersystems.com/intersystems/iris-arm64:2024.1"2024.1.2"O InterSystems IRIS permite criar APIs REST usando classes ObjectScript e o framework %CSP.REST. Isso possibilita o desenvolvimento de serviços modernos para expor dados para aplicações web, aplicativos móveis ou integrações de sistemas.
Neste artigo, você aprenderá como criar uma API REST básica no InterSystems IRIS, incluindo:
GETe POST Demo.ProductoClass Demo.Producto Extends (%Persistent, %JSON.Adaptor) {
Property Nombre As %String;
Property Precio As %Numeric(10,2);
}Quantas vezes migramos uma instância do IRIS para outra máquina, talvez até para outra versão, e depois de alguns dias percebemos que esquecemos aquela configuração de SSL essencial para que um Business Operation funcione? Ou talvez uma credencial, ou até uma classe solitária em um pacote isolado?
A solução simples é fazer um checklist¹. Um checklist das entidades que precisamos mover. Porém, checklists simples em documentos do Word muitas vezes são esquecidos ou simplesmente ignorados.
À medida que as aplicações escalam, lidar com tarefas computacionais pesadas de forma síncrona se torna um gargalo. Seja para processar grandes volumes de dados, enviar e-mails em massa ou gerenciar integrações com APIs, uma arquitetura desacoplada é essencial.
Desenvolvi recentemente o %ZQueue, um sistema de gerenciamento de filas baseado em processos que combina a persistência de alto desempenho do InterSystems IRIS com um moderno painel em Angular.
O sistema utiliza o clássico modelo Produtor-Consumidor
Eu criei o aplicativo iris-budget para o InterSystems Full Stack Contest em 2026. Por full stack, queremos dizer uma aplicação web ou móvel de frontend que insere, atualiza ou exclui dados no InterSystems IRIS via REST API, Native API, ODBC/JDBC ou Embedded Python.
Meu aplicativo usa múltiplas REST APIs para adicionar uma nova categoria ou recuperar uma lista de categorias de despesas e receitas.
Eu herdei /csp/coffee do module.xml no iris-fullstack-template.
Para este projeto, criei um arquivo Swagger chamado "budget.
Olá, Desenvolvedores!
Assistam a este vídeo para aprender sobre como automatizar o provisionamento e o gerenciamento de serviços FHIR:
⏯ Automatizando o Provisionamento e o Gerenciamento de Serviços FHIR@ Ready 2025
# IRIS-Intelligent Butler
IRIS Intelligent Butler é um sistema de mordomo inteligente com IA construído sobre a plataforma de dados InterSystems IRIS, com o objetivo de fornecer aos usuários assistência abrangente para a vida e o trabalho por meio de inteligência de dados, tomada de decisão automatizada e interação natural.
## Cenário de aplicação
Adição de serviços, inicialização de configurações etc. estão atualmente sendo aprimorados.
As terceiras versões de pré-visualização para desenvolvedores da plataforma de dados InterSystems IRIS®, InterSystems IRIS® for Health e do HealthShare® Health Connect 2026.1 foram publicadas no site de pré-visualização para desenvolvedores do WRC. Os contêineres podem ser encontrados em nosso registro de contêineres e estão marcados com a tag latest-preview.
Essas pré-visualizações para desenvolvedores incluem a remoção do suporte a Mac Intel a partir da versão 2026.1.0 e a reintegração do suporte ao Windows Server 2019 na versão 2026.1.0.
Eu gostaria de compartilhar com você um pequeno truque para personalizar como as mensagens são exibidas no Message Viewer. Em particular, como você pode exibir as mensagens em JSON (em vez da representação padrão em XML).

Mensagens são objetos usados para comunicar componentes de produções de interoperabilidade. No meu exemplo, eu defini uma mensagem que mais tarde eu serializo como JSON para enviar a uma API externa. Essa mensagem é definida como uma mensagem regular e também como um %JSON.Adaptor, para que eu possa exportar/importar diretamente para ou a partir de JSON.
Class interop.msg.DeviceOrderReq Extends (Ens.Request, %JSON.Adaptor)
{
Parameter %JSONNULL As BOOLEAN = 1;
Property externalOrderId As %String(MAXLEN = "");
Property orderStatus As %String;
Property requestedServiceId As %String(MAXLEN = "");
Property patientData As interop.msg.elements.PatientData;
}
Olá a todos,
Como parte do desenvolvimento de uma API para saber a qual instância do IRIS está conectada, encontrei alguns métodos para obter informações sobre o servidor que podem ser úteis.
Obter o nome do servidor: $SYSTEM.INetInfo.LocalHostName()
Obter o IP do servidor: $SYSTEM.INetInfo.HostNameToAddr($SYSTEM.INetInfo.LocalHostName())
Obter o nome da instância: $PIECE($SYSTEM,":",2)
Assim, criei o seguinte código como uma classe BS:
ClassExtends%CSP.RESTChamando o método:
localhost:52773/common/api/check
{
"ServerName": "LAPTOP-KURRO-3",
"ServerIP": "11.52.197.99",
"Instance": "HEALTHCONNECT"
}No dia a dia de qualquer organização, a informação flui entre aplicações, serviços e sistemas muito diferentes entre si. Integrá-los de forma eficiente pode ser um desafio… a menos que você use o InterSystems IRIS.
Neste novo vídeo, eu mostro como construir um fluxo completo de integração combinando múltiplas tecnologias — APIs REST, arquivos CSV, bancos de dados e serviços SOAP — tudo dentro do ambiente visual oferecido pelo motor de interoperabilidade do IRIS.
👉 Você pode assistir ao vídeo aqui:
A demo é baseada nas descrições brutas das classes.
As classes de dados utilizadas são Address, Person, Employee e Company.
Para uma demonstração mais atraente, foi adicionado um método JSONtoString por ID.
Olá amigo! 😊 Como você está hoje?
Gostaria de compartilhar uma pequena parte dos meus aprendizados no meu primeiro projeto oficial: a integração de máquinas de POS/EDC com nosso sistema de faturamento. Foi um desafio empolgante onde tive experiência prática trabalhando com APIs e fornecedores.
Como uma máquina de pagamento realmente funciona?
É simples: comece iniciando/criando uma transação e, depois, recupere o status do pagamento dela.
Aqui, iniciar/criar refere-se ao método POST, e recuperar refere-se ao GET.
Boas-vindas ao resumo mensal de atualizações e lançamentos do VS Code e das extensões relacionadas à InterSystems que são relevantes para os desenvolvedores IRIS.
Vamos detalhar as atualizações que são relevantes para os desenvolvedores InterSystems com dicas sobre como elas podem ser aplicadas em seus projetos diários.
Não se esqueça, se você está migrando do InterSystems Studio para o VS Code, ou deseja aprofundar seu conhecimento, confira os cursos de treinamento do VS Code da George James Software: georgejames.com/vscode-training.
VS Code versão 1.
Olá a todos,
Esta é uma dica rápida sobre como usar URLs em serviços REST API sem distinção entre maiúsculas e minúsculas.
Se você tem uma classe que estende de %CSP.REST e Ens.BusinessService para criar um serviço REST API, e você definiu seu WebApplication em minúsculas:
.png)
XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap" ]
{
<Routes>
<Route Url="/user" Method="POST" Call="User"/>
<Route Url="/login" Method="POST" Call="Login"/>
</Routes>
}Parece-me que, por alguma razão, isto não chegou à documentação oficial e aparenta ser pouco conhecido, embora já tenha sido implementado no IRIS 2020.1.
Graças a @Dan Pasco, obtive uma pista sobre as classes envolvidas. Usei a sequência recomendada de como utilizá-lo. Tudo foi retirado diretamente da Referência de Classe e eu apenas compilei para criar uma primeira visão geral.
É... Chegou a hora dos testes. Sabemos que em muitas vezes, ela até já passou. Bom, e agora? Consigo reforçar a qualidade do meu desenvolvimento?
A resposta é: SIM. Sim, você consegue. A ferramenta Toolqa busca exatamente isto. É um facilitador. Qual é o seu objetivo? Garantir que as APIS atendam aos requisitos de negócio pré-estabelecidos, e também mantenha-se rígida com as <sarcasm> futuras tentativas frustradas </sarcasm> de acabar com a sua aplicação, site, App ou qualquer outro que utilize-se de sua API.
Agora deve estar se perguntando, mas como é que isto acontece?
Estamos desenvolvendo uma aplicação em React e essa aplicação terá seus próprios usuários/senhas. Estamos fazendo alguns testes de autenticação, e estamos procurando conhecer melhor JWT do Iris. Entretanto, segundo a documentação, precisamos passar um body com um usuário do Iris para então receber o token JWT. A nossa preocupação é que essa primeira chamada não parece ser segura, já que precisamos enviar esse body aberto para então conseguir um token. Alguma sugestão de como enviar esse body de forma oculta? utilizamos como draft um post da comunidade:
O Google Forms é a solução mais popular no mercado para a coleta de dados, respostas a questionários e quizzes. Por isso, é a ferramenta ideal para coletar dados e respostas de pacientes de forma prática, eliminando a necessidade de expandir ou desenvolver sistemas complexos.
Olá,
Neste artigo vamos ver o uso do python como linguagem de programação no InterSystems Iris. Para tal vamos usar como referência a versão Community 2025.1 que está disponível para ser baixada em https://download.intersystems.com mediante o login no ambiente. Para maiores informações sobre o download e instalação do Iris veja o link da comunidade https://community.intersystems.com/post/how-download-and-install-intersystems-iris
Uma vez instalado o íris agora precisamos ter o python disponível no nosso ambiente. Temos vários tutoriais explicando a instalação e configuração do python no Iris.
Por muito tempo, eu quis aprender o framework Django, mas sempre surgia algum projeto mais urgente que acabava tomando prioridade. Como muitos desenvolvedores, eu uso Python para projetos de machine learning, mas quando comecei a aprender programação para web, o PHP ainda dominava. Então, quando precisei escolher um framework mais robusto para criar aplicações web e publicar meu trabalho de machine learning, acabei voltando para o PHP.
O IRIS oferece suporte nativo para transformações CCDA e FHIR, mas o acesso e a visualização desses recursos exigem tempo considerável de configuração e conhecimento do produto. O aplicativo IRIS Interop DevTools foi desenvolvido para preencher essa lacuna, permitindo que implementadores comecem a utilizar e visualizar imediatamente as capacidades de transformação embutidas no produto.
Este artigo apresenta uma solução em potencial para a busca semântica de código no TrakCare usando o IRIS Vector Search.
Aqui está uma breve visão geral dos resultados da busca semântica de código do TrakCare para a consulta: "Validação antes de salvar o objeto no banco de dados".
Existem diversos modelos de embedding desenvolvidos para frases e parágrafos, mas eles não são ideais para embeddings específicos de código.
Foram avaliados três modelos de embedding específicos para código: voyage-code-2, CodeBERT e GraphCodeBERT

Sou um grande fã de ficção científica, mas embora eu esteja totalmente a bordo da nave Star Wars (desculpas aos meus colegas Trekkies!), sempre apreciei os episódios clássicos de Star Trek da minha infância. A tripulação diversificada da USS Enterprise, cada um dominando suas funções únicas, é uma metáfora perfeita para entender os agentes de IA e seu poder em projetos como o Facilis. Então, vamos embarcar em uma missão intergaláctica, utilizando a IA como a tripulação da nossa nave e audaciosamente ir audaciosamente ir homem jamais esteve
O que é JWT?
JWT (JSON Web Token) é um padrão aberto (RFC 7519) que oferece um método leve, compacto e auto-contido para transmitir informações de forma segura entre duas partes. É comumente usado em aplicações web para autenticação, autorização e troca de informações.
Um JWT é tipicamente composto por três partes:
1. Cabeçalho JOSE (JSON Object Signing and Encryption)
2. Payload (Carga útil)
3. Assinatura
Essas partes são codificadas no formato Base64Url e concatenadas com pontos (.) separando-as.
Monitorar sua implantação do IRIS é crucial. Com a descontinuação do System Alert and Monitoring (SAM), uma solução moderna e escalável é necessária para obter insights em tempo real, detecção precoce de problemas e eficiência operacional. Este guia aborda a configuração do Prometheus e Grafana no Kubernetes para monitorar o InterSystems IRIS de forma eficaz.
Este guia pressupõe que você já tenha um cluster IRIS implantado usando o InterSystems Kubernetes Operator (IKO), que simplifica a implantação, integração e gerenciamento.
Olá pessoal, tudo bem?
Estou enfrentando problemas na replicação de dados do meu Caché 2016 para um banco PostgreSQL. Preciso lidar com cerca de 300 atualizações de dados por minuto, e, sempre que determinadas tabelas sofrem alterações, essas mudanças precisam ser refletidas em outras bases de dados.
Até o momento, já tentei várias abordagens, como: