# Descript Integration via LowCodeAPI
## Overview
Audio and video editing platform with AI-powered transcription and editing tools
## Base Endpoint
```
https://api.lowcodeapi.com/descript/
```
## Authentication
LowCodeAPI handles authentication automatically. You only need to:
1. **Sign up** at [https://www.descript.com/](https://www.descript.com/)
2. **Get your credentials** from [https://app.squadcast.fm/account/developers](https://app.squadcast.fm/account/developers)
3. **Connect your account** in LowCodeAPI dashboard
4. **Use your `api_token`** in all requests
The `api_token` is your LowCodeAPI authentication token. LowCodeAPI will automatically:
- Fetch your Descript API key
- Apply it to each request with `Authorization` header
**Auth Type**: API Key (Authorization header)
## API Categories
- Speech to Text AI
## Common Endpoints
### Category: Edit in Descript
#### Create Import URL
**Method**: `POST` | **LowCodeAPI Path**: `/v1/edit_in_descript/schema`
**Full URL**:
```
https://api.lowcodeapi.com/descript/v1/edit_in_descript/schema&api_token={api_token}
```
**Body Parameters**:
| `partner_drive_id` | string | Yes | The drive id associated with the auth token. |
| `project_schema` | object | Yes | The Project schema |
**Example Request**:
```bash
curl -X POST "https://api.lowcodeapi.com/descript/v1/edit_in_descript/schema?&api_token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"partner_drive_id":"value","project_schema":"value"}'
```
**Official Documentation**: [https://docs.descriptapi.com/#operation/postEditInDescriptSchema](https://docs.descriptapi.com/#operation/postEditInDescriptSchema)
---
### Category: Overdub
#### Generate a new Overdub
**Method**: `POST` | **LowCodeAPI Path**: `/v1/overdub/generate_async`
**Full URL**:
```
https://api.lowcodeapi.com/descript/v1/overdub/generate_async&api_token={api_token}
```
**Body Parameters**:
| `text` | string | Yes | The text you want to generate. |
| `voice_id` | string | Yes | The voice id |
| `voice_style_id` | string | No | The ID of the desired style associated with the voice. If not provided, the default voice style is used. This parameter is ignored if prefix_audio_url or suffix_audio_url is provided. |
| `prefix_text` | string | No | The transcript of the prefix audio. |
| `prefix_audio_url` | string | No | The prefix audio url. |
| `suffix_text` | string | No | The transcript of the suffix audio. |
| `suffix_audio_url` | string | No | The suffix audio url. |
| `callback_url` | string | No | when the overdub is ready, we do a post on that endpoint with a json object: {state, id}. Then user will have to get the result as usual |
**Example Request**:
```bash
curl -X POST "https://api.lowcodeapi.com/descript/v1/overdub/generate_async?&api_token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"text":"value","voice_id":"value","voice_style_id":"value"}'
```
**Official Documentation**: [https://docs.descriptapi.com/#operation/createOverdubAsync](https://docs.descriptapi.com/#operation/createOverdubAsync)
---
#### Get an Overdub result
**Method**: `GET` | **LowCodeAPI Path**: `/v1/overdub/generate_async/overdubid`
**Full URL**:
```
https://api.lowcodeapi.com/descript/v1/overdub/generate_async/overdubid?overdubId={overdubId}&api_token={api_token}
```
**Path Parameters**:
| `overdubId` | string | ID of the Overdub to return. |
**Note**: Path parameters are passed in the URL path. The LowCodeAPI path uses static parameter names, and the actual values are passed as query parameters with the same names.
**Example Request**:
```bash
curl -X GET "https://api.lowcodeapi.com/descript/v1/overdub/generate_async/overdubid?overdubId=VALUE&&api_token=YOUR_API_TOKEN" \
-H "Content-Type: application/json"
```
**Official Documentation**: [https://docs.descriptapi.com/#operation/getOverdubAsync](https://docs.descriptapi.com/#operation/getOverdubAsync)
---
#### Get voices
**Method**: `GET` | **LowCodeAPI Path**: `/v1/overdub/voices`
**Full URL**:
```
https://api.lowcodeapi.com/descript/v1/overdub/voices&api_token={api_token}
```
**Example Request**:
```bash
curl -X GET "https://api.lowcodeapi.com/descript/v1/overdub/voices&api_token=YOUR_API_TOKEN" \
-H "Content-Type: application/json"
```
**Official Documentation**: [https://docs.descriptapi.com/#operation/getVoice](https://docs.descriptapi.com/#operation/getVoice)
---
## Usage Examples
### Example 1: Basic Usage
Get started with Descript API by making your first request.
```bash
# Your example code here
# This demonstrates basic usage
curl -X GET "https://api.lowcodeapi.com/descript/?api_token=YOUR_API_TOKEN"
```
### Example 2: Advanced Usage
Explore more advanced features and parameters.
```bash
# Your example code here
# This demonstrates advanced usage
curl -X GET "https://api.lowcodeapi.com/descript/?api_token=YOUR_API_TOKEN"
```
## Complete Endpoint Reference
For a complete list of all endpoints and their parameters, refer to:
- **OpenAPI Definition**: `https://backend.lowcodeapi.com/descript/definition`
- **Official Provider Documentation**: [https://docs.descriptapi.com/#section/Authentication](https://docs.descriptapi.com/#section/Authentication)
## Rate Limits & Best Practices
- Check your Descript account for specific rate limits
- Use appropriate error handling and retry logic
- Cache responses when appropriate to reduce API calls
## Error Handling
Standard HTTP status codes apply:
- `400` - Invalid request parameters
- `401` - Unauthorized (check your API key)
- `429` - Rate limit exceeded
- `500` - Internal server error