---
title: "Get publication composition"
---

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

Path: Sureshake API › reports

`GET /v2/reports/{id}/publication-composition`

## Path parameters

- `id` (`report-get-publication-composition.path.id`; string, required)
  - format `uuid`

## Code samples

### cURL

```bash
curl --request GET \
  --url 'https://api.sureshake.com/v2/reports/<id>/publication-composition'
```

### TypeScript

```typescript
const url = 'https://api.sureshake.com/v2/reports/<id>/publication-composition';
const options = {method: 'GET'};

fetch(url, options)
  .then(res => res.json())
  .then(json => console.log(json))
  .catch(err => console.error(err));
```

### Python

```python
import requests

url = "https://api.sureshake.com/v2/reports/<id>/publication-composition"

response = requests.get(url)

print(response.text)
```

## Responses

### 200

Default Response

#### Example

```json
{
  "data": {
    "schema": "sureshake.publication-composition.v1",
    "publicationId": "aac799f4-ea8f-4114-9093-24db2fa60ec5",
    "kind": "update",
    "content": "document",
    "sections": [
      "publication"
    ],
    "permissions": {
      "manageAccess": true,
      "viewActivity": true
    },
    "insights": {
      "status": "unsupported",
      "reason": "no_publication_analysis_pipeline"
    },
    "assistant": {
      "status": "unavailable",
      "reason": "publication_content_not_connected"
    }
  }
}
```

- `data` (`report-get-publication-composition.response.200.data`; object, required)
  - `schema` (`report-get-publication-composition.response.200.data.schema`; string, required)
    - one of `"sureshake.publication-composition.v1"`
  - `publicationId` (`report-get-publication-composition.response.200.data.publicationId`; string, required)
    - format `uuid`
  - `kind` (`report-get-publication-composition.response.200.data.kind`; string, required)
    - one of `"update"`, `"document"`
  - `content` (`report-get-publication-composition.response.200.data.content`; string, required)
    - one of `"document"`, `"update"`
  - `sections` (`report-get-publication-composition.response.200.data.sections`; array<string>, required)
    - one of `"publication"`, `"access"`, `"activity"`
  - `permissions` (`report-get-publication-composition.response.200.data.permissions`; object, required)
    - `manageAccess` (`report-get-publication-composition.response.200.data.permissions.manageAccess`; boolean, required)
    - `viewActivity` (`report-get-publication-composition.response.200.data.permissions.viewActivity`; boolean, required)
  - `insights` (`report-get-publication-composition.response.200.data.insights`; object, required)
    - `status` (`report-get-publication-composition.response.200.data.insights.status`; string, required)
      - one of `"unsupported"`
    - `reason` (`report-get-publication-composition.response.200.data.insights.reason`; string, required)
      - one of `"no_publication_analysis_pipeline"`
  - `assistant` (`report-get-publication-composition.response.200.data.assistant`; object, required)
    - `status` (`report-get-publication-composition.response.200.data.assistant.status`; string, required)
      - one of `"unavailable"`
    - `reason` (`report-get-publication-composition.response.200.data.assistant.reason`; string, required)
      - one of `"publication_content_not_connected"`

### 400

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`report-get-publication-composition.response.400.error`; object, required)
  - `code` (`report-get-publication-composition.response.400.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`report-get-publication-composition.response.400.error.message`; string, required) — Human-readable error message
  - `details` (`report-get-publication-composition.response.400.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`report-get-publication-composition.response.400.error.traceId`; string, optional) — Unique ID for log correlation

### 401

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`report-get-publication-composition.response.401.error`; object, required)
  - `code` (`report-get-publication-composition.response.401.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`report-get-publication-composition.response.401.error.message`; string, required) — Human-readable error message
  - `details` (`report-get-publication-composition.response.401.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`report-get-publication-composition.response.401.error.traceId`; string, optional) — Unique ID for log correlation

### 403

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`report-get-publication-composition.response.403.error`; object, required)
  - `code` (`report-get-publication-composition.response.403.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`report-get-publication-composition.response.403.error.message`; string, required) — Human-readable error message
  - `details` (`report-get-publication-composition.response.403.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`report-get-publication-composition.response.403.error.traceId`; string, optional) — Unique ID for log correlation

### 404

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`report-get-publication-composition.response.404.error`; object, required)
  - `code` (`report-get-publication-composition.response.404.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`report-get-publication-composition.response.404.error.message`; string, required) — Human-readable error message
  - `details` (`report-get-publication-composition.response.404.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`report-get-publication-composition.response.404.error.traceId`; string, optional) — Unique ID for log correlation

### 500

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`report-get-publication-composition.response.500.error`; object, required)
  - `code` (`report-get-publication-composition.response.500.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`report-get-publication-composition.response.500.error.message`; string, required) — Human-readable error message
  - `details` (`report-get-publication-composition.response.500.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`report-get-publication-composition.response.500.error.traceId`; string, optional) — Unique ID for log correlation


Source: https://docs.sureshake.com/reference/report-get-publication-composition/index.md
