---
title: "Attach an executed SAFE signed elsewhere"
method: POST
path: "/safes/{safe_id}/executed"
tags: ["safe"]
---

# Attach an executed SAFE signed elsewhere

`POST /safes/{safe_id}/executed`

## Request

- Base URL: `https://localhost:4410/api/v1`
- URL: `https://localhost:4410/api/v1/safes/{safe_id}/executed`
- Auth: HTTP bearer

Attaches the executed PDF of a SAFE sent from another tool, uploaded as a document first. Its filled values are read without a model and compared with the recorded terms, each difference returned as a fact. It becomes Executed when DocuSign's certificate of completion says, with certificate_document_id, or at executed_at, and an unconfirmed register entry appears. A file imported before is refused.

## Path parameters

- `safe_id` string, required

## Request body

- object
  - `document_id` string, required
  - `certificate_document_id` string, nullable
  - `executed_at` string, date-time, nullable

## Response `200`

The result.

- object
  - `safe` object, required
    - `id` string, required
    - `round_id` string, required
    - `investor_id` string, required
    - `investor` string, required
    - `status` 'draft' | 'sent' | 'executed', required
    - `channel` 'generated' | 'counsel' | 'external' | 'imported', required
    - `form` 'cap' | 'discount' | 'mfn', required
    - `form_title` string, required
    - `amount` object, required
      - `cents` integer, required
      - `text` string, required
    - `amount_words` string, required
    - `cap` object, nullable, required
      - `cents` integer, required
      - `text` string, required
    - `discount_percent` number, nullable, required
    - `side_letter` boolean, required
    - `exemption` '506b' | '506c' | 'reg_s', required
    - `date_of_safe` string, date, required
    - `document_id` string, nullable, required
    - `version_id` string, nullable, required
    - `verbatim` object, nullable, required
      - `form` string, required
      - `version` string, required
      - `sha256` string, required
      - `canonical` boolean, required
      - `rendered` boolean, required
      - `failure` object, nullable, required
        - `where` string, required
        - `expected` string, required
        - `found` string, required
    - `highlights` object[], required
      - `page` integer, required
      - `x` number, required
      - `y` number, required
      - `width` number, required
      - `height` number, required
    - `envelope_id` string, nullable, required
    - `executed_at` string, date-time, nullable, required
    - `outside` string, nullable, required
    - `investor_signers` object[], required
      - `name` string, required
      - `email` string, required
      - `title` string, nullable, required
    - `sent_on` string, date, nullable, required
    - `imported` object, nullable, required
      - `source` 'yc_form' | 'docusign' | 'entered' | 'table' | 'ocf', required
      - `file` object, nullable, required
        - `name` string, required
        - `sha256` string, required
      - `table` object, nullable, required
        - `name` string, required
        - `sha256` string, required
        - `row` integer, required
      - `certificate` object, nullable, required
        - `name` string, required
        - `sha256` string, required
        - `envelope_id` string, nullable, required
        - `completed_at` string, date-time, nullable, required
      - `differences` integer, required
      - `read_by_ai` object, nullable, required
        - `model` string, required
    - `counsel_comparison` object, nullable, required
      - `form` string, required
      - `version` string, required
      - `matched` integer, required
      - `total` integer, required
      - `first_missing` string, nullable, required
    - `provenance` object[], required
      - `template_key` string, required
      - `title` string, required
      - `publisher` string, required
      - `source_url` string, required
      - `license` string, required
      - `source_version` string, required
      - `packaging_revision` integer, required
      - `source_sha256` string, required
      - `modifications` string, required
    - `notices` string[], required
    - `user_guide` string, required
  - `facts` string[], required

## Other responses

- `default`: An RFC 9457 problem.

---

[API](https://skmtc.dev/binderwork/apis/binderwork-api.md) · [All operations](https://skmtc.dev/binderwork/apis/binderwork-api/llms.txt) · [OpenAPI document](https://skmtc.dev/binderwork/apis/binderwork-api/revisions/f8fab0ebee53?raw)
