Skip to content

Instantly share code, notes, and snippets.

@Frenzycore
Created February 18, 2026 05:00
Show Gist options
  • Select an option

  • Save Frenzycore/a6684653cceb1062d28d41d2786c3ffd to your computer and use it in GitHub Desktop.

Select an option

Save Frenzycore/a6684653cceb1062d28d41d2786c3ffd to your computer and use it in GitHub Desktop.
Alteroxy is a simple proxy API service that allows you to access web content through a proxy server, hide your real IP address, and access sites that may be blocked in your region. This document covers everything you need to know.

Alteroxy

Alteroxy is a proxy API service that lets you fetch web content through proxy servers. Basically it hides your real IP and helps you access stuff that might be blocked in your region.

Base URL

https://alterarchive.web.id/api

Authentication

You need an API key to use this. Pass it either as a query param or header:

  • Query param: ?key=YOUR_API_KEY
  • Header: x-api-key: YOUR_API_KEY

Wrong or missing key? You'll get a 401 Unauthorized. Simple as that.

Lookin' for apikey? just ask me TO BUY IT! jk lol, here's the public key just for u >< "core"


Endpoints

1. Basic Proxy

Grab a URL through a specific proxy server. You pick the region and server.

GET /proxy

Parameters:

Name Type Required Default Description
url string Yes The URL you want to fetch (encode it!)
region string No "us" "us" or "eu"
serverId integer No 1 Server number from 1 to 20

Example:

curl "https://alterarchive.web.id/api/proxy?key=core&url=https://api.ipify.org&region=us&serverId=1"

Response: Raw HTML/text. If you use api.ipify.org, you'll see the proxy's IP instead of yours.


POST /proxy

Same thing but with JSON body. Use this if your URL is super long.

Body:

{
  "url": "https://api.ipify.org",
  "region": "eu",
  "serverId": 5
}

Example:

curl -X POST "https://alterarchive.web.id/api/proxy?key=core" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://api.ipify.org",
    "region": "eu",
    "serverId": 5
  }'

2. Auto Retry

This one tries random servers until it works. If one fails, it just picks another.

GET /proxy/auto

Parameters:

Name Type Required Default Description
url string Yes Target URL
region string No "us" Region to pick servers from
retries integer No 2 How many times to retry

Example:

curl "https://alterarchive.web.id/api/proxy/auto?key=core&url=https://api.ipify.org&region=us&retries=3"

POST /proxy/auto

Same with JSON body.


3. Client Management

Create a reusable client with your favorite settings. Use it again and again without retyping everything.

POST /proxy/client

Body:

Name Type Required Default Description
clientId string Yes Give it a unique name
region string No "us" Your preferred region
serverId integer No 1 Your favorite server

Example:

curl -X POST "https://alterarchive.web.id/api/proxy/client?key=core" \
  -H "Content-Type: application/json" \
  -d '{
    "clientId": "my-client-1",
    "region": "us",
    "serverId": 7
  }'

Response:

{
  "success": true,
  "message": "Client my-client-1 created"
}

POST /proxy/client/:clientId/fetch

Use that client you just made.

Path param: clientId

Body:

{
  "url": "https://api.ipify.org"
}

Example:

curl -X POST "https://alterarchive.web.id/api/proxy/client/my-client-1/fetch?key=core" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://api.ipify.org"
  }'

Response: Raw HTML/text.


4. Fetch Replacement

Get the full response details: status, headers, and content. Like the real fetch() but proxied.

POST /proxy/fetch

Body:

Name Type Required Default Description
url string Yes Target URL
region string No "us" Proxy region
serverId integer No 1 Server number
fetchOptions object No {} Extra stuff like headers, method, etc.

Example:

curl -X POST "https://alterarchive.web.id/api/proxy/fetch?key=core" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://api.ipify.org",
    "region": "eu",
    "serverId": 3,
    "fetchOptions": {
      "method": "GET",
      "headers": {
        "Accept": "application/json"
      }
    }
  }'

Response:

{
  "status": 200,
  "headers": {
    "content-type": "text/plain"
  },
  "data": "27.106.127.156"
}

5. List Available Servers

Wanna know what servers you can use? Hit this endpoint.

GET /proxy/servers

Example:

curl "https://alterarchive.web.id/api/proxy/servers?key=core"

Response:

{
  "servers": [
    "us1", "us2", "us3", "...", "us20",
    "eu1", "eu2", "eu3", "...", "eu20"
  ]
}

6. Advanced Auto (Multiple Regions)

Tries regions one by one. If EU fails, it tries US. Keeps going until something works.

POST /proxy/auto-advanced

Body:

Name Type Required Default Description
url string Yes Target URL
regions array No ["us","eu"] List of regions in order
retriesPerRegion integer No 2 Retry attempts per region

Example:

curl -X POST "https://alterarchive.web.id/api/proxy/auto-advanced?key=core" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://api.ipify.org",
    "regions": ["eu", "us"],
    "retriesPerRegion": 3
  }'

Response: Raw HTML/text from the first region that works.


Error Handling

Status What happened What you'll get
400 Missing required stuff { "error": "Missing required parameters", "required": ["url"] }
401 Invalid API key { "success": false, "error": "Unauthorized!" }
404 Client not found { "error": "Client not found" }
500 Proxy server failed { "error": "Failed to fetch final content. Status: 502" }

Testing

  • Use http://example.com – simple HTML page for testing
  • Use https://api.ipify.org – it returns the proxy's IP (should be different from yours)

Notes

  • This uses proxysite.com behind the scenes. If they're down, we're down. bummer.
  • Clients are stored in memory only. Server restart = clients gone. poof.
  • Always URL-encode the url param in GET requests. don't forget.
  • Don't abuse it or we'll have to block u. don't be that person.

Disclaimer

  • Things might change without notice. like, suddenly.
  • May break randomly. it happens.
  • Not for critical stuff. seriously.
  • Keep your own backups. you've been warned.

Questions? Issues? Just ask. we don't bite.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment