Create Short URL
Getting Started
Authenticate using the Login API to obtain an access token. Include the returned Bearer Token in the Authorization header and provide a unique X-Device-ID with all authenticated requests. All requests must be made over HTTPS and are subject to rate limits.
Base URL: https://insprl.com/api
POST /external/short-url/create
Use the Create Short URL API to generate short links directly from your third-party integrations.
This endpoint supports browser extensions, WordPress plugins, Make.com scenarios, Zapier automations, mobile applications, and custom software. Guest users can create short URLs instantly, while authenticated users gain access to advanced features such as analytics, folders, QR codes, custom domains, and higher usage limits.
Request Information
| Method | POST |
| API Endpoint | https://insprl.com/api/external/short-url/create |
| Authentication | Public Endpoint |
Header Parameters
| Parameter | Type | Description |
|---|
| X-Device-ID | String | Unique identifier for the integration installation. |
| Authorization | String | Optional. Bearer token returned by the Login API. Enables logged-in user features. |
| Content-Type | JSON | application/json |
Request Parameters
| Parameter | Type | Validate | Description |
|---|
| url | String | Required | Destination URL to shorten. |
| domain_id | Integer | Optional | Custom domain identifier. Uses default domain if omitted. |
| folder_id | Integer | Optional | Folder identifier where the short URL should be stored. |
| custom_slug | String | Optional | Custom short URL slug. |
| title | String | Optional | Open Graph title used during sharing. |
| description | String | Optional | Open Graph description used during sharing. |
| image | String | Optional | Open Graph image URL. |
Response Parameters
| Parameter | Type | Description |
|---|
| success | Boolean | Request status (true/false). |
| message | String | Status message. |
| data | Object | Generated short URL details. |
| data.url_id | Integer | Unique short URL identifier. |
| data.short_url | String | Generated short URL. |
| data.long_url | String | Original destination URL. |
| data.url_flag | String | Short URL slug. |
| data.created_at | DateTime | URL creation timestamp. |
Response Codes
| SPRL Code | HTTP Status | Mode | Response Field | Description |
| 100 | 200 | success | data | Request processed successfully. |
| 101 | 401 | failed | message | Authentication failed. Invalid session, token or credentials. |
| 102 | 422 | failed | errors | Parameter validation failed. Check the request fields. |
| 103 | 404 | failed | message | Requested resource was not found. |
| 104 | 403 | failed | message | Access denied or account restricted. |
| 105 | 429 | failed | message | Too many requests. Please retry later. |
| 106 | 500 | failed | message | Unexpected server error. Please try again later. |
Error Flag Reference
| Category | Flag | Type | Description |
| Authentication | INVALID_SESSION | auth_error | The supplied token or device identifier is invalid. |
| Authentication | INVALID_CREDENTIALS | auth_error | Invalid login credentials supplied. |
| Validation | INVALID_PARAMETER | validation_error | One or more request parameters are invalid. |
| Resource | RESOURCE_NOT_FOUND | resource_error | The requested URL, folder, domain or resource could not be found. |
| Account | ACCOUNT_RESTRICTED | account_error | The account is restricted or access has been denied. |
| Rate Limit | RATE_LIMIT_EXCEEDED | rate_limit_exceeded | The request rate limit has been exceeded. |
| Server | UNEXPECTED_ERROR | server_error | An unexpected internal server error occurred. |