# Allocation Breakdown

`GET` `/v1/allocation-breakdown/{ticker}`

Retrieve sector and country portfolio weightings for an ETF or mutual fund. Returns sectorAllocations and countryAllocations arrays with weight percentages plus sync timestamps - the allocation breakdown shown on ETF and fund profile pages.

## Use cases

- Sector and geographic exposure panels on fund profiles
- Comparing ETF country and sector weights
- Risk and diversification analysis for fund portfolios
- Feeding allocation data into portfolio analytics tools

## Input parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `ticker` | string | Yes | ETF or fund ticker. |

## Output parameters

| Name | Type | Description |
| --- | --- | --- |
| `ticker` | string | ETF or fund ticker. |
| `etf` | boolean | True when the ticker is an ETF. |
| `fund` | boolean | True when the ticker is a mutual fund. |
| `sectorAllocations` | array | GICS sector weight rows. |
| `sectorAllocations[].sector` | string | Sector name. |
| `sectorAllocations[].weightPercentage` | float | Portfolio weight percent. |
| `countryAllocations` | array | Country weight rows. |
| `countryAllocations[].country` | string | Country name. |
| `countryAllocations[].weightPercentage` | float | Portfolio weight percent. |
| `sectorSyncedAt` | string | Sector allocation sync timestamp (ISO 8601). |
| `countrySyncedAt` | string | Country allocation sync timestamp (ISO 8601). |

## Example response

```json
{
  "ticker": "SPY",
  "etf": true,
  "fund": false,
  "sectorAllocations": [
    {
      "sector": "Information Technology",
      "weightPercentage": 32.45
    },
    {
      "sector": "Financials",
      "weightPercentage": 13.12
    },
    {
      "sector": "Health Care",
      "weightPercentage": 12.08
    }
  ],
  "countryAllocations": [
    {
      "country": "United States",
      "weightPercentage": 97.82
    },
    {
      "country": "Ireland",
      "weightPercentage": 0.89
    },
    {
      "country": "United Kingdom",
      "weightPercentage": 0.52
    }
  ],
  "sectorSyncedAt": "2026-06-05T22:02:50-04:00",
  "countrySyncedAt": "2026-06-05T22:02:50-04:00"
}
```

## Examples

### cURL

```bash
curl "https://api.vantafin.com/v1/allocation-breakdown/SPY?apiKey=$VANTAFIN_API_KEY"
```

### Python

```python
from vantafin import RESTClient

client = RESTClient("vf-live-your_api_key")

result = client.get_allocation_breakdown("SPY")

print(result)
```

### JavaScript

```javascript
import { RestClient } from "vantafin";

const client = new RestClient("vf-live-your_api_key");

const result = await client.getAllocationBreakdown("SPY");

console.log(result);
```

### Go

```go
package main

import (
	"fmt"
	"log"

	"github.com/vantafin/vantafin-go"
)

func main() {
	client := vantafin.NewClient("vf-live-your_api_key")

	result, err := client.GetAllocationBreakdown("SPY")
	if err != nil {
		log.Fatal(err)
	}

	fmt.Println(result)
}
```

### Java

```java
import com.vantafin.RestClient;

public class Example {
    public static void main(String[] args) throws Exception {
        RestClient client = new RestClient("vf-live-your_api_key");

        Object result = client.getAllocationBreakdown("SPY");

        System.out.println(result);
    }
}
```

### Ruby

```ruby
require "vantafin"

client = Vantafin::RestClient.new("vf-live-your_api_key")

result = client.get_allocation_breakdown("SPY")

pp result
```
