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

# إنشاء مهمة محرر Midjourney

> استخدم واجهة CometAPI Submit Editor API ‏(POST /mj/submit/edits) لتحرير صور Midjourney باستخدام maskBase64 وprompts وصور أصلية اختيارية وتحريرات شفافة.

استخدم نقطة النهاية هذه لتحرير صورة Midjourney باستخدام قناع، أو لإنشاء نتيجة بخلفية شفافة من Prompt مع صورة مصدر.

## وضعان شائعان

* تحرير باستخدام قناع: أرسل `maskBase64` مع `prompt`، ويمكنك اختياريًا إرسال `image` الأصلية
* رسم شفاف: أرسل `image` مع `prompt` عندما تريد نتيجة بخلفية شفافة من دون قناع منفصل

## تدفق المهمة

<Steps>
  <Step title="إرسال مهمة المحرر">
    اختر وضع التحرير، وأرسل Prompt وبيانات المصدر، ثم خزّن task id المُعاد.
  </Step>

  <Step title="استعلم عن المهمة">
    استخدم [جلب مهمة واحدة](./task-fetching-api/fetch-single-task) حتى تصل المهمة إلى حالة نهائية.
  </Step>

  <Step title="تابع من النتيجة">
    استخدم الأصل النهائي مباشرة، أو فعّل [Action](./action) عندما تعرض النتيجة المعدلة أزرار متابعة.
  </Step>
</Steps>


## OpenAPI

````yaml api/openapi/image/midjourney/post-submit-editor.openapi.json POST /mj/submit/edits
openapi: 3.1.0
info:
  title: Submit Editor API
  version: 1.0.0
servers:
  - url: https://api.cometapi.com
security:
  - bearerAuth: []
paths:
  /mj/submit/edits:
    post:
      summary: Submit Editor
      operationId: submit_editor
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - prompt
                - image
              properties:
                prompt:
                  type: string
                  description: Text prompt describing the desired edit.
                  default: Change to white background
                image:
                  type: string
                  description: >-
                    Image to edit. Pass a public URL or a base64-encoded data
                    URI.
                  default: https://your-image-host/source.png
                state:
                  type: string
                  description: >-
                    Custom state string. Returned as-is in the task result and
                    webhook callback for your own tracking.
                notifyHook:
                  type: string
                  description: >-
                    Webhook URL to receive task status updates. Falls back to
                    your account-level webhook if omitted.
                noStorage:
                  type: boolean
                  description: >-
                    When `true`, return the original provider image URL instead
                    of a CometAPI-proxied link.
              default:
                prompt: Change to white background
                image: https://your-image-host/source.png
            examples:
              Edit by image URL:
                summary: >-
                  Edit an existing image referenced by URL (replace the URL with
                  your image)
                value:
                  prompt: Change to white background
                  image: https://your-image-host/source.png
              Edit by base64 image:
                summary: >-
                  Edit an inline base64 image. Replace the data URI with your
                  own image data.
                value:
                  prompt: Change to white background
                  image: data:image/jpeg;base64,<your-image-base64>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    description: >-
                      Submission status code. `1` = submitted successfully
                      (`result` carries the task id). `21` = the action opened a
                      confirmation modal; continue with `/mj/submit/modal` using
                      the returned task id. `4` = parameter error; `description`
                      explains the cause.
                  description:
                    type: string
                  result:
                    type: string
      x-codeSamples:
        - lang: Shell
          label: Default
          source: |
            curl https://api.cometapi.com/mj/submit/edits \
              -H "Authorization: Bearer $COMETAPI_KEY" \
              -H "Content-Type: application/json" \
              -d '{
                "prompt": "Change to white background",
                "image": "https://your-image-host/source.png"
              }'
        - lang: Python
          label: Default
          source: |
            import os
            import requests

            response = requests.post(
                "https://api.cometapi.com/mj/submit/edits",
                headers={"Authorization": "Bearer " + os.environ["COMETAPI_KEY"]},
                json={
                    "prompt": "Change to white background",
                    "image": "https://your-image-host/source.png",
                },
            )

            task = response.json()
            print(task["code"], task.get("result"))
        - lang: JavaScript
          label: Default
          source: >
            const response = await
            fetch("https://api.cometapi.com/mj/submit/edits", {
                method: "POST",
                headers: {
                    Authorization: `Bearer ${process.env.COMETAPI_KEY}`,
                    "Content-Type": "application/json",
                },
                body: JSON.stringify({
                    prompt: "Change to white background",
                    image: "https://your-image-host/source.png",
                }),
            });


            const task = await response.json();

            console.log(task.code, task.result);
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Bearer token authentication. Use your CometAPI key.

````