asterwise-com Horoscope API

Daily, weekly, monthly, and yearly horoscopes by moon sign.

Operations 4

GET /v1/horoscope/daily/{moon_sign} Daily horoscope #
GET /v1/horoscope/weekly/{moon_sign} Weekly horoscope #
GET /v1/horoscope/monthly/{moon_sign} Monthly horoscope #
GET /v1/horoscope/yearly/{moon_sign} Yearly horoscope #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/asterwise-com:asterwise-com-horoscope-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

asterwise-com-horoscope-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Asterwise Horoscope API
  description: 'B2B astrology and divination API.

    Vedic (sidereal) and Western (tropical) astrology, numerology, tarot, crystals, dreams, and

    horoscopes. Send birth data, get accurate calculations as structured JSON. 129 endpoints,

    118 MCP tools, HMAC-signed responses.


    **Get your free API key** · Pricing · Support


    ---


    ## Authentication


    Add your API key to every request:

    ```

    Authorization: Bearer YOUR_KEY_HERE

    ```


    Get your key at **asterwise.com** — free, no credit card, instant.


    ---


    ## Your first call

    ```bash

    curl https://api.asterwise.com/v1/astro/natal \

    -H "Authorization: Bearer YOUR_KEY" \

    -H "Content-Type: application/json" \

    -d ''{

    "name": "Arjun Mehta",

    "date": "1985-11-12",

    "time": "06:45",

    "location": "Mumbai"

    }''

    ```


    ---


    ## Key concepts


    **`location`** — Any city name. Resolved automatically.


    **`ayanamsa`** — `lahiri` (default) · `raman` · `kp` · `tropical`


    ---


    500 free calls/month


    status.asterwise.com · Error Reference'
  contact:
    name: Asterwise
    url: https://asterwise.com/
  license:
    name: Commercial
    identifier: LicenseRef-Commercial
  version: '2026-03-01'
servers:
- url: https://api.asterwise.com
  description: Production
tags:
- name: Horoscope
  description: Daily, weekly, monthly, and yearly horoscopes by moon sign.
paths:
  /v1/horoscope/daily/{moon_sign}:
    get:
      tags:
      - Horoscope
      summary: Daily horoscope
      description: Returns today's pre-generated daily horoscope for the given Moon sign. Content is computed from Vedic transit data and generated using AI. Returns 404 if today's horoscope has not been generated yet.
      operationId: get_daily_horoscope_v1_horoscope_daily__moon_sign__get
      parameters:
      - name: moon_sign
        in: path
        required: true
        schema:
          type: string
          title: Moon Sign
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse_HoroscopeData_'
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Authorization failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '413':
          description: Payload too large
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '502':
          description: Upstream provider error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - BearerAuth: []
  /v1/horoscope/weekly/{moon_sign}:
    get:
      tags:
      - Horoscope
      summary: Weekly horoscope
      description: Returns this week's pre-generated weekly horoscope for the given Moon sign.
      operationId: get_weekly_horoscope_v1_horoscope_weekly__moon_sign__get
      parameters:
      - name: moon_sign
        in: path
        required: true
        schema:
          type: string
          title: Moon Sign
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse_HoroscopeData_'
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Authorization failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '413':
          description: Payload too large
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '502':
          description: Upstream provider error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - BearerAuth: []
  /v1/horoscope/monthly/{moon_sign}:
    get:
      tags:
      - Horoscope
      summary: Monthly horoscope
      description: Returns this month's pre-generated monthly horoscope for the given Moon sign.
      operationId: get_monthly_horoscope_v1_horoscope_monthly__moon_sign__get
      parameters:
      - name: moon_sign
        in: path
        required: true
        schema:
          type: string
          title: Moon Sign
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse_HoroscopeData_'
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Authorization failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '413':
          description: Payload too large
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '502':
          description: Upstream provider error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - BearerAuth: []
  /v1/horoscope/yearly/{moon_sign}:
    get:
      tags:
      - Horoscope
      summary: Yearly horoscope
      description: Returns this year's pre-generated yearly horoscope for the given Moon sign.
      operationId: get_yearly_horoscope_v1_horoscope_yearly__moon_sign__get
      parameters:
      - name: moon_sign
        in: path
        required: true
        schema:
          type: string
          title: Moon Sign
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse_HoroscopeData_'
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Authorization failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '413':
          description: Payload too large
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '502':
          description: Upstream provider error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - BearerAuth: []
