Divisional Charts API - Ruby on Rails Integration

Generate Navamsa (D9), Dashamsa (D10), and other divisional charts

Overview

Generate Navamsa (D9), Dashamsa (D10), and other divisional charts

POST /v2/astrology/divisional-charts
Pricing: $0.006 per request | Framework: Ruby on Rails | Auth: API Key required

Quick Start

1. Installation

gem install httparty

2. Environment Setup

# .env
VEDIKA_API_KEY=your_api_key_here
Security: Never commit API keys to version control. Always use environment variables.

Complete Implementation

# app/services/divisional_charts_service.rb
require 'httparty'

class DivisionalChartsService
  include HTTParty
  base_uri 'https://vedika-api-854222120654.us-central1.run.app'

  def initialize
    @api_key = ENV['VEDIKA_API_KEY']
  end

  def get_divisional_charts(params)
    response = self.class.post(
      '/v2/astrology/divisional-charts',
      body: params.to_json,
      headers: {
        'Content-Type' => 'application/json',
        'x-api-key' => @api_key
      },
      timeout: 10
    )

    if response.success?
      response.parsed_response
    else
      raise "Vedika API Error: #{response.code} - #{response.message}"
    end
  end
end

# app/controllers/divisional_charts_controller.rb
class DivisionalChartsController < ApplicationController
  skip_before_action :verify_authenticity_token, only: [:create]

  def create
    service = DivisionalChartsService.new
    result = service.get_divisional_charts(params.permit!)

    render json: result, status: :ok
  rescue => e
    render json: { error: e.message }, status: :internal_server_error
  end
end

# config/routes.rb:
# post '/divisional-charts', to: 'divisional_charts#create'

Request Parameters

Parameter Type Required Description
datetime varies Yes See API documentation
latitude varies Yes See API documentation
longitude varies Yes See API documentation
timezone varies Yes See API documentation
chartType varies Yes See API documentation

Error Handling

Status Code Error Solution
400 Bad Request Check request parameters and format
401 Unauthorized Verify API key is correct
402 Payment Required Insufficient balance - recharge at console.vedika.io
429 Rate Limit Exceeded Implement exponential backoff or upgrade plan
500 Server Error Retry after a few seconds

Best Practices

Response Format

{
  "success": true,
  "data": {
    // Endpoint-specific response data
  },
  "timestamp": "2026-01-07T10:30:00Z",
  "cost": 0.006
}

Related Endpoints

Birth Chart Kundli Match Panchang Dasha Periods Dosha Analysis

Other Frameworks

React Next.js Vue.js Angular Node.js Python/Flask Django

Support

Need help integrating this endpoint?