Axion Data Center API

Machine-to-machine REST API for vehicle catalog data, multi-region VIN decode, and service health.

Base URLhttps://vd.axn.am/api/v1

Authentication

Bearer token

Header: Authorization: Bearer {DATACENTER_MACHINE_API_KEY}

Environment variable: DATACENTER_MACHINE_API_KEY

Required for all VIN endpoints. Health and this documentation page are public.

GET /api/v1/health Public

Application and database health check

Verifies the service is running and the primary application database accepts connections. Intended for load balancers and uptime monitors.

Try https://vd.axn.am/api/v1/health

Responses

200 Healthy

Schema

  • status string — ok
  • service string — axion-data-center
  • checks
    • database string — ok

Example

{
    "status": "ok",
    "service": "axion-data-center",
    "checks": {
        "database": "ok"
    }
}
503 Degraded

Schema

  • status string — degraded
  • service string
  • checks
    • database string — error

Example

{
    "status": "degraded",
    "service": "axion-data-center",
    "checks": {
        "database": "error"
    }
}
GET /up Public

Laravel framework health route

Built-in Laravel health endpoint (configured in bootstrap/app.php). Returns a minimal OK response when the application boots.

Try https://vd.axn.am/up

Responses

200 OK

Schema

  • message string

Example

{
    "message": "Application up"
}
GET /api/v1/vin/decode Auth required

Raw multi-region VIN decode

Same decode engine as search, but returns the full internal payload including per-region result_sets and summary block. Use search for integrations; use decode for debugging.

Try https://vd.axn.am/api/v1/vin/decode

Query parameters

Name Type Required Description Example
vin string yes VIN to decode (1–32 characters). Partial VINs supported; pass model_year when known for better results. 1GNERGKW5JJ148668
model_year integer no Model year hint forwarded to vPIC (1900–2099). Recommended for partial VINs. 2018
regions string no Comma-separated region codes to query (e.g. americas,europe). Defaults to all enabled regions in config. americas

Responses

200 Success

Schema

  • data
    • vin string
    • success boolean
    • match_type string
    • partial boolean
    • model_year integer|null
    • regions object — per region with result_sets, vehicle, errors, warnings
    • summary
      • any_success boolean
      • successful_regions string[]
      • primary_region string|null
      • match_type string
      • vehicle object|null
    • result_sets array — raw rows from primary region (Code/Value pairs)

Example

{
    "data": {
        "vin": "1GNERGKW5JJ148668",
        "success": true,
        "match_type": "full",
        "partial": false,
        "model_year": null,
        "regions": {
            "americas": {
                "available": true,
                "success": true,
                "match_type": "full",
                "vehicle": {
                    "make": "CHEVROLET",
                    "model": "Traverse",
                    "model_year": 2018
                },
                "result_sets": [
                    [
                        {
                            "Code": "Make",
                            "Value": "CHEVROLET"
                        },
                        {
                            "Code": "Model",
                            "Value": "Traverse"
                        },
                        {
                            "Code": "ModelYear",
                            "Value": "2018"
                        },
                        {
                            "Code": "ErrorCode",
                            "Value": "0"
                        }
                    ]
                ],
                "errors": [],
                "warnings": []
            }
        },
        "summary": {
            "any_success": true,
            "successful_regions": [
                "americas"
            ],
            "primary_region": "americas",
            "match_type": "full",
            "vehicle": {
                "make": "CHEVROLET",
                "model": "Traverse",
                "model_year": 2018
            }
        },
        "result_sets": [
            [
                {
                    "Code": "Make",
                    "Value": "CHEVROLET"
                },
                {
                    "Code": "Model",
                    "Value": "Traverse"
                }
            ]
        ]
    }
}
401 Unauthorized

Schema

  • message string

Example

{
    "message": "Unauthorized."
}