Upcoming mobiles api (UpMob API)

upcoming_mobiles_api (UpMob API)

UpMob API scraps 91mobiles.com to get devices information which are yet to be released in the Indian market and stores it in a postgres db

API

Fetch all upcoming devices

  • URL

    /devices/top100

  • Method

    GET

  • URL Params

    None

  • Success Response:

    • Code: 200
      Content:
[
  {
        "device_name": "OnePlus 8T Pro",
        "last_updated": "Updated on: Jul 26, 2021",
        "expected": "August 7, 2021 (Unofficial)",
        "price": 57999,
        "img_url": "https://www.91-img.com/pictures/139350-v1-oneplus-8t-pro-mobile-phone-large-1.jpg?tr=q-60",
        "source_url": "https://www.91mobiles.com/oneplus-8t-pro-price-in-india",
        "spec_score": 0,
        "ram": {
            "String": "8 GB",
            "Valid": true
        },
        "processor": {
            "String": "Qualcomm Snapdragon 865 Plus",
            "Valid": true
        },
        "front_camera": {
            "String": "16 MP",
            "Valid": true
        },
        "rear_camera": {
            "String": "64 MP + 48 MP + 8 MP + 5 MP",
            "Valid": true
        },
        "battery": {
            "String": "4850 mAh",
            "Valid": true
        },
        "display": {
            "String": "6.78 inches",
            "Valid": true
        },
        "operating_system": {
            "String": "Android v10 (Q)",
            "Valid": true
        },
        "custom_ui": {
            "String": "Oxygen OS",
            "Valid": true
        },
        "chipset": {
            "String": "Qualcomm Snapdragon 865 Plus",
            "Valid": true
        },
        "cpu": {
            "String": "Octa core (3.09 GHz, Single core, Kryo 585 + 2.42 GHz, Tri core, Kryo 585 + 1.8 GHz, Quad core, Kryo 585)",
            "Valid": true
        },
        "architecture": {
            "String": "64 bit",
            "Valid": true
        },
        "graphics": {
            "String": "Adreno 650",
            "Valid": true
        },
        "display_type": {
            "String": "Fluid AMOLED",
            "Valid": true
        },
        "screen_size": {
            "String": "6.78 inches (17.22 cm)",
            "Valid": true
        },
        "resolution": {
            "String": "1440 x 3168 pixels",
            "Valid": true
        },
        "pixel_density": {
            "String": "513 ppi",
            "Valid": true
        },
        "touchscreen": {
            "String": "Yes, Capacitive Touchscreen, Multi-touch",
            "Valid": true
        },
        "internal_memory": {
            "String": "256 GB",
            "Valid": true
        },
        "expandable_memory": {
            "String": "No",
            "Valid": true
        },
        "m_camera_setup": {
            "String": "Quad",
            "Valid": true
        },
        "m_resolution": {
            "String": "64 MP Primary Camera48 MP, Wide Angle, Ultra-Wide Angle Camera8 MP Telephoto Camera5 MP Camera",
            "Valid": true
        },
        "m_autofocus": {
            "String": "Yes, Phase Detection autofocus",
            "Valid": true
        },
        "m_ois": {
            "String": "Yes",
            "Valid": true
        },
        "m_sensors": {
            "String": "",
            "Valid": false
        },
        "m_flash": {
            "String": "Yes, LED Flash",
            "Valid": true
        },
        "m_image_resolution": {
            "String": "",
            "Valid": false
        },
        "m_settings": {
            "String": "Exposure compensation, ISO control",
            "Valid": true
        },
        "m_shooting_modes": {
            "String": "Continuos ShootingHigh Dynamic Range mode (HDR)",
            "Valid": true
        },
        "m_camera_features": {
            "String": "Digital ZoomAuto FlashFace detectionTouch to focus",
            "Valid": true
        },
        "m_video_recording": {
            "String": "",
            "Valid": false
        },
        "s_camera_setup": {
            "String": "Single",
            "Valid": true
        },
        "s_resolution": {
            "String": "16 MP Primary Camera",
            "Valid": true
        },
        "s_video_recording": {
            "String": "",
            "Valid": false
        },
        "capacity": {
            "String": "4850 mAh",
            "Valid": true
        },
        "removable_battery": {
            "String": "No",
            "Valid": true
        },
        "wireless_charging": {
            "String": "",
            "Valid": false
        },
        "quick_charging": {
            "String": "Yes, Fast",
            "Valid": true
        },
        "usb": {
            "String": "Yes",
            "Valid": true
        },
        "sim_slots": {
            "String": "Dual SIM, GSM+GSM",
            "Valid": true
        },
        "network_support": {
            "String": "5G supported by device (network not rolled-out in India), 4G (supports Indian bands), 3G, 2G",
            "Valid": true
        },
        "fingerprint_sensor": {
            "String": "Yes",
            "Valid": true
        },
        "other_sensors": {
            "String": "Light sensor, Proximity sensor, Accelerometer, Compass, Gyroscope",
            "Valid": true
        },
        "scrape_timestamp": "2021-07-25T21:33:31.655995Z"
    }, ... ]

