Apresentando modelos de AWS API e recursos publicamente disponíveis para definições de API da AWS


Apresentando modelos de AWS API e recursos publicamente disponíveis para definições de API da AWS

Hoje, estamos anunciando uma nova fonte publicamente disponível de modelos de API para Amazon Net Companies (AWS). Agora estamos publicando modelos de API da AWS diariamente para Maven Central e fornecer acesso de código aberto a um novo repositório em Github. Este repositório inclui uma fonte definitiva e atualizada de Smithy API Fashions que definem definições e comportamentos de interface pública da AWS.

Esses modelos de Smithy podem ser usados ​​para entender melhor os serviços da AWS e criar ferramentas de desenvolvedor, como SDKs personalizados e interfaces de linha de comando (CLIS) para conectar -se à AWS ou a ferramentas de teste para validar suas integrações de aplicativos na AWS.

Desde 2018, estamos gerando clientes SDK e ferramentas de CLI usando Modelos de Smithy. Todos os serviços da AWS são modelados em Smithy para documentar minuciosamente o contrato de API, incluindo operações e comportamentos como protocolos, autenticação, tipos de solicitação e resposta e erros.

Com este recurso público, você pode criar e testar seus próprios aplicativos que podem se integrar diretamente aos serviços da AWS com confiança como:

  • Gerar clientes SDK -Você pode construir seus próprios SDKs criados para fins específicos para comunidades de idiomas sem Suporte oficial do AWS SDK e gerador de código de cliente usando a Smithy Toolchain para gerar bibliotecas SDK do cliente.
  • Gerando implementações de API -Você pode gerar stubs de servidor para estrutura específica de linguagem, mesmo Modelo Protocolo de Contexto (MCP) Configurações do servidor para seus agentes de IA. Você tem validação interna para garantir que você siga seus próprios padrões de API.
  • Construa suas próprias ferramentas de desenvolvedor -Você pode criar suas próprias ferramentas sobre a AWS, como ferramentas de teste simuladas, geradores de políticas da IAM ou abstrações de nível superior para se conectar à AWS.
  • Entenda os comportamentos da AWS API – Você pode investigar concisa e facilmente seu artefato para revisar e entender rapidamente como os SDKs interpretam as chamadas da API e os comportamentos que esperam com essas chamadas.

Aprenda sobre os modelos AWS API
Você pode navegar nos modelos de serviço da AWS diretamente no Github, acessando o api-models-aws repositório. Este repositório contém modelos de Smithy com o JSON AST Formato para todos os serviços públicos da AWS API. Todos os modelos de Smithy consistem em formas e características. Formas são instâncias de sorts e características são usados ​​para adicionar mais informações às formas que podem ser úteis para clientes, servidores ou documentação.

O repositório de modelos da AWS contém:

  • Os diretórios de serviço de nível superior são nomeados usando o do serviço, onde é o valor do modelo sdkidbaseado em baixo e com espaços convertidos em hífens
  • Cada diretório de serviço contém um diretório por do serviço, onde é o valor da forma do serviço Propriedade da versão.
  • Contido em um diretório de versão de serviço, um arquivo de modelo chamado <sdk-id>-.json estará presente

Por exemplo, quando você deseja definir um RunInstances API in Amazon EC2 Serviço, o modelo usa service Tipo, um ponto de entrada de uma API que agrega recursos e operações juntos. A forma referenciada por um membro é chamada goal.

com.amazonaws.ec2#AmazonEC2": {
      "sort": "service",
      "model": "2016-11-15",
      "operations": (
....
        {
          "goal": "com.amazonaws.ec2#RunInstances"
        },
....
	  )

O operation O tipo representa a entrada, saída, características e possíveis erros de uma operação da API. As formas de operação estão vinculadas a recurso formas e serviço formas. Uma operação é definida na IDL usando um Operação_statement. Nos traços, você pode encontrar informações detalhadas da API, como documentação, exemplos e assim por diante.

"com.amazonaws.ec2#RunInstances": {
      "sort": "operation",
      "enter": {
        "goal": "com.amazonaws.ec2#RunInstancesRequest"
      },
      "output": {
        "goal": "com.amazonaws.ec2#Reservation"
      },
      "traits": {
        "smithy.api#documentation": "

Launches the desired variety of cases utilizing an AMI for which you might have....", smithy.api#examples": ( { "title": "To launch an occasion", "documentation": "This instance launches an occasion utilizing the desired AMI, occasion sort, safety group, subnet, block system mapping, and tags.", "enter": { "BlockDeviceMappings": ( { "DeviceName": "/dev/sdh", "Ebs": { "VolumeSize": 100 } } ), "ImageId": "ami-abc12345", "InstanceType": "t2.micro", "KeyName": "my-key-pair", "MaxCount": 1, "MinCount": 1, "SecurityGroupIds": ( "sg-1a2b3c4d" ), "SubnetId": "subnet-6e7f829e", "TagSpecifications": ( { "ResourceType": "occasion", "Tags": ( { "Key": "Function", "Worth": "check" } ) } ) }, "output": {} } ) } },

Usamos Smithy extensivamente para modelar nossas APIs de serviço e fornecer as liberações diárias do AWS SDKS e AWS CLI. Os modelos de AWS API podem ser úteis para a implementação de stubs de servidores para interagir com os serviços da AWS.

Como construir com modelos de API da AWS
Os modelos de API de Smithy fornecem Recursos de construção como ferramentas de construção, geradores de código de cliente ou servidor, suporte de IDE e implementações. Por exemplo, com Smithy CLIvocê pode criar facilmente seus modelos, executar validação ad-hoc, comparar modelos para diferenças, modelos de consulta e muito mais. O Smithy CLI facilita o trabalho com Smithy sem configurar Java ou usar o Smithy Gradle Plugins.

Quero mostrar dois exemplos de como criar seus próprios aplicativos com os modelos de AWS API e as ferramentas de construção da Smithy.

  • Construa um cliente SDK mínimo – Este projeto de amostra fornece um modelo para começar a usar Smithy TypeScript Para criar um cliente SDK mínimo do AWS para a Amazon DynamoDB. Você pode criar o SDK mínimo a partir do modelo Smithy e executar o código de exemplo. Para saber mais, visite o Exemplo de projeto aqui.
  • Construir servidores MCP – Este projeto de amostra fornece um modelo para gerar um frasco de gordura que contém todas as dependências necessárias para executar um MCP StdIO servidor usando a cli smithy. Você pode encontrar MCPServerExample Para construir um servidor MCP modelando as ferramentas como Smithy APIs e ProxyMCPExample Para criar um servidor MCP proxy para qualquer serviço de Smithy. Para saber mais, visite o Repositório do GitHub.

Agora disponível
Agora você pode acessar os modelos AWS API diariamente, fornecendo acesso de código aberto no Repositório de modelos de AWS API e pacotes de modelos de serviço disponíveis em Maven Central. Você pode importar modelos e adicionar dependências usando o pacote Maven de sua escolha.

Para saber mais sobre o idioma de modelagem da API preferido da AWS, visite Smithy.io e é Guia de geração de código. Para saber mais cada SDKS da AWS, visite Ferramentas para construir na AWS e é respectivo repositório Para suporte específico do SDK ou através de seus contatos habituais de suporte à AWS.

Canal



Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *