Technical Test - Python Programmer Grupo Nexxera

Overview

Technical Test Nexxera Group

Teste Técnico - Grupo de Programadores Python Nexxera

📍 Prepare-se para usar a API

Nossa API de transações de contas digitais permite que você trabalhe diretamente com recursos de dados relacionados às atividades bancárias do seu aplicativo. A API de contas digitais usa protocolos padrão HTTP em que as cargas úteis JSON serão retornadas em resposta às solicitações HTTP. É implementado internamente com base nos princípios RESTful.

🛠️ Abrir e rodar o projeto

Instruções necessárias para abrir e executar o projeto

Instale o Python 3

  1. Clone o repositório e entre na pasta:
git clone https://github.com/rauldosS/technical-test-nexxera.git
cd technical-test-nexxera
  1. Crie um ambiente virtual:

Linux

virtualenv <nome_da_virtualenv>

Windows

python -m venv <nome_da_virtualenv>
  1. Ative o ambiente virtual que você acabou de criar:

Linux

source <nome_da_virtualenv>/bin/activate

Windows

.\<nome_da_virtualenv>\Scripts\activate
  1. Instale os pacotes de desenvolvimento local:
pip install -r requirements.txt
  1. Execute as migrações:
python manage.py migrate

Rode o servidor de desenvolvimento:

python manage.py runserver

📍 Execução no ambiente Windows

alt text

📍 Informação de recursos

Informação Descrição
Formato de resposta JSON
Formato de envio JSON
Requer autenticação Não
Taxa limitada Não

📍 URL base (API Overview)

O URL base usado para a API é formatado conforme mostrado abaixo:

http://127.0.0.1:8000/api/

Ao acessar a URL base uma página chamada Api Overview contendo as configurações e lista de requisições aceitas será apresentadas.

alt text

⚙️ Parâmetros

Nome Requerido Descrição
function opcional Filtro para extrato das transações pela função Crédito ou Débito
account opcional Filtro para extrato das transações pelo identificador numérico da Conta virtual

📍 Cabeçalhos

Uma HTTP típica para a API inclui os seguintes cabeçalhos:

Content-Type: application/json; charset=utf8
  • Content-Type: cada solicitação deve incluir um Content-Type cabeçalho.

🔨 Consumo da API

Todas as transações

Consulta todas as transações

/api/transaction-list

Utilize o parâmetro account com o valor do identificador da conta para consultar o extrato de uma conta específica:

/api/transaction-list/?account=2

Utilize o parâmetro function com o valor do tipo de transação para consultar o extrato do tipo Crédito ou Débito: > Tipos disponíveis C e D sendo respectivamente identificadores de Crédito e Débito.

/api/transaction-list/?function=D

Utilize os parâmetros account e function separados por & para realizar os filtros a cima juntos:

/api/transaction-list/?account=1&function=D
/api/transaction-list/?account=1&function=C

Detalhes da Transação

URL base

/api/transaction-detail

v.g. detalhes da transação 1

/api/transaction-detail/1

Criar transação

/api/transaction-create
  • No corpo da requisição adicione o JSON com os dados da transação a ser criada:
{
    "account": 1,
    "description": "Books",
    "value": 505,
    "function": "C"
}

Atualizar transação

URL base

/api/transaction-update

v.g. atualizando transação 5

/api/transaction-update/5
  • No corpo da requisição adicione o JSON com os dados da transação a ser atualizada:
{
    "account": 1,
    "description": "Books",
    "value": 505,
    "function": "C"
}

Consumo através do Insomnia REST

alt text alt text

Consumo através do Django Rest framework

alt text

✔️ Técnicas e tecnologias utilizadas

Faça uma lista de tecnologias e técnicas utilizadas (a justificativa e descrição são opcionais):

  • Linguagem de programação: Python
  • Frameworks: Django
    • Django REST framework: é um kit de ferramentas poderoso e flexível para a construção de APIs da Web.
      • Function Based Views: Visualizações regulares baseadas em funções.
Owner
Raul dos Santos Moraes
A Full-Stack Programmer that loves apply his knowledge to solve problems, create amazing products and impact lives.
Raul dos Santos Moraes
Fast and multi-threaded script to automatically claim targeted username including 14 day bypass

Instagram Username Auto Claimer Fast and multi-threaded script to automatically claim targeted username. Click here to report bugs. Usage Download ZIP

265 Dec 28, 2022
This is a walkthrough about understanding the #BoF machine present in the #OSCP exam.

