---
title: "Update draft"
---

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

`PUT /v2/directory/listings/{listingId}/draft`

## Path parameters

- `listingId` (`directory-update-draft.path.listingId`; string, required)
  - format `uuid`

## Request body

_Required._

- `snapshot` (`directory-update-draft.snapshot`; object, required)
  - `identity` (`directory-update-draft.snapshot.identity`; object, required)
    - `displayName` (`directory-update-draft.snapshot.identity.displayName`; string, required)
      - minLength 1; maxLength 255
    - `aliases` (`directory-update-draft.snapshot.identity.aliases`; array<string>, optional)
      - minLength 1; maxLength 255
    - `avatarUrl` (`directory-update-draft.snapshot.identity.avatarUrl`; string, optional, nullable)
      - format `uri`
    - `logoUrl` (`directory-update-draft.snapshot.identity.logoUrl`; string, optional, nullable)
      - format `uri`
  - `overview` (`directory-update-draft.snapshot.overview`; string, optional, nullable)
    - maxLength 5000
  - `location` (`directory-update-draft.snapshot.location`; string, optional, nullable)
    - maxLength 255
  - `category` (`directory-update-draft.snapshot.category`; string, optional, nullable)
    - maxLength 255
  - `websiteUrl` (`directory-update-draft.snapshot.websiteUrl`; string, optional, nullable)
    - format `uri`
  - `socialLinks` (`directory-update-draft.snapshot.socialLinks`; array<object>, optional)
    - `label` (`directory-update-draft.snapshot.socialLinks.label`; string, required)
      - minLength 1; maxLength 80
    - `url` (`directory-update-draft.snapshot.socialLinks.url`; string, required)
      - format `uri`
  - `experienceOrTeam` (`directory-update-draft.snapshot.experienceOrTeam`; array<map<unknown>>, optional)
  - `credentials` (`directory-update-draft.snapshot.credentials`; array<map<unknown>>, optional)
  - `businessDetails` (`directory-update-draft.snapshot.businessDetails`; map<unknown>, optional)
  - `publicEvidence` (`directory-update-draft.snapshot.publicEvidence`; array<map<unknown>>, optional)
  - `capitalProviderProfile` (`directory-update-draft.snapshot.capitalProviderProfile`; object, optional)
    - `profileType` (`directory-update-draft.snapshot.capitalProviderProfile.profileType`; string, required)
      - one of `"vc_professional"`, `"angel_investor"`, `"scout"`, `"family_office_professional"`, `"accelerator_or_venture_studio"`, `"corporate_venture_professional"`, `"other_approved_capital_provider"`
  - `directEmail` (`directory-update-draft.snapshot.directEmail`; string, optional, nullable)
    - format `email`
  - `directPhone` (`directory-update-draft.snapshot.directPhone`; string, optional, nullable)
    - minLength 3; maxLength 50
  - `streetAddress` (`directory-update-draft.snapshot.streetAddress`; string, optional, nullable)
    - minLength 3; maxLength 500
- `visibilityPolicy` (`directory-update-draft.visibilityPolicy`; object, required)
  - `sections` (`directory-update-draft.visibilityPolicy.sections`; object, optional)
    - default `{"identity":true}`
    - `identity` (`directory-update-draft.visibilityPolicy.sections.identity`; boolean, optional)
    - `overview` (`directory-update-draft.visibilityPolicy.sections.overview`; boolean, optional)
    - `location` (`directory-update-draft.visibilityPolicy.sections.location`; boolean, optional)
    - `websiteSocial` (`directory-update-draft.visibilityPolicy.sections.websiteSocial`; boolean, optional)
    - `experienceTeam` (`directory-update-draft.visibilityPolicy.sections.experienceTeam`; boolean, optional)
    - `credentials` (`directory-update-draft.visibilityPolicy.sections.credentials`; boolean, optional)
    - `businessDetails` (`directory-update-draft.visibilityPolicy.sections.businessDetails`; boolean, optional)
    - `publicEvidence` (`directory-update-draft.visibilityPolicy.sections.publicEvidence`; boolean, optional)
  - `sensitiveFields` (`directory-update-draft.visibilityPolicy.sensitiveFields`; object, optional)
    - default `{"directEmail":false,"directPhone":false,"streetAddress":false}`
    - `directEmail` (`directory-update-draft.visibilityPolicy.sensitiveFields.directEmail`; boolean, optional)
      - default `false`
    - `directPhone` (`directory-update-draft.visibilityPolicy.sensitiveFields.directPhone`; boolean, optional)
      - default `false`
    - `streetAddress` (`directory-update-draft.visibilityPolicy.sensitiveFields.streetAddress`; boolean, optional)
      - default `false`

## Example request