Get Started with the Installation

  1. Required Installations
    1. Install GoLang in your system
    2. Install Docker in your system
    3. Install Golang Migrate Tool
    4. Make sure you have make tool installed.
  2. Navigate into the project directory
  3. Run
       go mod download
       make postgres
       make createdb
       make migrateup 
    This sets up and runs your postgres container, creates db in it and migrates database.
  4. Run
        make server
    This runs main.go and you are good to Go 😉

Development and Contributing

Yes, please! Feel free to contribute, raise issues and recommend best practices. Makefile is your friend.

A few resources:

Similar Resources

Api-product - A basic REST-ish API that allows you to perform CRUD operations for Products

Description A basic REST-ish API that allows you to perform CRUD operations for

Jan 3, 2022

Contact-api - API for websites I have designed that have to send unauthenticated email

contact https://aws.amazon.com/premiumsupport/knowledge-center/custom-headers-ap

Apr 11, 2022

Triangula-api-server - API server for processing images with Triangula

Triangula API server Minimalistic API server that calculates and serves artistic

Jan 10, 2022

Reservationbox-api - Reservationbox Api with golang

Reservationbox-api - Reservationbox Api with golang

reservationbox-api How to set up application Cloning git on this link : https://

Jan 30, 2022

Go api infra - Infrastructure for making api on golang so easy

Go Infra Api Infrastructre methods and types for make api simple Response abstra

Jun 18, 2022

Api-waf-example-cdk - Demo using sam to drive a CDK serverless api

CDK SAM Demo Demo using sam to drive a CDK serverless api Stack Setup go build -

Feb 5, 2022

A GoLang wrapper for Politics & War's API. Forego the hassle of accessing the API directly!

A GoLang wrapper for Politics & War's API. Forego the hassle of accessing the API directly!

Mar 5, 2022

An unofficial API based on Hasura API Reference.

An unofficial API based on Hasura API Reference.

Apr 14, 2022

Lol-champions-api - A REST API app for CRUD' ing informations related to League of Legends champions, written with Go

LOL-CHAMPIONS-API Just a REST API app for CRUD' ing informations related to Leag

Mar 17, 2022
Go library for accessing the MyAnimeList API: http://myanimelist.net/modules.php?go=api

go-myanimelist go-myanimelist is a Go client library for accessing the MyAnimeList API. Project Status The MyAnimeList API has been stable for years a

Sep 28, 2022
Go client for the YNAB API. Unofficial. It covers 100% of the resources made available by the YNAB API.

YNAB API Go Library This is an UNOFFICIAL Go client for the YNAB API. It covers 100% of the resources made available by the YNAB API. Installation go

Oct 6, 2022
An API client for the Notion API implemented in Golang

An API client for the Notion API implemented in Golang

Dec 30, 2022
lambda-go-api-proxy makes it easy to port APIs written with Go frameworks such as Gin to AWS Lambda and Amazon API Gateway.

aws-lambda-go-api-proxy makes it easy to run Golang APIs written with frameworks such as Gin with AWS Lambda and Amazon API Gateway.

Jan 6, 2023
A API scanner written in GOLANG to scan files recursively and look for API keys and IDs.

GO FIND APIS _____ ____ ______ _____ _ _ _____ _____ _____ _____ / ____|/ __ \ | ____|_ _| \ | | __ \ /\ | __ \_

Oct 25, 2021
The NVD API is an unofficial Go wrapper around the NVD API.

NVD API The NVD API is an unofficial Go wrapper around the NVD API. Supports: CVE CPE How to use The following shows how to basically use the wrapper

Jan 7, 2023
go-whatsapp-rest-API is a Go library for the WhatsApp web which use Swagger as api interface

go-whatsapp-rest-API go-whatsapp-rest-API is a Go library for the WhatsApp web which use Swagger as api interface Multi-devices (MD) Support. This ver

Dec 15, 2022
A Wrapper Client for Google Spreadsheet API (Sheets API)

Senmai A Wrapper Client for Google Spreadsheet API (Sheets API) PREPARATION Service Account and Key File Create a service account on Google Cloud Plat

Nov 5, 2021
💾 Wolke API is the API behind Wolke image storage and processing aswell as user management

?? Wolke API Wolke API is the API behind Wolke image storage and processing aswell as user management Deploying To deploy Wolke Bot you'll need podman

Dec 21, 2021
Arweave-api - Arweave API implementation in golang

Arweave API Go implementation of the Arweave API Todo A list of endpoints that a

Jan 16, 2022