---
title: "Attest commitment evidence"
---

> 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 › execution

`POST /v2/execution/cycles/{cycleId}/commitments/{commitmentId}/evidence/attestations`

## Path parameters

- `cycleId` (`execution-attest-commitment-evidence.path.cycleId`; string, required)
  - format `uuid`
- `commitmentId` (`execution-attest-commitment-evidence.path.commitmentId`; string, required)
  - format `uuid`

## Request body

_Required._

- `expectedVersionNumber` (`execution-attest-commitment-evidence.expectedVersionNumber`; integer, required)
  - min 1
- `observed` (`execution-attest-commitment-evidence.observed`; string, required)
  - minLength 1; maxLength 4000
- `notVerified` (`execution-attest-commitment-evidence.notVerified`; string, required)
  - minLength 1; maxLength 4000
- `effectiveAt` (`execution-attest-commitment-evidence.effectiveAt`; string, required)
  - format `date-time`
- `visibility` (`execution-attest-commitment-evidence.visibility`; string, required)
  - one of `"public"`, `"follower"`, `"capital"`, `"diligence"`, `"custom"`
- `invitationId` (`execution-attest-commitment-evidence.invitationId`; string, optional)
  - format `uuid`

## Example request

```json
{
  "expectedVersionNumber": 1,
  "observed": "string",
  "notVerified": "string",
  "effectiveAt": "2019-08-24T14:15:22Z",
  "visibility": "public",
  "invitationId": "550a4884-8473-4f2e-a6cf-551c16767d59"
}
```

## Code samples

### cURL

```bash
curl --request POST \
  --url 'https://api.sureshake.com/v2/execution/cycles/<cycleId>/commitments/<commitmentId>/evidence/attestations' \
  --header 'Content-Type: application/json' \
  --data '
{
  "expectedVersionNumber": 1,
  "observed": "string",
  "notVerified": "string",
  "effectiveAt": "2019-08-24T14:15:22Z",
  "visibility": "public",
  "invitationId": "550a4884-8473-4f2e-a6cf-551c16767d59"
}
'
```

### TypeScript

```typescript
const url = 'https://api.sureshake.com/v2/execution/cycles/<cycleId>/commitments/<commitmentId>/evidence/attestations';
const options = {
  method: 'POST',
  headers: {'Content-Type': 'application/json'},
  body: JSON.stringify({
    expectedVersionNumber: 1,
    observed: 'string',
    notVerified: 'string',
    effectiveAt: '2019-08-24T14:15:22Z',
    visibility: 'public',
    invitationId: '550a4884-8473-4f2e-a6cf-551c16767d59'
  })
};

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/execution/cycles/<cycleId>/commitments/<commitmentId>/evidence/attestations"

payload = {
    "expectedVersionNumber": 1,
    "observed": "string",
    "notVerified": "string",
    "effectiveAt": "2019-08-24T14:15:22Z",
    "visibility": "public",
    "invitationId": "550a4884-8473-4f2e-a6cf-551c16767d59"
}
headers = {"Content-Type": "application/json"}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
```

## Responses

### 201

Default Response

#### Example

```json
{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "commitmentId": "4e1ecf7c-8127-4207-92b0-010ff43ff54d",
    "commitmentVersionNumber": 1,
    "resolutionId": "bc6d8f79-6014-4352-9db6-903e2ea5d245",
    "displayName": "string",
    "ownerEntityId": "6da7bd98-1f0e-4b09-9a16-e8663f1e0b04",
    "effectiveAt": "2019-08-24T14:15:22Z",
    "visibility": "public",
    "recordedBy": "string",
    "sourceHash": "string",
    "createdAt": "2019-08-24T14:15:22Z",
    "sourceKind": "upload",
    "verificationStatus": "artifact_backed",
    "artifactId": "706a3f1e-c357-4634-b1bf-20c221b5bb4e",
    "reference": {
      "type": "page",
      "page": 1,
      "pageEnd": 1
    },
    "invitation": null
  },
  "meta": {
    "timestamp": "2019-08-24T14:15:22Z"
  }
}
```