```json
{
  "snapshot": {
    "identity": {
      "displayName": "string",
      "aliases": [
        "string"
      ],
      "avatarUrl": "http://example.com",
      "logoUrl": "http://example.com"
    },
    "overview": "string",
    "location": "string",
    "category": "string",
    "websiteUrl": "http://example.com",
    "socialLinks": [
      {
        "label": "string",
        "url": "http://example.com"
      }
    ],
    "experienceOrTeam": [
      {
        "property1": null,
        "property2": null
      }
    ],
    "credentials": [
      {
        "property1": null,
        "property2": null
      }
    ],
    "businessDetails": {
      "property1": null,
      "property2": null
    },
    "publicEvidence": [
      {
        "property1": null,
        "property2": null
      }
    ],
    "capitalProviderProfile": {
      "profileType": "vc_professional"
    },
    "directEmail": "user@example.com",
    "directPhone": "string",
    "streetAddress": "string"
  },
  "visibilityPolicy": {
    "sections": {
      "identity": true
    },
    "sensitiveFields": {
      "directEmail": false,
      "directPhone": false,
      "streetAddress": false
    }
  }
}
```

## Code samples

### cURL

```bash
curl --request PUT \
  --url 'https://api.sureshake.com/v2/directory/listings/<listingId>/draft' \
  --header 'Content-Type: application/json' \
  --data '
{
  "snapshot": {
    "identity": {
      "displayName": "string",
      "aliases": [
        "string"
      ],
      "avatarUrl": "http://example.com",
      "logoUrl": "http://example.com"
    },
    "overview": "string",
    "location": "string",
    "category": "string",
    "websiteUrl": "http://example.com",
    "socialLinks": [
      {
        "label": "string",
        "url": "http://example.com"
      }
    ],
    "experienceOrTeam": [
      {
        "property1": null,
        "property2": null
      }
    ],
    "credentials": [
      {
        "property1": null,
        "property2": null
      }
    ],
    "businessDetails": {
      "property1": null,
      "property2": null
    },
    "publicEvidence": [
      {
        "property1": null,
        "property2": null
      }
    ],
    "capitalProviderProfile": {
      "profileType": "vc_professional"
    },
    "directEmail": "user@example.com",
    "directPhone": "string",
    "streetAddress": "string"
  },
  "visibilityPolicy": {
    "sections": {
      "identity": true
    },
    "sensitiveFields": {
      "directEmail": false,
      "directPhone": false,
      "streetAddress": false
    }
  }
}
'
```

### TypeScript

```typescript
const url = 'https://api.sureshake.com/v2/directory/listings/<listingId>/draft';
const options = {
  method: 'PUT',
  headers: {'Content-Type': 'application/json'},
  body: JSON.stringify({
    snapshot: {
      identity: {
        displayName: 'string',
        aliases: ['string'],
        avatarUrl: 'http://example.com',
        logoUrl: 'http://example.com'
      },
      overview: 'string',
      location: 'string',
      category: 'string',
      websiteUrl: 'http://example.com',
      socialLinks: [{label: 'string', url: 'http://example.com'}],
      experienceOrTeam: [{property1: null, property2: null}],
      credentials: [{property1: null, property2: null}],
      businessDetails: {property1: null, property2: null},
      publicEvidence: [{property1: null, property2: null}],
      capitalProviderProfile: {profileType: 'vc_professional'},
      directEmail: 'user@example.com',
      directPhone: 'string',
      streetAddress: 'string'
    },
    visibilityPolicy: {
      sections: {identity: true},
      sensitiveFields: {directEmail: false, directPhone: false, streetAddress: false}
    }
  })
};

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/directory/listings/<listingId>/draft"

payload = {
    "snapshot": {
        "identity": {
            "displayName": "string",
            "aliases": ["string"],
            "avatarUrl": "http://example.com",
            "logoUrl": "http://example.com"
        },
        "overview": "string",
        "location": "string",
        "category": "string",
        "websiteUrl": "http://example.com",
        "socialLinks": [
            {
                "label": "string",
                "url": "http://example.com"
            }
        ],
        "experienceOrTeam": [
            {
                "property1": None,
                "property2": None
            }
        ],
        "credentials": [
            {
                "property1": None,
                "property2": None
            }
        ],
        "businessDetails": {
            "property1": None,
            "property2": None
        },
        "publicEvidence": [
            {
                "property1": None,
                "property2": None
            }
        ],
        "capitalProviderProfile": { "profileType": "vc_professional" },
        "directEmail": "user@example.com",
        "directPhone": "string",
        "streetAddress": "string"
    },
    "visibilityPolicy": {
        "sections": { "identity": True },
        "sensitiveFields": {
            "directEmail": False,
            "directPhone": False,
            "streetAddress": False
        }
    }
}
headers = {"Content-Type": "application/json"}

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

print(response.text)
```

