Flux Kontext Context-Aware API

Specialized for context-aware generation with style control

✓ Pro/Max modes

✓ Context-aware

✓ Style control

✓ Reference support

Autentikointi

Käyttääksesi palvelua Flux Kontext API Doitong-API:n kautta, käytä Doitong-API-avaintasi. Lisää se GraphQL-mutaatioon tai REST-API-otsikoihin.

Tärkeää: Pidä Doitong-API-avaimesi turvassa äläkä koskaan paljasta sitä asiakaspuolen koodissa. Tee API-kutsut aina taustapalvelimeltasi.
// GraphQL Header
{
  "Authorization": "Bearer YOUR_API_KEY"
}

// REST Header
"X-API-Key": "YOUR_API_KEY"

Pika-aloitus

Aloita palvelun Flux Kontext API käyttö muutamassa minuutissa. Seuraa näitä ohjeita luodaksesi ensimmäisen kohteesi (text to image).

Vaihe 1: Hae API-avaimesi

Luo Doitong-tili ja siirry hallintapaneeliin luodaksesi API-avaimen.

Vaihe 2: Tee ensimmäinen pyyntösi

Käytä alla olevia koodiesimerkkejä ensimmäisen API-kutsun tekemiseen.

curl -X POST https://api.doitong.com/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "query": "mutation Generate($input: GenerateInput!) { generate(input: $input) { id status type provider url metadata creditCost } }",
    "variables": {
      "input": {
        "type": "IMAGE",
        "provider": "flux-kontext",
        "input": {
          "text": "A futuristic city with flying cars and neon lights"
        },
        "options": {
          "width": 1024,
          "height": 1024
        }
      }
    }
  }'
const response = await fetch('https://api.doitong.com/graphql', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
  },
  body: JSON.stringify({
    query: `
      mutation GenerateImage($input: ImageGenerationInput!) {
        generateImage(input: $input) {
          id
          url
          width
          height
        }
      }
    `,
    variables: {
      input: {
        service: 'flux-kontext',
        prompt: 'A futuristic city with flying cars and neon lights',
        width: 1024,
        height: 1024
      }
    }
  })
});

const data = await response.json();
console.log('Image:', data.data.generateImage);
import requests
import json

url = "https://api.doitong.com/graphql"
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
}

query = """
mutation Generate($input: GenerateInput!) {
  generate(input: $input) {
    id
    status
    type
    provider
    url
    metadata
    creditCost
  }
}
"""

variables = {
    "input": {
        "type": "IMAGE",
        "provider": "flux-kontext",
        "input": {
            "text": "A futuristic city with flying cars and neon lights"
        },
        "options": {
            "width": 1024,
            "height": 1024
        }
    }
}

response = requests.post(url, json={
    "query": query,
    "variables": variables
}, headers=headers)

data = response.json()
print("Result:", data["data"]["generate"])
mutation Generate($input: GenerateInput!) {
  generate(input: $input) {
    id
    status
    type
    provider
    url
    metadata
    creditCost
    createdAt
  }
}

# Variables
{
  "input": {
    "type": "IMAGE",
    "provider": "flux-kontext",
    "input": {
      "text": "A futuristic city with flying cars and neon lights"
    },
    "options": {
      "width": 1024,
      "height": 1024,
      "version": "flux-kontext-max",
      "quality": "high"
    }
  }
}

Hinnoittelu

Flux Kontext API käyttää krediittipohjaista hinnoittelumallia. Krediittejä kuluu luodun sisällön monimutkaisuuden ja keston mukaan.

Ominaisuus Krediitit Kuvaus
Vakioresoluutio 10-20 Krediitit 512x512 – 1024x1024 pikseliä
Korkea resoluutio 30-50 Krediitit 2048x2048 pikseliä ja enemmän

API-päätepisteet

Flux Kontext API on käytettävissä yhtenäisen GraphQL-päätepisteemme kautta.

GraphQL-päätepiste

POST https://api.doitong.com/graphql

REST-päätepiste

POST https://api.doitong.com/v1/text_to_image

Parametrit

Käytettävissä olevat parametrit Flux Kontext API-pyyntöihin:

Parametri Tyyppi Pakollinen Kuvaus
service Merkkijono Yes Palvelun tunniste: "flux-kontext"
prompt Merkkijono Yes Tekstikuvaus luotavasta sisällöstä
width Kokonaisluku No Kuvan leveys pikseleinä (oletus: 1024)
height Kokonaisluku No Kuvan korkeus pikseleinä (oletus: 1024)
version Merkkijono No Model version: "flux-kontext-pro", "flux-kontext-max"
webhookUrl Merkkijono No URL-osoite ilmoitusten vastaanottamiseen