components:
  schemas:
    HoroscopeData:
      properties:
        content:
          $ref: '#/components/schemas/HoroscopeContent'
        generated_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Generated At
          description: ISO timestamp when the horoscope was generated (UTC)
        period_key:
          type: string
          title: Period Key
          description: 'The period this horoscope covers, on the India Standard Time calendar: YYYY-MM-DD (daily), YYYY-Www, the ISO week of that week''s Monday (weekly), YYYY-MM (monthly) or YYYY (yearly).'
        horizon:
          type: string
          title: Horizon
          description: 'Horizon: daily, weekly, monthly, or yearly'
        moon_sign:
          type: string
          title: Moon Sign
          description: Normalised English Moon sign slug
      type: object
      required:
      - content
      - period_key
      - horizon
      - moon_sign
      title: HoroscopeData
      description: Payload returned by Vedic horoscope GET endpoints.
    ApiResponse_HoroscopeData_:
      properties:
        success:
          type: boolean
          title: Success
          description: True if the request succeeded
          default: true
        message:
          type: string
          title: Message
          description: Human-readable status message
          default: success
        data:
          $ref: '#/components/schemas/HoroscopeData'
          description: The endpoint response payload
      type: object
      required:
      - data
      title: ApiResponse[HoroscopeData]
    ErrorResponse:
      properties:
        success:
          type: boolean
          title: Success
          description: Always false for error responses.
          default: false
          examples:
          - false
        error:
          $ref: '#/components/schemas/ErrorCode'
          description: Machine-readable error code. Use this for programmatic error handling. See doc_url for the canonical docs page. The full set of codes is the ErrorCode enum in this schema.
          examples:
          - validation_error
        message:
          type: string
          title: Message
          description: Human-readable explanation of what went wrong and how to fix it. Safe to surface in customer-facing UIs.
          examples:
          - 'Invalid house_system ''foo''. Valid options: equal, koch, placidus, porphyry, whole_sign.'
        details:
          items: {}
          type: array
          title: Details
          description: Optional structured details. For validation errors, contains per-field error objects. Empty list when there are no structured details.
          examples:
          - - loc:
              - body
              - date
              msg: Invalid date
        retry_after:
          anyOf:
          - type: integer
          - type: 'null'
          title: Retry After
          description: Seconds to wait before retrying. Present on 429 (rate limit) and 503 (temporary outage) responses. Null when retry is not advised or applicable.
          examples:
          - 60
        doc_url:
          type: string
          title: Doc Url
          description: Canonical documentation URL for this error code. Contains causes, examples, and resolution steps.
          examples:
          - https://docs.asterwise.com/reference/errors/validation_error/
        request_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Request Id
          description: Unique identifier for this request. Include when contacting support to enable rapid investigation.
          examples:
          - 3f2b8c1e-7a4d-4e9b-8c21-5d6f0a9b1e37
        timestamp:
          anyOf:
          - type: string
          - type: 'null'
          title: Timestamp
          description: ISO 8601 timestamp of when the error occurred. UTC.
          examples:
          - '2026-05-19T12:34:56.789Z'
      type: object
      required:
      - error
      - message
      - doc_url
      title: ErrorResponse
      description: 'Standard error envelope returned by all Asterwise API endpoints.


        Every error response follows this 8-field shape. The ''error'' field

        is the machine-readable identifier (use it for programmatic handling).

        The ''message'' field is the human-readable explanation. The ''doc_url''

        field links to the canonical documentation for the error code.

        Include ''request_id'' when contacting support.'
    HoroscopePhase:
      properties:
        phase_number:
          type: integer
          title: Phase Number
        start_date:
          type: string
          title: Start Date
          description: Phase start date (YYYY-MM-DD)
        end_date:
          type: string
          title: End Date
          description: Phase end date (YYYY-MM-DD)
        title:
          type: string
          title: Title
        narrative:
          type: string
          title: Narrative
      type: object
      required:
      - phase_number
      - start_date
      - end_date
      - title
      - narrative
      title: HoroscopePhase
    HoroscopeChapter:
      properties:
        chapter_number:
          type: integer
          title: Chapter Number
        start_date:
          type: string
          title: Start Date
          description: Chapter start date (YYYY-MM-DD)
        end_date:
          type: string
          title: End Date
          description: Chapter end date (YYYY-MM-DD)
        title:
          type: string
          title: Title
        theme:
          type: string
          title: Theme
        narrative:
          type: string
          title: Narrative
      type: object
      required:
      - chapter_number
      - start_date
      - end_date
      - title
      - theme
      - narrative
      title: HoroscopeChapter
    HoroscopeLandmarkDate:
      properties:
        date:
          type: string
          title: Date
          description: Landmark date (YYYY-MM-DD)
        event:
          type: string
          title: Event
        tone:
          type: string
          title: Tone
          description: Either favorable or challenging
      type: object
      required:
      - date
      - event
      - tone
      title: HoroscopeLandmarkDate
    HoroscopeContent:
      properties:
        headline:
          type: string
          title: Headline
        narrative:
          type: string
          title: Narrative
        career:
          type: string
          title: Career
        money:
          type: string
          title: Money
        love:
          type: string
          title: Love
        body:
          type: string
          title: Body
        remedy:
          type: string
          title: Remedy
          description: Programmatically injected Vedic remedy text
          default: ''
        do:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Do
          description: 'Daily: actions to take'
        avoid:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Avoid
          description: 'Daily: actions to avoid'
        open_loop:
          anyOf:
          - type: string
          - type: 'null'
          title: Open Loop
          description: 'Daily: forward-looking watch item'
        peak_day:
          anyOf:
          - type: string
          - type: 'null'
          title: Peak Day
          description: 'Weekly: strongest day'
        caution_day:
          anyOf:
          - type: string
          - type: 'null'
          title: Caution Day
          description: 'Weekly: day to approach carefully'
        weekly_mantra:
          anyOf:
          - type: string
          - type: 'null'
          title: Weekly Mantra
          description: 'Weekly: shareable mantra line'
        phases:
          anyOf:
          - items:
              $ref: '#/components/schemas/HoroscopePhase'
            type: array
          - type: 'null'
          title: Phases
          description: 'Monthly: phased breakdown'
        power_window:
          anyOf:
          - type: string
          - type: 'null'
          title: Power Window
          description: 'Monthly: favorable date window'
        caution_window:
          anyOf:
          - type: string
          - type: 'null'
          title: Caution Window
          description: 'Monthly: cautious date window'
        closing_message:
          anyOf:
          - type: string
          - type: 'null'
          title: Closing Message
          description: 'Monthly or yearly: shareable closing line'
        year_theme:
          anyOf:
          - type: string
          - type: 'null'
          title: Year Theme
          description: 'Yearly: karmic theme for the year'
        chapters:
          anyOf:
          - items:
              $ref: '#/components/schemas/HoroscopeChapter'
            type: array
          - type: 'null'
          title: Chapters
          description: 'Yearly: chapter breakdown'
        auspicious_months:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Auspicious Months
          description: 'Yearly: top auspicious months by name'
        landmark_dates:
          anyOf:
          - items:
              $ref: '#/components/schemas/HoroscopeLandmarkDate'
            type: array
          - type: 'null'
          title: Landmark Dates
          description: 'Yearly: key dates with tone'
      type: object
      required:
      - headline
      - narrative
      - career
      - money
      - love
      - body
      title: HoroscopeContent
      description: Stored horoscope prose; fields present depend on horizon (daily/weekly/monthly/yearly).
    ErrorCode:
      type: string
      enum:
      - authentication_failed
      - api_key_missing
      - api_key_not_found
      - api_key_revoked
      - api_key_invalid
      - session_not_found
      - session_revoked
      - session_expired
      - session_required
      - email_not_verified
      - ip_rate_limit_exceeded
      - login_attempts_exceeded
      - account_action_limit_exceeded
      - burst_limit_exceeded
      - monthly_usage_limit_exceeded
      - validation_error
      - invalid_email
      - invalid_request_body
      - sun_calculation_failed
      - solar_day_out_of_range
      - ephemeris_unavailable
      - location_required
      - geocode_query_too_short
      - plan_not_found
      - account_not_found
      - key_not_found
      - subscription_not_found
      - city_not_found
      - resource_not_found
      - ownership_denied
      - payment_verification_failed
      - order_creation_failed
      - already_on_plan
      - max_keys_exceeded
      - subscription_expired
      - payment_provider_unavailable
      - payment_request_invalid
      - payload_too_large
      - email_delivery_failed
      - geocode_unavailable
      - internal_error
      title: ErrorCode
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: 'Pass your Asterwise API key as a Bearer token. Example: Authorization: Bearer aw_live_xxxx'