## Responses

### 200

Default Response

#### Example

```json
{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "subjectType": "person",
    "subjectId": "string",
    "slug": "string",
    "ownerPublicationStatus": "draft",
    "moderationStatus": "allowed",
    "claimStatus": "not_claimable",
    "claimedByUserId": "string",
    "claimedAt": "2019-08-24T14:15:22Z",
    "publishedVersionId": "9786f1b1-ef7e-4f6a-94c4-c8eb67e924eb",
    "snapshot": {
      "identity": {
        "displayName": "string",
        "aliases": [
          "string"
        ],
        "avatarUrl": "http://example.com",
        "logoUrl": "http://example.com"
      },
      "overview": "string",
      "location": "string",
      "category": "string",
      "websiteUrl": "http://example.com",
      "socialLinks": [
        {
          "label": "string",
          "url": "http://example.com"
        }
      ],
      "experienceOrTeam": [
        {
          "property1": null,
          "property2": null
        }
      ],
      "credentials": [
        {
          "property1": null,
          "property2": null
        }
      ],
      "businessDetails": {
        "property1": null,
        "property2": null
      },
      "publicEvidence": [
        {
          "property1": null,
          "property2": null
        }
      ],
      "capitalProviderProfile": {
        "profileType": "vc_professional"
      },
      "directEmail": "user@example.com",
      "directPhone": "string",
      "streetAddress": "string"
    },
    "visibilityPolicy": {
      "sections": {
        "identity": true
      },
      "sensitiveFields": {
        "directEmail": false,
        "directPhone": false,
        "streetAddress": false
      }
    },
    "updatedAt": "2019-08-24T14:15:22Z"
  },
  "meta": {
    "timestamp": "2019-08-24T14:15:22Z"
  }
}
```

- `data` (`directory-update-draft.response.200.data`; object, required)
  - `id` (`directory-update-draft.response.200.data.id`; string, required)
    - format `uuid`
  - `subjectType` (`directory-update-draft.response.200.data.subjectType`; string, required)
    - one of `"person"`, `"entity"`
  - `subjectId` (`directory-update-draft.response.200.data.subjectId`; string, required)
  - `slug` (`directory-update-draft.response.200.data.slug`; string, required)
  - `ownerPublicationStatus` (`directory-update-draft.response.200.data.ownerPublicationStatus`; string, required)
    - one of `"draft"`, `"published"`, `"unpublished"`
  - `moderationStatus` (`directory-update-draft.response.200.data.moderationStatus`; string, required)
    - one of `"allowed"`, `"blocked"`, `"archived"`
  - `claimStatus` (`directory-update-draft.response.200.data.claimStatus`; string, required)
    - one of `"not_claimable"`, `"unclaimed"`, `"claim_pending"`, `"claimed"`
  - `claimedByUserId` (`directory-update-draft.response.200.data.claimedByUserId`; string, required, nullable)
  - `claimedAt` (`directory-update-draft.response.200.data.claimedAt`; string, required, nullable)
    - format `date-time`
  - `publishedVersionId` (`directory-update-draft.response.200.data.publishedVersionId`; string, required, nullable)
    - format `uuid`
  - `snapshot` (`directory-update-draft.response.200.data.snapshot`; object, required)
    - `identity` (`directory-update-draft.response.200.data.snapshot.identity`; object, required)
      - `displayName` (`directory-update-draft.response.200.data.snapshot.identity.displayName`; string, required)
        - minLength 1; maxLength 255
      - `aliases` (`directory-update-draft.response.200.data.snapshot.identity.aliases`; array<string>, optional)
        - minLength 1; maxLength 255
      - `avatarUrl` (`directory-update-draft.response.200.data.snapshot.identity.avatarUrl`; string, optional, nullable)
        - format `uri`
      - `logoUrl` (`directory-update-draft.response.200.data.snapshot.identity.logoUrl`; string, optional, nullable)
        - format `uri`
    - `overview` (`directory-update-draft.response.200.data.snapshot.overview`; string, optional, nullable)
      - maxLength 5000
    - `location` (`directory-update-draft.response.200.data.snapshot.location`; string, optional, nullable)
      - maxLength 255
    - `category` (`directory-update-draft.response.200.data.snapshot.category`; string, optional, nullable)
      - maxLength 255
    - `websiteUrl` (`directory-update-draft.response.200.data.snapshot.websiteUrl`; string, optional, nullable)
      - format `uri`
    - `socialLinks` (`directory-update-draft.response.200.data.snapshot.socialLinks`; array<object>, optional)
      - `label` (`directory-update-draft.response.200.data.snapshot.socialLinks.label`; string, required)
        - minLength 1; maxLength 80
      - `url` (`directory-update-draft.response.200.data.snapshot.socialLinks.url`; string, required)
        - format `uri`
    - `experienceOrTeam` (`directory-update-draft.response.200.data.snapshot.experienceOrTeam`; array<map<unknown>>, optional)
    - `credentials` (`directory-update-draft.response.200.data.snapshot.credentials`; array<map<unknown>>, optional)
    - `businessDetails` (`directory-update-draft.response.200.data.snapshot.businessDetails`; map<unknown>, optional)
    - `publicEvidence` (`directory-update-draft.response.200.data.snapshot.publicEvidence`; array<map<unknown>>, optional)
    - `capitalProviderProfile` (`directory-update-draft.response.200.data.snapshot.capitalProviderProfile`; object, optional)
      - `profileType` (`directory-update-draft.response.200.data.snapshot.capitalProviderProfile.profileType`; string, required)
        - one of `"vc_professional"`, `"angel_investor"`, `"scout"`, `"family_office_professional"`, `"accelerator_or_venture_studio"`, `"corporate_venture_professional"`, `"other_approved_capital_provider"`
    - `directEmail` (`directory-update-draft.response.200.data.snapshot.directEmail`; string, optional, nullable)
      - format `email`
    - `directPhone` (`directory-update-draft.response.200.data.snapshot.directPhone`; string, optional, nullable)
      - minLength 3; maxLength 50
    - `streetAddress` (`directory-update-draft.response.200.data.snapshot.streetAddress`; string, optional, nullable)
      - minLength 3; maxLength 500
  - `visibilityPolicy` (`directory-update-draft.response.200.data.visibilityPolicy`; object, required)
    - `sections` (`directory-update-draft.response.200.data.visibilityPolicy.sections`; object, optional)
      - default `{"identity":true}`
      - `identity` (`directory-update-draft.response.200.data.visibilityPolicy.sections.identity`; boolean, optional)
      - `overview` (`directory-update-draft.response.200.data.visibilityPolicy.sections.overview`; boolean, optional)
      - `location` (`directory-update-draft.response.200.data.visibilityPolicy.sections.location`; boolean, optional)
      - `websiteSocial` (`directory-update-draft.response.200.data.visibilityPolicy.sections.websiteSocial`; boolean, optional)
      - `experienceTeam` (`directory-update-draft.response.200.data.visibilityPolicy.sections.experienceTeam`; boolean, optional)
      - `credentials` (`directory-update-draft.response.200.data.visibilityPolicy.sections.credentials`; boolean, optional)
      - `businessDetails` (`directory-update-draft.response.200.data.visibilityPolicy.sections.businessDetails`; boolean, optional)
      - `publicEvidence` (`directory-update-draft.response.200.data.visibilityPolicy.sections.publicEvidence`; boolean, optional)
    - `sensitiveFields` (`directory-update-draft.response.200.data.visibilityPolicy.sensitiveFields`; object, optional)
      - default `{"directEmail":false,"directPhone":false,"streetAddress":false}`
      - `directEmail` (`directory-update-draft.response.200.data.visibilityPolicy.sensitiveFields.directEmail`; boolean, optional)
        - default `false`
      - `directPhone` (`directory-update-draft.response.200.data.visibilityPolicy.sensitiveFields.directPhone`; boolean, optional)
        - default `false`
      - `streetAddress` (`directory-update-draft.response.200.data.visibilityPolicy.sensitiveFields.streetAddress`; boolean, optional)
        - default `false`
  - `updatedAt` (`directory-update-draft.response.200.data.updatedAt`; string, required)
    - format `date-time`
- `meta` (`directory-update-draft.response.200.meta`; object, optional)
  - `timestamp` (`directory-update-draft.response.200.meta.timestamp`; string, required)
    - format `date-time`

### 400

Default Response

#### Example

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

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

### 429

Default Response

#### Example

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

- `error` (`directory-update-draft.response.429.error`; object, required)
  - `code` (`directory-update-draft.response.429.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`directory-update-draft.response.429.error.message`; string, required) — Human-readable error message
  - `details` (`directory-update-draft.response.429.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`directory-update-draft.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` (`directory-update-draft.response.500.error`; object, required)
  - `code` (`directory-update-draft.response.500.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`directory-update-draft.response.500.error.message`; string, required) — Human-readable error message
  - `details` (`directory-update-draft.response.500.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`directory-update-draft.response.500.error.traceId`; string, optional) — Unique ID for log correlation

### 503

Default Response

#### Example

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

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


Source: https://docs.sureshake.com/reference/directory-update-draft/index.md
