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

# Remove Background 

Remove background from an image. This is a synchronous endpoint that returns the processed image directly in the response body.

```text theme={null}
https://fapihub.com/v2/rembg/
```

#### Result

<Columns cols={2}>
  <Column>
    <Frame>
      <img src="https://mintcdn.com/fapihub/11lDxxSYrpxAeUsM/images/image-1.png?fit=max&auto=format&n=11lDxxSYrpxAeUsM&q=85&s=e11fcf581b3b2c74239940f3d0c47077" alt="Image" width="640" height="848" data-path="images/image-1.png" />
    </Frame>
  </Column>

  <Column>
    <Frame>
      <img alt="Image" lightAlt="Image" darkAlt="Image" src="https://mintcdn.com/fapihub/11lDxxSYrpxAeUsM/images/image-2.png?fit=max&auto=format&n=11lDxxSYrpxAeUsM&q=85&s=05750741e7aa2314ec03db4c904d7f1a" width="640" height="848" data-path="images/image-2.png" />
    </Frame>
  </Column>
</Columns>

#### Headers

<ParamField header="ApiKey" type="string" required>
  Your API token.
</ParamField>

#### Body

<ParamField body="image" type="file" required>
  The image file to process. Send as multipart form data.
</ParamField>

<ParamField body="model" type="string">
  Optional processing model. Allowed values: `falcon`, `aurora`, `ghost`. Default is `falcon`.

  Supported only for `/v2/rembg/` and `/v2/rembg/mask/`.
</ParamField>

#### Code Samples

<CodeGroup>
  ```shellscript cURL theme={null}
  curl -X POST "https://fapihub.com/v2/rembg/" \
    -H "ApiKey: your_api_token" \
    -F "image=@/path/to/image.jpg" \
    -F "model=falcon" \
    -o result.png
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      "https://fapihub.com/v2/rembg/",
      headers={"ApiKey": "your_api_token"},
      files={"image": open("/path/to/image.jpg", "rb")},
      data={"model": "falcon"}
  )

  if response.status_code == 200:
      with open("result.png", "wb") as f:
          f.write(response.content)
  else:
      print("Error:", response.json())
  ```

  ```javascript JavaScript theme={null}
  const formData = new FormData();
  formData.append("image", fileInput.files[0]);
  formData.append("model", "falcon");

  fetch("https://fapihub.com/v2/rembg/", {
    method: "POST",
    headers: {
      "ApiKey": "your_api_token"
    },
    body: formData
  })
  .then(response => response.blob())
  .then(blob => {
    const url = window.URL.createObjectURL(blob);
    const a = document.createElement("a");
    a.href = url;
    a.download = "result.png";
    a.click();
  })
  .catch(error => console.error("Error:", error));
  ```

  ```php PHP theme={null}
  <?php
  $curl = curl_init();

  curl_setopt_array($curl, [
    CURLOPT_URL => "https://fapihub.com/v2/rembg/",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => [
      "ApiKey: your_api_token"
    ],
    CURLOPT_POSTFIELDS => [
      "image" => new CURLFile("/path/to/image.jpg"),
      "model" => "falcon"
    ]
  ]);

  $response = curl_exec($curl);
  $http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
  curl_close($curl);

  if ($http_code == 200) {
    file_put_contents("result.png", $response);
  } else {
    echo "Error: " . $response;
  }
  ?>
  ```
</CodeGroup>

#### Responses

<CodeGroup>
  ```text 200 theme={null}
  Binary image data (the processed image with background removed)
  ```

  ```json 400 theme={null}
  {
    "error": {
      "code": "invalid_image",
      "message": "The uploaded file is not a valid image format",
      "request_id": "req_abc123"
    }
  }
  ```

  ```json 401 theme={null}
  {
    "error": {
      "code": "invalid_api_key",
      "message": "The provided API key is invalid or expired",
      "request_id": "req_abc123"
    }
  }
  ```

  ```json 402 theme={null}
  {
    "error": {
      "code": "insufficient_credits",
      "message": "Your account has insufficient credits. Please upgrade your plan.",
      "request_id": "req_abc123"
    }
  }
  ```

  ```json 429 theme={null}
  {
    "error": {
      "code": "rate_limit_exceeded",
      "message": "Too many requests. Please wait before making more requests.",
      "request_id": "req_abc123",
      "retry_after": 60
    }
  }
  ```
</CodeGroup>