Vastausmuoto

Kaikki API-vastaukset noudattavat yhtenäistä muotoa:

Onnistunut vastaus

{
  "data": {
    "generateimage": {
      "id": "abc123xyz",
      "status": "processing",
      "url": null,
      "webhookUrl": "https://your-webhook.com/callback",
      "createdAt": "2024-01-01T00:00:00Z"
    }
  }
}

Valmis vastaus

{
  "data": {
    "generateimage": {
      "id": "abc123xyz",
      "status": "completed",
      "url": "https://cdn.doitong.com/outputs/abc123xyz.jpg",
      "duration": null,
      "createdAt": "2024-01-01T00:00:00Z"
    }
  }
}

Virheiden käsittely

API käyttää vakioita HTTP-tilakoodeja ja palauttaa yksityiskohtaisia virheilmoituksia.

Yleiset virhekoodit

Tilakoodi Virhetyyppi Kuvaus
400 Bad Request Invalid parameters or malformed request
401 Unauthorized Missing or invalid API key
402 Payment Required Insufficient credits
429 Too Many Requests Rate limit exceeded
500 Internal Server Error Server error, please retry

Virhevastauksen muoto

{
  "errors": [
    {
      "message": "Insufficient credits for this operation",
      "extensions": {
        "code": "INSUFFICIENT_CREDITS",
        "creditsRequired": 100,
        "creditsAvailable": 50
      }
    }
  ]
}

Webhookit

Vastaanota reaaliaikaisia ilmoituksia, kun text to image-luonti on valmis.

Webhookien määrittäminen

Include a <code>webhookUrl</code> parameter in your request to receive a POST notification when processing is complete.

Webhook-data (Payload)

{
  "id": "abc123xyz",
  "status": "completed",
  "url": "https://cdn.doitong.com/outputs/abc123xyz.jpg",
  "service": "flux-kontext",
  "createdAt": "2024-01-01T00:00:00Z",
  "completedAt": "2024-01-01T00:01:00Z",
  "metadata": {
    "duration": null,
    "width": 1920,
    "height": 1080
  }
}

Webhook-tietoturva

Kaikki webhook-pyynnöt sisältävät allekirjoitusotsikon varmennusta varten:

X-Doitong-Signature: sha256=abc123...

Käyttörajat

Reilun käytön ja järjestelmän vakauden varmistamiseksi sovelletaan seuraavia rajoituksia:

Tilaus Pyyntöä/minuutti Samanaikaiset työt Päivittäinen raja
Ilmainen 10 1 100
Starter 30 3 1,000
Pro 60 10 10,000
Enterprise Mukautettu Mukautettu Rajoittamaton
Käyttörajojen otsikot: Tarkista vastauksen otsikoista nykyinen rajoitustila:
  • X-RateLimit-Limit: Maximum requests per window
  • X-RateLimit-Remaining: Requests remaining
  • X-RateLimit-Reset: Window reset timestamp

Parhaat käytännöt

1. Optimoi kehotteesi

Kirjoita selkeitä ja kuvailevia kehotteita parhaiden tulosten saavuttamiseksi:

  • Be specific about visual elements, style, and mood
  • Include details about lighting, camera angles, and composition
  • Avoid contradictory or impossible requests

2. Hallitse asynkronista käsittelyä

Luonti on asynkronista. Toteuta asianmukainen kysely (polling) tai käytä webhookeja:

// Polling example
async function pollStatus(jobId) {
  let status = 'processing';
  while (status === 'processing') {
    await sleep(2000); // Wait 2 seconds
    const result = await checkJobStatus(jobId);
    status = result.status;
  }
  return result;
}

3. Virheistä toipuminen

Toteuta uudelleenyrityslogiikka eksponentiaalisella viiveellä:

async function retryWithBackoff(fn, maxRetries = 3) {
  for (let i = 0; i < maxRetries; i++) {
    try {
      return await fn();
    } catch (error) {
      if (i === maxRetries - 1) throw error;
      await sleep(Math.pow(2, i) * 1000);
    }
  }
}

4. Seuraa krediittien kulutusta

Seuraa krediittien käyttöä välttääksesi keskeytykset:

  • Check credit balance before large batch operations
  • Set up alerts for low credit thresholds
  • Implement credit-aware request queuing

Oletko valmis aloittamaan?

Liity tuhansien kehittäjien joukkoon, jotka käyttävät palvelua Flux Kontext API upean sisällön luomiseen

Hae API-avain nyt Katso hinnoittelu