Junto com a X API v2, lançamos uma nova estratégia de versionamento que permite aos desenvolvedores entender melhor quando esperar alterações nas APIs públicas da X e quando será necessário migrar para novas versões.
Os desenvolvedores serão notificados sobre descontinuações, desativações, alterações e adições à X API por meio de nossos canais de comunicação, para que possam planejar adequadamente a incorporação dessas mudanças em seu roadmap de desenvolvimento. Todas as alterações na API serão registradas no changelog.
Atualmente, a X API tem três versões diferentes. Recomendamos fortemente que os desenvolvedores utilizem a X API v2 ao planejar sua integração, a menos que ainda não tenhamos lançado na v2 a funcionalidade exigida pelo seu caso de uso.
Para saber mais sobre cada versão, visite as seguintes páginas:
- X API v2
- Gnip 2.0 (Enterprise)
Estratégia de versionamento
O versionamento da X API será representado por números de versão declarados no caminho de rota dos nossos endpoints:
https://api.x.com/2/tweets
Nosso objetivo é lançar versões principais da X API conforme necessário, mas não com uma frequência maior do que a cada 12 meses. Uma versão principal será lançada quando forem introduzidas mudanças incompatíveis na API. Publicaremos guias de migração ao lançar uma nova versão principal para ajudar desenvolvedores a migrarem para a nova versão.
Uma mudança incompatível exige que os desenvolvedores alterem seu código para manter a funcionalidade existente em sua App. Mudanças compatíveis serão incrementais e implementadas na versão mais recente quando estiverem prontas, não exigindo trabalho por parte do desenvolvedor, a menos que você queira aproveitar a nova funcionalidade.
Se uma mudança incompatível precisar ser implementada no meio do ciclo (por motivos de segurança ou privacidade), ela será aplicada à versão mais recente.
Alterações com quebra de compatibilidade
Essas alterações exigem que os desenvolvedores modifiquem seu código para manter a funcionalidade existente da sua aplicação.
- Adição de um novo parâmetro obrigatório
- Remoção de um endpoint existente
- Remoção de qualquer campo na resposta (obrigatório ou opcional)
- Remoção de um parâmetro de query
- Reestruturação do formato de entrada ou saída (por exemplo, transformar um campo de nível superior em um subcampo ou alterar a localização dos erros para inline)
- Alteração do nome ou do tipo de dado de um parâmetro de entrada existente ou de um valor de saída
- Alteração do nome de um campo
- Alteração do nome de um recurso
- Alteração de um código de resposta
- Alteração dos tipos de erro
- Alterações nos escopos de autorização existentes
Alterações não disruptivas (non-breaking)
- Adição de um novo endpoint
- Adição de um novo parâmetro opcional
- Adição de um novo campo de resposta
- Alteração de textos em mensagens de erro
- Disponibilização de novos escopos
- “Anulação” de fields (definir o valor de um field como null por motivos de privacidade/segurança, como alternativa à remoção completa)
Descontinuação e desativação
Antes de tudo, aqui está nossa definição do que descontinuação e desativação significam para a X API:
- Descontinuação: O recurso deixa de ser mantido pela equipe. Não haverá novas funcionalidades relacionadas a esse recurso e, se houver bugs ou problemas no produto, a probabilidade de aplicarmos uma correção é extremamente baixa.
- Desativado: O recurso deixará de estar acessível.
Na maioria dos casos, assim que uma nova versão for lançada, a versão anterior será marcada como descontinuada. As versões permanecerão em estado de descontinuação por um período, após o qual serão desativadas.
Por favor, mantenha-se informado para saber mais sobre futuras descontinuações e desativações.