Mateodioev / bank_api-php

Ejemplo de una api rest para un banco hecho en PHP 8

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Bank api

Ejemplo de una api rest simple para un banco

Endpoints

Metodo Endpoint Descripcion
GET /api/docs Documentacion en swagger
GET / Alias de /api/docs
GET /api/users/ Obtener todos los usuarios
POST /api/users/ Crear un nuevo usuario
GET /api/users/{id} Obtener un usuario por su id
PUT /api/users/{id} Actualizar un usuario
DELETE /api/users/{id} Eliminar un usuario
POST /api/users/login/ Obtiene la informacion del usuario si los datos son correctos
POST /api/users/{id}/withdraw Retira una cantidad de un usuario
GET /api/users/{id}/transactions Obtener todas las transaciones de un usuario
GET /api/transactions/{id} Obtener un transacion por su ID
POST /api/transactions/ Crear una nueva transacion

Instalacion

Docker

  1. Clona esta repositorio

    git clone https://github.com/Mateodioev/bank_api-php.git
    cd bank_api-php
  2. Crea los archivos de configuracion

    cp example.env .env
    cp example.htaccess .htaccess

    Luego edita el archivo .env

  3. Levanta el servicio con docker

    docker compose up -d
  4. Ve a la documentacion

    http://localhost:8080/api/docs
    

    Puedes cambiar el puerto en el archivo .env

Manual

  1. Clona esta repositorio

    git clone https://github.com/Mateodioev/bank_api-php.git
    cd bank_api-php
  2. Instalar la base de datos

    Crea un nuevo usuario de mysql y una db

    mysql -u root -p
    CREATE USER 'tu_usuario'@'localhost' IDENTIFIED BY 'contraseña';
    CREATE DATABASE bank_example;
    GRANT ALL PRIVILEGES ON bank_example . * TO 'tu_usuario'@'localhost';
    FLUSH PRIVILEGES;

    Crea las tablas segun las tablas del archivo db.sql

  3. Crea los archivos de configuracion .env y .htaccess

    cp example.htaccess .htaccess
    cp example.env .env

    Luego edita el archivo .env segun tus datos

About

Ejemplo de una api rest para un banco hecho en PHP 8


Languages

Language:PHP 96.0%Language:HTML 2.2%Language:Dockerfile 1.9%