> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryrollup.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Profile

> What Rollup's profile returns.

```swift theme={null}
public struct Profile: Codable, Sendable, Equatable
```

What `Rollup.shared.profile(schema:)` returns: your schema's shape exactly, `null` where the person's life does not say. See [Profile](/guides/profile).

<ResponseField name="json" type="Data">
  The filled profile, as JSON.
</ResponseField>

<ResponseField name="value" type="JSONValue">
  The filled profile as a [`JSONValue`](/reference/json-value).
</ResponseField>

<ResponseField name="evidence" type="[String: [String]]">
  PhotoKit local identifiers behind each filled field, by JSON Pointer, such as `/food/favorite_cuisine`.
</ResponseField>

<ResponseField name="refused" type="[String: String]">
  Fields Rollup would not fill (health, religion, sexuality, ethnicity, politics, children), by JSON Pointer, with the reason.
</ResponseField>

## JSON

When encoded, `json` is the object it holds, not a string:

```json theme={null}
{
  "json": { "favorite_cuisine": "Japanese", "drinks_coffee": true },
  "evidence": { "/favorite_cuisine": ["5A1C...-001"] },
  "refused": {}
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.