# API Overview

TheAngel provides a suite of APIs and smart contract interfaces designed to enable seamless integration with external systems, wallets, analytics tools, and partner platforms.

This documentation describes the available endpoints, authentication mechanisms, smart contract structure, and webhook events.

**The goal is to support:**

* Wallet integrations
* Founder dashboards
* Investor analytics tools
* Third-party marketplaces
* Internal automation

***

### Overview

TheAngel APIs allow developers to:

* Retrieve startup listing data
* Access investor portfolio data
* Execute token operations (where permitted)
* Retrieve token and valuation metadata
* Subscribe to liquidity-related events
* Integrate secure identity and compliance verification

***

### API Architecture

TheAngel API is built with:

* REST + Webhook support
* JWT-based authentication
* Enforced TLS encryption
* Compliance-gated endpoints
* Standardised data models
* Role-based access controls (RBAC

***

### Authentication

#### Authentication Method

TheAngel uses JWT (JSON Web Tokens) for all API calls.

#### Steps to Authenticate

**1. Request API Key**

Developers generate a key via:

```solidity
POST /developer/api-key
```

**2. Authenticate with Credentials**

```solidity
POST /auth/token
Content-Type: application/json
{
  "apiKey": "YOUR_API_KEY",
  "secret": "YOUR_SECRET"
}
```

**3. Response**

```solidity
{
  "accessToken": "JWT_TOKEN",
  "expiresIn": 3600
}
```

**4. Include Token in Headers**

```solidity
Authorization: Bearer JWT_TOKEN
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.theangel.app/api-and-technical-documentation/api-overview.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
