Geo IP API

IP Address: <% location.ip %>
Country: <% location.country %>
Country code: <% location.country_code %> (<% location.country_code3 %>)
Region: <% location.region %>
City: <% location.city %>
Time zone: <% location.timezone %>
Local time: <% location.localtime %>
Postcode: <% location.postcode %>
Latitude: <% location.latitude %>
Longitude: <% location.longitude %>
Phone prefix: <% location.phone_prefix %>
Currencies: <% location.currencies.join(",") %>
Flag: <% location.flag %>
Languages: <% location.languages.join(",") %>

<% errors.first("ip") %>



TODO:
What is it?
Why you need it?
Use cases, examples
Pricing
Sign up
API example in all languages
Link to api docs

How...?

Choose your favourite language and start coding

  • 
    curl https://api.objectia.com/v1/geoip/8.8.8.8 \
      -H "Authorization: Bearer YOUR-API-KEY" \ 
      -H "Accept: application/json" 
                  
  • 
    using SparkPost;
    
    var transmission = new Transmission();
    transmission.Content.From.Email = "testing@sparkpostbox.com";
    transmission.Content.Subject = "Oh hey";
    
    var recipient = new Recipient
    {
      Address = new Address { Email = "developers+csharp@sparkpost.com" }
    };
    transmission.Recipients.Add(recipient);
    
    var sparky = new Client("");
    sparky.Transmissions.Send(transmission);
                
  • 
    package main
    
    import (
      "github.com/jinzhu/gorm"
      _ "github.com/jinzhu/gorm/dialects/sqlite"
    )
    
    type Product struct {
      gorm.Model
      Code string
      Price uint
    }
    func test() {
    
    }
    
    func main() {
      db, err := gorm.Open("sqlite3", "test.db")
      if err != nil {
        panic("failed to connect database")
      }
      defer db.Close()
    
      // Migrate the schema
      db.AutoMigrate(&Product{})
    
      // Create
      db.Create(&Product{Code: "L1212", Price: 1000})
    
      // Read
      var product Product
      db.First(&product, 1) // find product with id 1
      db.First(&product, "code = ?", "L1212") // find product with code l1212
    
      // Update - update product's price to 2000
      db.Model(&product).Update("Price", 2000)
    
      // Delete - delete product
      db.Delete(&product)
    }          
  • 
    package com.sparkpost;
    
    import com.sparkpost.exception.SparkPostException;
    
    public class SparkPost {
    
        public static void main(String[] args) throws SparkPostException {
            String API_KEY = "";
            Client sparky = new Client(API_KEY);
    
            sparky.sendMessage(
                    "testing@sparkpostbox.com",
                    "developers+java@sparkpost.com",
                    "Oh hey",
                    "Testing SparkPost - the most awesomest email service!");
        }
    }
              
  • 
    const SparkPost = require('sparkpost');
    const sparky = new SparkPost('');
    
    sparky.transmissions.send({
      options: { sandbox: true },
      content: {
        from: 'testing@sparkpostbox.com',
        subject: 'Oh hey'
      },
      recipients: [ { address: 'developers+nodejs@sparkpost.com' } ]
    })
    .then(data => {
      console.log('Woohoo! You just sent your first mailing!');
    })
    .catch(err => {
      console.log('Whoops! Something went wrong');
    });
    
  • 
    <?php
    use SparkPostSparkPost;
    use GuzzleHttpClient;
    use HttpAdapterGuzzle6Client as GuzzleAdapter;
    
    $httpClient = new GuzzleAdapter(new Client());
    $sparky = new SparkPost($httpClient, ['key' => '']);
    
    $sparky->setOptions(['async' => false]);
    $results = $sparky->transmissions->post([
      'options' => [
        'sandbox' => true
      ],
      'content' => [
        'from' => 'testing@sparkpostbox.com',
        'subject' => 'Oh hey'
      ],
      'recipients' => [
        ['address' => ['email'=>'developers+php@sparkpost.com']]
      ]
    ]);
    ?>
              
  • 
    from sparkpost import SparkPost
    
    sparky = SparkPost('')
    
    response = sparky.transmissions.send(
        use_sandbox = True,
        recipients = ['developers+python@sparkpost.com'],
        from_email = 'testing@sparkpostbox.com',
        subject = 'Oh hey')
              
  • 
    # The Greeter class
    class Greeter
      def initialize(name)
        @name = name.capitalize
      end
    
      def salute
        puts "Hello #{@name}!"
      end
    end
    
    g = Greeter.new("world")
    g.salute
              
  • 
    import Foundation
    
    @objc class Person: Entity {
      var name: String!
      var age:  Int!
    
      init(name: String, age: Int) {
        /* /* ... */ */
      }
    
      // Return a descriptive string for this person
      func description(offset: Int = 0) -> String {
        return "\(name) is \(age + offset) years old"
      }
    }