> ## Documentation Index
> Fetch the complete documentation index at: https://openapidocs.flexforwardship.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Environments

> Production and development environment details

# Environments

The Flex Forward API provides two environments for production operations and development testing.

## Available environments

| Environment | Base URL                          | Courier connection       |
| ----------- | --------------------------------- | ------------------------ |
| Production  | `https://api.flexforward.com`     | Live courier services    |
| Development | `https://sandbox.flexforward.com` | Courier sandbox services |

All requests must use HTTPS. Requests over plain HTTP will be rejected.

## Development environment

The development environment connects to courier sandbox services (e.g., YunExpress sandbox). Use it for:

* Testing your integration without creating live shipments
* Validating request formats and response handling
* Developing error handling and retry logic

<Note>
  Sandbox courier services may return simulated tracking data and label documents. Behavior may differ from production in response timing and available tracking statuses.
</Note>

### Sandbox test data

The development environment supports test values that produce predictable tracking responses. Use these to verify your integration handles different shipment outcomes:

| Ship-to postal code | Simulated tracking result                            |
| ------------------- | ---------------------------------------------------- |
| `90001`             | `Delivered` — shipment completes normally            |
| `90002`             | `Exception` — delivery exception occurs              |
| `90003`             | `InTransit` — shipment stays in transit indefinitely |
| `90004`             | `Cancelled` — shipment is cancelled                  |

<Note>
  Test values and simulated responses are subject to change. Contact the Flex Forward team for the latest sandbox test data.
</Note>

## Credential separation

Use separate API tokens for each environment. Do not use production credentials in development or vice versa.

<Warning>
  Production tokens have access to live courier services. Always verify which environment you are targeting before making requests.
</Warning>

## Token best practices

* Store tokens in environment variables or a secrets manager
* Never hard-code tokens in source code or commit them to version control
* Use separate tokens per environment to prevent accidental production requests during development
* Rotate tokens regularly

See [Authentication](/authentication) for details on token usage and error responses.

## Rate limits

Rate limits are not currently enforced. As a guideline, keep request volume below **10 requests per second** per account. Rate limit headers (`X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset`) are not currently included in responses.

If rate limiting is introduced in the future, it will be communicated through the [Changelog](/changelog) with advance notice. Contact the Flex Forward team at [flex-forward.support@returnhelper.com](mailto:flex-forward.support@returnhelper.com) to discuss capacity planning for high-throughput integrations.

## Go-live checklist

Before switching from development to production:

* [ ] Development token issued and tested
* [ ] Production token approved by the Flex Forward team
* [ ] Shipper account configured for production courier(s)
* [ ] Label creation tested successfully in development
* [ ] Label document retrieval tested
* [ ] Tracking retrieval tested
* [ ] Idempotency behavior verified (duplicate key returns same result)
* [ ] Error handling implemented for all status codes
* [ ] Required courier and shipping lane setup confirmed

## HTTPS requirement

All API endpoints require HTTPS with TLS 1.2 or higher. Requests sent over plain HTTP will receive a connection error.