Buffer Overflow methodology Introduction These are 7 simple python scripts and a methodology to ease (not automate !) the exploitation. Each script ta

3isenHeiM 53 Dec 08, 2022
Make your Pass (sanitaire) Fun Again

Make Your Pass (Sanitaire) Fun Again Customize your Pass Sanitaire (French name for EU digital Covide19 Certificate) with colors and images, thus make

101 Dec 01, 2022
Discord Voice Channel Automatic Online

Discord-Selfbot-voice Features: Discord Voice Channel Automatic Online FAQ Q: How can I obtain my token? A: 1. How to obtain your token in android 2.

Pranav Ajay 3 Oct 31, 2022
Telegram Bot for updating ongoing matches of Fotmob.com in channel by @AbirHasan2005

Fotmob-Bot A very simple Telegram Bot which will update ongoing matches of Fotmob in a channel. Demo Channel Configs API_ID - Get this from @TeleORG_B

Abir Hasan 22 Oct 21, 2022
A minimalist file manager for those who want to use Linux mobile devices.

Portfolio A minimalist file manager for those who want to use Linux mobile devices. Usage Tap to activate and press to select, to browse, open, copy,

Martin Abente Lahaye 71 Nov 18, 2022
A discord token grabber made in Python 3

Discord Token Grabber A Discord token grabber written in Python 3. This version of the grabber only supports Windows. Features Transfers via Discord w

Mega145 4 Aug 04, 2022
DEPRECATED - Official Python Client for the Discogs API

⚠️ DEPRECATED This repository is no longer maintained. You can still use a REST client like Requests or other third-party Python library to access the

Discogs 483 Dec 31, 2022
ZenML 🙏: MLOps framework to create reproducible ML pipelines for production machine learning.

ZenML is an extensible, open-source MLOps framework to create production-ready machine learning pipelines. It has a simple, flexible syntax, is cloud and tool agnostic, and has interfaces/abstraction

ZenML 2.6k Dec 27, 2022
Tinyman Python SDK

tinyman-py-sdk Tinyman Python SDK Design Goal This SDK is designed for automated interaction with the Tinyman AMM. It will be most useful for develope

Tinyman 113 Dec 30, 2022
The Bot provide Hadith API and fetch content via api.hadith.sutanlab.id

Bot Hadith-API on Telegram The Bot provide Hadith API and fetch content via api.hadith.sutanlab.id Built With Python Asynchronous HTTP protocol client

xMan 12 Feb 19, 2022
A Telegram bot that searches for the original source of anime, manga, and art

A Telegram bot that searches for the original source of anime, manga, and art How to use the bot Just send a screenshot of the anime, manga or art or

Kira Kormak 9 Dec 28, 2022
See GitHub API on terminal

gitbees About gitbees uses the GitHub API to show user data and ``repos` Using Make sure you have a python interpreter and then python gitbees.py Lice

Marcello Belanda 1 Nov 29, 2021
Google translator bot using pyTelegramBotAPI

iTranslator-bot Super google translator bot using pyTelegramBotAPI A bot is a professional bot that automatically detects a language in texts or capti

Abdulatif 6 Nov 22, 2022
PYthon Warframe Market API(pywmapi)

pywmapi PYthon Warframe Market API(pywmapi) API for warframe market, written in Python. For now, the implemented function is listed below: auth sign i

AyajiLin 7 Dec 11, 2022
A python script that can send notifications to your phone via SMS text

Discord SMS Notification A python script that help you send text message to your phone one of your desire discord channel have a new message. The proj

2 Apr 25, 2022
LOL-banner - A discord bot that bans anybody playing league of legends

LOL-banner A discord bot that bans anybody playing league of legends This bot ha

bsd_witch 46 Dec 17, 2022
Simple contact bot for telegram, written in python.

🔗 | Install Install the requirements with pip install -r requirements.txt 📋 | Setup Get your token from BotFather Get your UserId with Nicegram or w

Stehack 3 Dec 10, 2022
discord bot made in discord.py

udeline discord bot made in discord.py, which's main features include: general use server moderation fun commands other cool commands dependencies dis

1 Feb 08, 2022
Discovery is an open-source Discord Bot with the main features Tickets, Moderation, Giveaways and Reaction roles.

Discovery is an open-source Discord Bot with the main features Tickets, Moderation, Giveaways and Reaction roles.

1 Dec 29, 2021