# API guide for game hosting

Looking for a quick start on game deployment within the Game Hosting platform using our Game Server Orchestrator? Here's how it works:

![Game Deployment workflow](https://3255620342-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTxqXHcEUC6lhXmjD6wE0%2Fuploads%2Fgit-blob-effb7aaa5e8a0730020e672611b811e3e2f8db22%2FDeploymentNutshell.png?alt=media)

### 1. Register build origin and upload your build archive.

Before you can begin, you need to [register a build origin](https://docs.i3d.net/game-hosting/processes/application-build-provisioning); a secure web server that hosts your build archives. A build origin can be a web server that you host yourself, or you can use a build origin provided by us.

Once that's registered, upload your build to the origin.

### 2. Define your Application

Our platform needs to have some information about the application you're going to deploy. As such, you have to [create an Application element](https://docs.i3d.net/game-hosting/elements/application) telling us what kind of application it is (a game application to begin with) and you must give it some [properties](https://docs.i3d.net/game-hosting/elements/application/applicationproperty), like a network (game) port that clients can connect to.

### 3. Create Application Build

Next you must point to your build archive from within an [Application Build element](https://docs.i3d.net/game-hosting/elements/application/applicationbuild). Here you enter things like the name of the executable, along with any startup parameters that we need to pass to the game server when starting it.

### 4. Create Game Template

From within a [Game Template](https://docs.i3d.net/game-hosting/elements/deploymentenvironment/index/gamedeploymenttemplate) you point to an Application Build you want to deploy. You need this step because you must point to this later on in the process.

### 5. Create Deployment Environment

A [Deployment Environment](https://docs.i3d.net/game-hosting/elements/deploymentenvironment) is the top most element in your deployment hierarchy. It encapsulates all Fleets that must be grouped together for a single purpose. E.g. you can have a development, testing and production environment.

### 6. Create Deployment Profile

Now it's time to tell the platform where you want your game servers deployed by creating a [Deployment Profile](https://docs.i3d.net/game-hosting/elements/deploymentenvironment/deploymentprofile). Here you must define your geographical deployment regions (based on where you rent bare metal servers from us) and optionally add cloud bursting locations to each region.

### 7. Create Fleet

A [Fleet](https://docs.i3d.net/game-hosting/elements/deploymentenvironment/fleet) ties all previously created elements together, defining for the platform all details it requires in order to deploy your game servers.

### 8. Enable Deployment

Finally, you must [enable automatic deployment](https://docs.i3d.net/elements/deploymentenvironment/fleet#operational-status). Sit back and see your game servers come online within a few minutes(1)(2)

¹ the largest factor in deployment time is the size of your build archive that needs to be downloaded ² in order to deploy game servers you first need to have at least one bare metal or flex metal server active in your account

## Related topics

* [Orchestrator Overview](https://docs.i3d.net/game-hosting/game-integration/orchestratoroverview)
* [i3d.net API documentation](https://www.i3d.net/docs/api/v3/all/)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.i3d.net/game-hosting/overview/quick-start.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
