---
title: "Create a legal-entity application"
method: POST
path: "/api/v1/legal_entity_applications"
tags: ["Legal-entity applications"]
---

# Create a legal-entity application

`POST /api/v1/legal_entity_applications`

## Request body

- CreateLegalEntityApplicationRequest
  - `applicationData` object, required
    - `residencyType` 'e-Resident' | 'Resident', required
    - `entityType` 'llc', required
    - `name` string, required
    - `extension` 'LLC' | 'L.L.C.' | 'Limited Liability Company' | 'S. de R.L.' | 'SRL' | 'Limited Company' | 'L.C.' | 'LC' | 'Limited Liability Co.' | 'Limited Co.' | 'Ltd. Co.', required
    - `principalOffice` Address, nullable, required
      - `line1` string, required
      - `line2` string, nullable
      - `city` string, required
      - `state` string, nullable
      - `postalCode` string, required
      - `country` string, required
    - `contactEmail` string, email, required
    - `registeredAgentProvider` 'prospera_employment_solutions', nullable, required
    - `registeredAgentDetails` object, nullable, required
      - `attn` string, required
      - `residentPermitNumber` string, required — 14-digit Resident Permit Number.
      - `officeAddress` Address, nullable, required
        - `line1` string, required
        - `line2` string, nullable
        - `city` string, required
        - `state` string, nullable
        - `postalCode` string, required
        - `country` string, required
      - `mailingAddress` Address, nullable, required
        - `line1` string, required
        - `line2` string, nullable
        - `city` string, required
        - `state` string, nullable
        - `postalCode` string, required
        - `country` string, required
    - `analytics` object
  - `referralCode` string
  - `redirectUrl` string, uri

## Response `200`

Created application and next steps.

- CreateLegalEntityApplicationResponse
  - `data` LegalEntityApplication, required
    - `id` string, uuid, required
    - `statusId` 'Draft' | 'Pending Review' | 'Approved' | 'Rejected', required
    - `applicationData` unknown
    - `applicationVersion` string, required
    - `submittedAt` string, date-time, nullable, required
    - `createdAt` string, date-time, required
    - `approvedAt` string, date-time, nullable, required
    - `rejectedAt` string, date-time, nullable, required
    - `legalEntityId` string, uuid, nullable, required
  - `nextSteps` object, required
    - `signature` string, uri, nullable, required

## Other responses

- `400` — Validation error or precondition failure.
- `401` — Missing or invalid credential.
- `403` — Credential lacks the required scope (Agent Key) or insufficient OAuth scope.
- `404` — Resource does not exist or is invisible to the caller. The two are intentionally indistinguishable.
- `409` — Conflicting state (e.g. legal-entity name already taken).
- `429` — Rate limit exceeded. No `Retry-After` header is currently emitted; back off exponentially.
- `500` — Server error.

---

[API](https://skmtc.dev/eprospera/apis/e-pro-spera-api.md) · [All operations](https://skmtc.dev/eprospera/apis/e-pro-spera-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/eprospera/e-pro-spera-api/revisions/9ecdd3ca5a8c/schema)
