PHPackages                             codersandip/telescope-exporter - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. codersandip/telescope-exporter

ActiveLibrary[HTTP &amp; Networking](/categories/http)

codersandip/telescope-exporter
==============================

Convert Laravel Telescope requests to Postman Collections and cURL commands

v1.0.0(1mo ago)02↓100%MITBladePHP ^7.3|^8.0

Since Apr 30Pushed 1mo agoCompare

[ Source](https://github.com/codersandip/telescope-exporter)[ Packagist](https://packagist.org/packages/codersandip/telescope-exporter)[ Docs](https://github.com/codersandip/telescope-exporter)[ RSS](/packages/codersandip-telescope-exporter/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (1)Dependencies (2)Versions (2)Used By (0)

Laravel Telescope Exporter
==========================

[](#laravel-telescope-exporter)

Convert captured Laravel Telescope request entries into Postman Collection v2.1 JSON and formatted cURL commands.

Package name:

```
codersandip/telescope-exporter
```

Features
--------

[](#features)

- Export a Telescope request entry as a formatted cURL command.
- Export a Telescope request entry as a Postman Collection v2.1 JSON document.
- Browser view with download buttons for both formats.
- Paste a full Telescope request URL and let the package extract the request UUID.
- Async export generation in the browser without a full page reload.
- Copy buttons for cURL and Postman Collection output.
- Loading state while the request entry is being fetched.
- Dark and light theme toggle with the choice saved in the browser.
- Builds full-domain cURL and Postman URLs when Telescope stored a relative request URI.
- JSON endpoint for integrations or custom UI work.
- Uses Telescope's configured domain and middleware, so access follows the same Telescope authorization rules.
- Compatible with Laravel 8, 9, 10, and 11.

Requirements
------------

[](#requirements)

- PHP 7.3 or newer
- Laravel 8, 9, 10, or 11
- Laravel Telescope 4 or 5

Composer will still enforce the PHP and framework requirements of the Laravel and Telescope versions installed in your application.

Installation
------------

[](#installation)

Install the package with Composer:

```
composer require codersandip/telescope-exporter
```

Laravel package discovery registers the service provider automatically.

If package discovery is disabled, add the provider manually in `config/app.php`:

```
'providers' => [
    Codersandip\TelescopeExporter\TelescopeExportServiceProvider::class,
],
```

Telescope Setup
---------------

[](#telescope-setup)

This package reads request entries from Telescope's storage. Make sure Telescope is installed and migrated:

```
composer require laravel/telescope
php artisan telescope:install
php artisan migrate
```

Telescope must be recording request entries. If your application filters Telescope entries, confirm that request entries are not being filtered out.

Publishing Config
-----------------

[](#publishing-config)

Publish the config file:

```
php artisan vendor:publish --tag=telescope-exporter-config
```

The published file is:

```
config/telescope-exporter.php

```

Default config:

```
return [
    'path' => env('TELESCOPE_EXPORTER_PATH', 'telescope-api'),
];
```

You may change the route prefix with:

```
TELESCOPE_EXPORTER_PATH=telescope-api
```

Publishing Views
----------------

[](#publishing-views)

Publish the Blade view if you want to customize the export screen:

```
php artisan vendor:publish --tag=telescope-exporter-views
```

The published view will be placed at:

```
resources/views/vendor/telescope-exporter/export.blade.php

```

Routes
------

[](#routes)

The default route prefix is `/telescope-api`.

MethodURIDescriptionGET`/telescope-api/export`Browser form for pasting a full Telescope request URLGET`/telescope-api/export/resolve?telescope_url=...`Extracts the request UUID and redirects to the export pageGET`/telescope-api/export/{uuid}`Browser export page with preview and download buttonsGET`/telescope-api/export/{uuid}/json`JSON response containing both cURL and Postman exportsGET`/telescope-api/export/{uuid}/download/curl`Downloads a `.sh` file containing the cURL commandGET`/telescope-api/export/{uuid}/download/postman`Downloads a Postman Collection v2.1 JSON fileThe `{uuid}` value must be the UUID of a Telescope entry where `type` is `request`.

Usage
-----

[](#usage)

Open the exporter page:

```
/telescope-api/export

```

Paste the full Telescope request URL, for example:

```
https://your-app.test/telescope/requests/00000000-0000-0000-0000-000000000000

```

The package extracts the UUID and redirects to:

```
/telescope-api/export/{uuid}

```

The browser page displays:

- A cURL preview
- A Postman Collection JSON preview
- Copy buttons for both previews
- A `Download cURL` button
- A `Download Collection` button
- A loader while the export data is fetched
- A dark/light mode toggle

You can also open a UUID directly:

```
/telescope-api/export/{uuid}

```

When using the pasted URL flow, the package keeps the source domain in the generated links. If Telescope stored a relative URI like `/api/users`, the cURL output will use a full URL like `https://your-app.test/api/users`.

JSON Response
-------------

[](#json-response)

Request:

```
GET /telescope-api/export/{uuid}/json

```

Example response:

```
{
  "uuid": "request-entry-uuid",
  "type": "request",
  "curl": "curl --request POST \\\n  --url 'https://example.test/api/users'",
  "postman": {
    "info": {
      "_postman_id": "request-entry-uuid",
      "name": "Telescope Export request-entry-uuid",
      "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
    },
    "item": [
      {
        "name": "POST /api/users",
        "request": {
          "method": "POST",
          "header": [],
          "url": "https://example.test/api/users"
        }
      }
    ]
  }
}
```

Exported Data
-------------

[](#exported-data)

The package reads the Telescope `content` column for request entries and maps:

- `method` to cURL `--request` and Postman `request.method`
- `uri` or `url` to cURL `--url` and Postman `request.url`
- `headers` to cURL `--header` and Postman `request.header`
- `payload` to cURL `--data-raw` and Postman `request.body`

Payload arrays are encoded as JSON.

The captured `Host` header is intentionally omitted from generated exports. cURL and Postman derive the host from the request URL, which avoids conflicts when the source domain is resolved or changed.

If the captured Telescope URL is relative, the package resolves it against:

1. The domain from the pasted Telescope request URL.
2. `config('app.url')`.
3. The current request host.

Internally, the package reads request entries through Telescope's storage model:

```
Laravel\Telescope\Storage\EntryModel
```

Security
--------

[](#security)

Routes are registered with:

- `config('telescope.domain')`
- `config('telescope.middleware')`

By default, this means the export routes use the same authorization gate and middleware stack as Telescope. Users who cannot access Telescope should not be able to access these export routes.

Review exported requests before sharing them. Telescope may contain headers, cookies, bearer tokens, API keys, or request payload fields captured from your application.

Laravel 8 Notes
---------------

[](#laravel-8-notes)

Laravel 8 is supported by the package constraints:

```
{
  "php": "^7.3|^8.0",
  "illuminate/support": "^8.0|^9.0|^10.0|^11.0",
  "laravel/telescope": "^4.0|^5.0"
}
```

If Composer cannot resolve dependencies in a Laravel 8 application, check the installed Telescope version and PHP version first. Older Laravel 8 projects commonly need a Telescope 4 release, while newer PHP 8 based Laravel 8 projects may resolve newer Telescope versions.

Package Structure
-----------------

[](#package-structure)

```
config/
  telescope-exporter.php
routes/
  web.php
resources/
  views/
    export.blade.php
src/
  TelescopeExportServiceProvider.php
  Http/
    Controllers/
      TelescopeExportController.php
  Services/
    CurlGeneratorService.php
    PostmanGeneratorService.php

```

Troubleshooting
---------------

[](#troubleshooting)

If the export route returns `404`, confirm the UUID belongs to a Telescope entry where `type` is `request`.

If the pasted URL form cannot find a UUID, confirm the URL contains a standard UUID value from a Telescope request detail page.

If the export route returns `403`, check your Telescope authorization gate and middleware.

If the route does not exist, clear cached routes:

```
php artisan route:clear
php artisan optimize:clear
```

If a request body is missing, confirm Telescope captured the request payload and that your Telescope configuration is not hiding or filtering the field.

If you see `Class "Laravel\Telescope\Models\EntryModel" not found`, update the package code to use Telescope's correct model namespace:

```
use Laravel\Telescope\Storage\EntryModel;
```

License
-------

[](#license)

MIT

###  Health Score

36

—

LowBetter than 79% of packages

Maintenance92

Actively maintained with recent releases

Popularity3

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

41d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/82953654?v=4)[Coder Sandip](/maintainers/codersandip)[@codersandip](https://github.com/codersandip)

---

Tags

laravelcurlexporttelescopePostman

### Embed Badge

![Health badge](/badges/codersandip-telescope-exporter/health.svg)

```
[![Health](https://phpackages.com/badges/codersandip-telescope-exporter/health.svg)](https://phpackages.com/packages/codersandip-telescope-exporter)
```

###  Alternatives

[ixudra/curl

Custom PHP Curl library for the Laravel framework - developed by Ixudra

5564.6M91](/packages/ixudra-curl)[muhammadhuzaifa/telescope-guzzle-watcher

Telescope Guzzle Watcher provide a custom watcher for intercepting http requests made via guzzlehttp/guzzle php library. The package uses the on\_stats request option for extracting the request/response data. The watcher intercept and log the request into the Laravel Telescope HTTP Client Watcher.

98262.9k2](/packages/muhammadhuzaifa-telescope-guzzle-watcher)[api-platform/laravel

API Platform support for Laravel

59156.3k10](/packages/api-platform-laravel)[vinelab/http

An http library developed for the laravel framework. aliases itself as HttpClient

59301.9k11](/packages/vinelab-http)[jigarakatidus/laravel-http-to-curl

Extended Http to dump and die with Curl command

3370.7k](/packages/jigarakatidus-laravel-http-to-curl)[laravel-shift/curl-converter

A command line tool to convert curl requests to Laravel HTTP requests.

935.4k](/packages/laravel-shift-curl-converter)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