- `data` (`execution-attest-commitment-evidence.response.201.data`; any of, required)
  - any of:
    - `object`
      - `id` (`execution-attest-commitment-evidence.response.201.data.1.id`; string, required)
        - format `uuid`
      - `commitmentId` (`execution-attest-commitment-evidence.response.201.data.1.commitmentId`; string, required)
        - format `uuid`
      - `commitmentVersionNumber` (`execution-attest-commitment-evidence.response.201.data.1.commitmentVersionNumber`; integer, required)
        - min 1
      - `resolutionId` (`execution-attest-commitment-evidence.response.201.data.1.resolutionId`; string, required, nullable)
        - format `uuid`
      - `displayName` (`execution-attest-commitment-evidence.response.201.data.1.displayName`; string, required)
        - minLength 1; maxLength 500
      - `ownerEntityId` (`execution-attest-commitment-evidence.response.201.data.1.ownerEntityId`; string, required)
        - format `uuid`
      - `effectiveAt` (`execution-attest-commitment-evidence.response.201.data.1.effectiveAt`; string, required)
        - format `date-time`
      - `visibility` (`execution-attest-commitment-evidence.response.201.data.1.visibility`; string, required)
        - one of `"public"`, `"follower"`, `"capital"`, `"diligence"`, `"custom"`
      - `recordedBy` (`execution-attest-commitment-evidence.response.201.data.1.recordedBy`; string, required)
        - minLength 1
      - `sourceHash` (`execution-attest-commitment-evidence.response.201.data.1.sourceHash`; string, required)
        - pattern `^sha256:[a-f0-9]{64}$`
      - `createdAt` (`execution-attest-commitment-evidence.response.201.data.1.createdAt`; string, required)
        - format `date-time`
      - `sourceKind` (`execution-attest-commitment-evidence.response.201.data.1.sourceKind`; string, required)
        - one of `"upload"`
      - `verificationStatus` (`execution-attest-commitment-evidence.response.201.data.1.verificationStatus`; string, required)
        - one of `"artifact_backed"`
      - `artifactId` (`execution-attest-commitment-evidence.response.201.data.1.artifactId`; string, required)
        - format `uuid`
      - `reference` (`execution-attest-commitment-evidence.response.201.data.1.reference`; any of, optional)
        - any of:
          - `object`
            - `type` (`execution-attest-commitment-evidence.response.201.data.1.reference.1.type`; string, required)
              - one of `"page"`
            - `page` (`execution-attest-commitment-evidence.response.201.data.1.reference.1.page`; integer, required)
              - min 1
            - `pageEnd` (`execution-attest-commitment-evidence.response.201.data.1.reference.1.pageEnd`; integer, optional)
              - min 1
          - `object`
            - `type` (`execution-attest-commitment-evidence.response.201.data.1.reference.2.type`; string, required)
              - one of `"section"`
            - `section` (`execution-attest-commitment-evidence.response.201.data.1.reference.2.section`; string, required)
              - minLength 1; maxLength 500
          - `object`
            - `type` (`execution-attest-commitment-evidence.response.201.data.1.reference.3.type`; string, required)
              - one of `"object"`
            - `objectType` (`execution-attest-commitment-evidence.response.201.data.1.reference.3.objectType`; string, required)
              - minLength 1; maxLength 200
            - `objectId` (`execution-attest-commitment-evidence.response.201.data.1.reference.3.objectId`; string, required)
              - minLength 1; maxLength 1000
      - `invitation` (`execution-attest-commitment-evidence.response.201.data.1.invitation`; unknown, optional)
    - `object`
      - `id` (`execution-attest-commitment-evidence.response.201.data.2.id`; string, required)
        - format `uuid`
      - `commitmentId` (`execution-attest-commitment-evidence.response.201.data.2.commitmentId`; string, required)
        - format `uuid`
      - `commitmentVersionNumber` (`execution-attest-commitment-evidence.response.201.data.2.commitmentVersionNumber`; integer, required)
        - min 1
      - `resolutionId` (`execution-attest-commitment-evidence.response.201.data.2.resolutionId`; string, required, nullable)
        - format `uuid`
      - `displayName` (`execution-attest-commitment-evidence.response.201.data.2.displayName`; string, required)
        - minLength 1; maxLength 500
      - `ownerEntityId` (`execution-attest-commitment-evidence.response.201.data.2.ownerEntityId`; string, required)
        - format `uuid`
      - `effectiveAt` (`execution-attest-commitment-evidence.response.201.data.2.effectiveAt`; string, required)
        - format `date-time`
      - `visibility` (`execution-attest-commitment-evidence.response.201.data.2.visibility`; string, required)
        - one of `"public"`, `"follower"`, `"capital"`, `"diligence"`, `"custom"`
      - `recordedBy` (`execution-attest-commitment-evidence.response.201.data.2.recordedBy`; string, required)
        - minLength 1
      - `sourceHash` (`execution-attest-commitment-evidence.response.201.data.2.sourceHash`; string, required)
        - pattern `^sha256:[a-f0-9]{64}$`
      - `createdAt` (`execution-attest-commitment-evidence.response.201.data.2.createdAt`; string, required)
        - format `date-time`
      - `sourceKind` (`execution-attest-commitment-evidence.response.201.data.2.sourceKind`; string, required)
        - one of `"sureshake_link"`
      - `verificationStatus` (`execution-attest-commitment-evidence.response.201.data.2.verificationStatus`; string, required)
        - one of `"artifact_backed"`
      - `resourceType` (`execution-attest-commitment-evidence.response.201.data.2.resourceType`; string, required)
        - one of `"report"`, `"artifact"`
      - `resourceId` (`execution-attest-commitment-evidence.response.201.data.2.resourceId`; string, required)
        - format `uuid`
      - `reference` (`execution-attest-commitment-evidence.response.201.data.2.reference`; unknown, optional)
      - `invitation` (`execution-attest-commitment-evidence.response.201.data.2.invitation`; unknown, optional)
    - `object`
      - `id` (`execution-attest-commitment-evidence.response.201.data.3.id`; string, required)
        - format `uuid`
      - `commitmentId` (`execution-attest-commitment-evidence.response.201.data.3.commitmentId`; string, required)
        - format `uuid`
      - `commitmentVersionNumber` (`execution-attest-commitment-evidence.response.201.data.3.commitmentVersionNumber`; integer, required)
        - min 1
      - `resolutionId` (`execution-attest-commitment-evidence.response.201.data.3.resolutionId`; string, required, nullable)
        - format `uuid`
      - `displayName` (`execution-attest-commitment-evidence.response.201.data.3.displayName`; string, required)
        - minLength 1; maxLength 500
      - `ownerEntityId` (`execution-attest-commitment-evidence.response.201.data.3.ownerEntityId`; string, required)
        - format `uuid`
      - `effectiveAt` (`execution-attest-commitment-evidence.response.201.data.3.effectiveAt`; string, required)
        - format `date-time`
      - `visibility` (`execution-attest-commitment-evidence.response.201.data.3.visibility`; string, required)
        - one of `"public"`, `"follower"`, `"capital"`, `"diligence"`, `"custom"`
      - `recordedBy` (`execution-attest-commitment-evidence.response.201.data.3.recordedBy`; string, required)
        - minLength 1
      - `sourceHash` (`execution-attest-commitment-evidence.response.201.data.3.sourceHash`; string, required)
        - pattern `^sha256:[a-f0-9]{64}$`
      - `createdAt` (`execution-attest-commitment-evidence.response.201.data.3.createdAt`; string, required)
        - format `date-time`
      - `sourceKind` (`execution-attest-commitment-evidence.response.201.data.3.sourceKind`; string, required)
        - one of `"integration"`
      - `verificationStatus` (`execution-attest-commitment-evidence.response.201.data.3.verificationStatus`; string, required)
        - one of `"source_verified"`
      - `integrationId` (`execution-attest-commitment-evidence.response.201.data.3.integrationId`; string, required)
        - format `uuid`
      - `integrationKey` (`execution-attest-commitment-evidence.response.201.data.3.integrationKey`; string, required)
        - minLength 1
      - `resourceType` (`execution-attest-commitment-evidence.response.201.data.3.resourceType`; string, required)
        - minLength 1; maxLength 200
      - `externalId` (`execution-attest-commitment-evidence.response.201.data.3.externalId`; string, required)
        - minLength 1; maxLength 1000
      - `contentHash` (`execution-attest-commitment-evidence.response.201.data.3.contentHash`; string, required)
        - pattern `^sha256:[a-f0-9]{64}$`
      - `retrievedAt` (`execution-attest-commitment-evidence.response.201.data.3.retrievedAt`; string, required)
        - format `date-time`
      - `reference` (`execution-attest-commitment-evidence.response.201.data.3.reference`; unknown, optional)
      - `invitation` (`execution-attest-commitment-evidence.response.201.data.3.invitation`; unknown, optional)
    - `object`
      - `id` (`execution-attest-commitment-evidence.response.201.data.4.id`; string, required)
        - format `uuid`
      - `commitmentId` (`execution-attest-commitment-evidence.response.201.data.4.commitmentId`; string, required)
        - format `uuid`
      - `commitmentVersionNumber` (`execution-attest-commitment-evidence.response.201.data.4.commitmentVersionNumber`; integer, required)
        - min 1
      - `resolutionId` (`execution-attest-commitment-evidence.response.201.data.4.resolutionId`; string, required, nullable)
        - format `uuid`
      - `displayName` (`execution-attest-commitment-evidence.response.201.data.4.displayName`; string, required)
        - minLength 1; maxLength 500
      - `ownerEntityId` (`execution-attest-commitment-evidence.response.201.data.4.ownerEntityId`; string, required)
        - format `uuid`
      - `effectiveAt` (`execution-attest-commitment-evidence.response.201.data.4.effectiveAt`; string, required)
        - format `date-time`
      - `visibility` (`execution-attest-commitment-evidence.response.201.data.4.visibility`; string, required)
        - one of `"public"`, `"follower"`, `"capital"`, `"diligence"`, `"custom"`
      - `recordedBy` (`execution-attest-commitment-evidence.response.201.data.4.recordedBy`; string, required)
        - minLength 1
      - `sourceHash` (`execution-attest-commitment-evidence.response.201.data.4.sourceHash`; string, required)
        - pattern `^sha256:[a-f0-9]{64}$`
      - `createdAt` (`execution-attest-commitment-evidence.response.201.data.4.createdAt`; string, required)
        - format `date-time`
      - `sourceKind` (`execution-attest-commitment-evidence.response.201.data.4.sourceKind`; string, required)
        - one of `"third_party_attestation"`
      - `verificationStatus` (`execution-attest-commitment-evidence.response.201.data.4.verificationStatus`; string, required)
        - one of `"third_party_attested"`
      - `attestorUserId` (`execution-attest-commitment-evidence.response.201.data.4.attestorUserId`; string, required)
        - minLength 1
      - `attestationScope` (`execution-attest-commitment-evidence.response.201.data.4.attestationScope`; any of, required)
        - any of:
          - `object`
            - `status` (`execution-attest-commitment-evidence.response.201.data.4.attestationScope.1.status`; string, required)
              - one of `"complete"`
            - `observed` (`execution-attest-commitment-evidence.response.201.data.4.attestationScope.1.observed`; string, required)
              - minLength 1; maxLength 4000
            - `notVerified` (`execution-attest-commitment-evidence.response.201.data.4.attestationScope.1.notVerified`; string, required)
              - minLength 1; maxLength 4000
          - `object`
            - `status` (`execution-attest-commitment-evidence.response.201.data.4.attestationScope.2.status`; string, required)
              - one of `"legacy_incomplete"`
            - `legacyStatement` (`execution-attest-commitment-evidence.response.201.data.4.attestationScope.2.legacyStatement`; string, required)
              - minLength 1; maxLength 4000
      - `reference` (`execution-attest-commitment-evidence.response.201.data.4.reference`; unknown, optional)
      - `invitation` (`execution-attest-commitment-evidence.response.201.data.4.invitation`; object, optional)
        - `id` (`execution-attest-commitment-evidence.response.201.data.4.invitation.id`; string, required)
          - format `uuid`
        - `relationship` (`execution-attest-commitment-evidence.response.201.data.4.invitation.relationship`; string, required)
          - one of `"customer"`, `"mentor"`, `"advisor"`, `"program_operator"`, `"capital_provider"`
- `meta` (`execution-attest-commitment-evidence.response.201.meta`; object, optional)
  - `timestamp` (`execution-attest-commitment-evidence.response.201.meta.timestamp`; string, required)
    - format `date-time`

### 400

Default Response

#### Example

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

- `error` (`execution-attest-commitment-evidence.response.400.error`; object, required)
  - `code` (`execution-attest-commitment-evidence.response.400.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`execution-attest-commitment-evidence.response.400.error.message`; string, required) — Human-readable error message
  - `details` (`execution-attest-commitment-evidence.response.400.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`execution-attest-commitment-evidence.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` (`execution-attest-commitment-evidence.response.401.error`; object, required)
  - `code` (`execution-attest-commitment-evidence.response.401.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`execution-attest-commitment-evidence.response.401.error.message`; string, required) — Human-readable error message
  - `details` (`execution-attest-commitment-evidence.response.401.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`execution-attest-commitment-evidence.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` (`execution-attest-commitment-evidence.response.403.error`; object, required)
  - `code` (`execution-attest-commitment-evidence.response.403.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`execution-attest-commitment-evidence.response.403.error.message`; string, required) — Human-readable error message
  - `details` (`execution-attest-commitment-evidence.response.403.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`execution-attest-commitment-evidence.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` (`execution-attest-commitment-evidence.response.404.error`; object, required)
  - `code` (`execution-attest-commitment-evidence.response.404.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`execution-attest-commitment-evidence.response.404.error.message`; string, required) — Human-readable error message
  - `details` (`execution-attest-commitment-evidence.response.404.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`execution-attest-commitment-evidence.response.404.error.traceId`; string, optional) — Unique ID for log correlation

### 409

Default Response

#### Example

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

- `error` (`execution-attest-commitment-evidence.response.409.error`; object, required)
  - `code` (`execution-attest-commitment-evidence.response.409.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`execution-attest-commitment-evidence.response.409.error.message`; string, required) — Human-readable error message
  - `details` (`execution-attest-commitment-evidence.response.409.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`execution-attest-commitment-evidence.response.409.error.traceId`; string, optional) — Unique ID for log correlation

### 422

Default Response

#### Example

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

- `error` (`execution-attest-commitment-evidence.response.422.error`; object, required)
  - `code` (`execution-attest-commitment-evidence.response.422.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`execution-attest-commitment-evidence.response.422.error.message`; string, required) — Human-readable error message
  - `details` (`execution-attest-commitment-evidence.response.422.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`execution-attest-commitment-evidence.response.422.error.traceId`; string, optional) — Unique ID for log correlation

### 429

Default Response

#### Example

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

- `error` (`execution-attest-commitment-evidence.response.429.error`; object, required)
  - `code` (`execution-attest-commitment-evidence.response.429.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`execution-attest-commitment-evidence.response.429.error.message`; string, required) — Human-readable error message
  - `details` (`execution-attest-commitment-evidence.response.429.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`execution-attest-commitment-evidence.response.429.error.traceId`; string, optional) — Unique ID for log correlation

### 500

Default Response

#### Example

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

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

### 502

Default Response

#### Example

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

- `error` (`execution-attest-commitment-evidence.response.502.error`; object, required)
  - `code` (`execution-attest-commitment-evidence.response.502.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`execution-attest-commitment-evidence.response.502.error.message`; string, required) — Human-readable error message
  - `details` (`execution-attest-commitment-evidence.response.502.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`execution-attest-commitment-evidence.response.502.error.traceId`; string, optional) — Unique ID for log correlation

### 503

Default Response

#### Example

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

- `error` (`execution-attest-commitment-evidence.response.503.error`; object, required)
  - `code` (`execution-attest-commitment-evidence.response.503.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`execution-attest-commitment-evidence.response.503.error.message`; string, required) — Human-readable error message
  - `details` (`execution-attest-commitment-evidence.response.503.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`execution-attest-commitment-evidence.response.503.error.traceId`; string, optional) — Unique ID for log correlation


Source: https://docs.sureshake.com/reference/execution-attest-commitment-evidence/index.md
