تخطَّ إلى المحتوى

مرجع الـ API

واجهة Authevo REST الكاملة — 76 نقطة نهاية، مُولّدة من مواصفة OpenAPI الخاصة بنا. يتطلب كل طلب مفتاحًا سريًا Bearer ‏(‎sk_…) ما لم يُذكر خلاف ذلك.

عنوان الأساس: https://api.authevo.dev

رموز التحقق (OTP)

POST/v1/otp/send

جسم الطلب

{
  "type": "object",
  "required": [
    "phone"
  ],
  "properties": {
    "phone": {
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "message_id": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "expires_in": {
          "type": "number"
        }
      }
    }
  }
}

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/otp/telegram-link

جسم الطلب

{
  "type": "object",
  "required": [
    "phone"
  ],
  "properties": {
    "phone": {
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "telegram_bot_url": {
          "type": "string"
        },
        "expires_in": {
          "type": "number"
        }
      }
    }
  }
}

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/otp/deliver

جسم الطلب

{
  "type": "object",
  "required": [
    "phone",
    "code"
  ],
  "properties": {
    "phone": {
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "code": {
      "type": "string",
      "pattern": "^\\d{6}$"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/otp/verify

جسم الطلب

{
  "type": "object",
  "required": [
    "phone",
    "code"
  ],
  "properties": {
    "phone": {
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "code": {
      "type": "string",
      "pattern": "^\\d{6}$"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/otp/status/{message_id}

المعاملات

  • message_id (path, مطلوب) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}

TOTP (تطبيقات المصادقة)

POST/v1/totp/enroll

جسم الطلب

{
  "type": "object",
  "required": [
    "phone"
  ],
  "properties": {
    "phone": {
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "replace": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "secret": {
          "type": "string"
        },
        "otpauth_url": {
          "type": "string"
        },
        "qr_code": {
          "type": "string"
        },
        "already_enrolled": {
          "type": "boolean"
        }
      }
    }
  }
}

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/totp/disable

جسم الطلب

{
  "type": "object",
  "required": [
    "phone"
  ],
  "properties": {
    "phone": {
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "disabled": {
          "type": "boolean"
        }
      }
    }
  }
}

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/totp/verify

جسم الطلب

{
  "type": "object",
  "required": [
    "phone",
    "code"
  ],
  "properties": {
    "phone": {
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "code": {
      "type": "string",
      "pattern": "^\\d{6}$"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "verified": {
          "type": "boolean"
        },
        "attempts_remaining": {
          "type": "integer"
        },
        "first_confirm": {
          "type": "boolean"
        }
      }
    }
  }
}

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}

الحساب وWhatsApp

POST/v1/clients/register

جسم الطلب

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "pattern": "^[a-zA-Z0-9._%+\\-]+@[a-zA-Z0-9.\\-]+\\.[a-zA-Z]{2,}$"
    },
    "password": {
      "type": "string",
      "minLength": 8
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "phone": {
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "company": {
      "type": "string",
      "maxLength": 120
    },
    "turnstile_token": {
      "type": "string",
      "maxLength": 4096
    }
  },
  "required": [
    "email",
    "password",
    "name",
    "phone"
  ],
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/login

جسم الطلب

{
  "type": "object",
  "required": [
    "email",
    "password"
  ],
  "properties": {
    "email": {
      "type": "string",
      "pattern": "^[a-zA-Z0-9._%+\\-]+@[a-zA-Z0-9.\\-]+\\.[a-zA-Z]{2,}$"
    },
    "password": {
      "type": "string",
      "minLength": 8
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/logout

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
PATCH/v1/clients/profile

جسم الطلب

{
  "type": "object",
  "minProperties": 1,
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "phone": {
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "company": {
      "type": "string",
      "maxLength": 120
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/signup-secret

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/session/refresh

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/keys/rotate

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/keys

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/keys

جسم الطلب

{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "mode": {
      "type": "string",
      "enum": [
        "live",
        "test"
      ],
      "default": "live"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
DELETE/v1/clients/keys/{id}

المعاملات

  • id (path, مطلوب) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/webhook-secret/rotate

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/connect-whatsapp

جسم الطلب

{
  "type": "object",
  "required": [
    "phone_number_id",
    "access_token"
  ],
  "properties": {
    "phone_number_id": {
      "type": "string",
      "pattern": "^[0-9]{1,20}$"
    },
    "access_token": {
      "type": "string",
      "minLength": 1
    },
    "waba_id": {
      "type": "string",
      "pattern": "^[0-9]{1,20}$"
    },
    "display_name": {
      "type": "string"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/waba/embedded-signup

جسم الطلب

{
  "type": "object",
  "required": [
    "code",
    "waba_id",
    "phone_number_id"
  ],
  "properties": {
    "code": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048
    },
    "waba_id": {
      "type": "string",
      "pattern": "^[0-9]{1,20}$"
    },
    "phone_number_id": {
      "type": "string",
      "pattern": "^[0-9]{1,20}$"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/waba/details

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/waba/template/check

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/waba/template/create

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/clients/waba/disconnect

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/me

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
PATCH/v1/clients/settings

جسم الطلب

{
  "type": "object",
  "minProperties": 1,
  "properties": {
    "webhook_url": {
      "type": "string",
      "pattern": "^https://[^\\s]+$"
    },
    "spend_cap_hourly": {
      "type": [
        "number",
        "null"
      ],
      "minimum": 0
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/analytics

المعاملات

  • period (query) — integer, min 1, max 365

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/analytics/timeseries

المعاملات

  • period (query) — integer, min 1, max 365

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/analytics/funnel

المعاملات

  • period (query) — integer, min 1, max 365

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/analytics/channels

المعاملات

  • period (query) — integer, min 1, max 365

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/otps/recent

المعاملات

  • limit (query) — integer, min 1, max 50

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/otps

المعاملات

  • limit (query) — integer, min 1, max 100
  • before (query) — string
  • status (query) — sent | verified | failed | expired
  • channel (query) — whatsapp | telegram
  • mode (query) — live | test
  • from (query) — string
  • to (query) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/totp/log

المعاملات

  • limit (query) — integer, min 1, max 100
  • before (query) — string
  • status (query) — verified | failed
  • mode (query) — live | test

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/clients/transactions

المعاملات

  • limit (query) — integer, min 1, max 100
  • before (query) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}

تسجيل الدخول (اجتماعي وبريد)

GET/v1/auth/{provider}/start

المعاملات

  • provider (path, مطلوب) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/auth/{provider}/callback

المعاملات

  • provider (path, مطلوب) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/auth/magic-link

جسم الطلب

{
  "type": "object",
  "required": [
    "email"
  ],
  "properties": {
    "email": {
      "type": "string",
      "pattern": "^[a-zA-Z0-9._%+\\-]+@[a-zA-Z0-9.\\-]+\\.[a-zA-Z]{2,}$"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/auth/password/forgot

جسم الطلب

{
  "type": "object",
  "required": [
    "email"
  ],
  "properties": {
    "email": {
      "type": "string",
      "pattern": "^[a-zA-Z0-9._%+\\-]+@[a-zA-Z0-9.\\-]+\\.[a-zA-Z]{2,}$"
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/auth/password/reset

جسم الطلب

{
  "type": "object",
  "required": [
    "token",
    "password"
  ],
  "properties": {
    "token": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256
    },
    "password": {
      "type": "string",
      "minLength": 8
    }
  },
  "additionalProperties": false
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/auth/verify-email

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/auth/verify-email/resend

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}

الفوترة والشحن

POST/v1/billing/topup

جسم الطلب

{
  "type": "object",
  "required": [
    "amount_usd"
  ],
  "additionalProperties": false,
  "properties": {
    "amount_usd": {
      "type": "number",
      "exclusiveMinimum": 0
    }
  }
}

الاستجابات

200

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string"
        },
        "provider_ref": {
          "type": "string"
        },
        "amount_usd": {
          "type": "number"
        },
        "surcharge_usd": {
          "type": "number"
        },
        "charge_usd": {
          "type": "number"
        }
      }
    }
  }
}

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/billing/topup/polar

جسم الطلب

{
  "type": "object",
  "required": [
    "amount_usd"
  ],
  "additionalProperties": false,
  "properties": {
    "amount_usd": {
      "type": "number",
      "exclusiveMinimum": 0
    }
  }
}

الاستجابات

200

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string"
        },
        "provider_ref": {
          "type": "string"
        },
        "amount_usd": {
          "type": "number"
        },
        "surcharge_usd": {
          "type": "number"
        },
        "charge_usd": {
          "type": "number"
        }
      }
    }
  }
}

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/billing/manual-topup

جسم الطلب

{
  "type": "object",
  "required": [
    "amount_usd"
  ],
  "additionalProperties": false,
  "properties": {
    "amount_usd": {
      "type": "number",
      "exclusiveMinimum": 0
    }
  }
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/billing/manual-topup/quote

المعاملات

  • amount_usd (query, مطلوب) — number

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/billing/manual-topup/{id}/cancel

المعاملات

  • id (path, مطلوب) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/billing/manual-topup/{id}/proof-url

المعاملات

  • id (path, مطلوب) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/billing/manual-topup/{id}/submit

المعاملات

  • id (path, مطلوب) — string

جسم الطلب

{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "txn_id": {
      "type": "string",
      "maxLength": 120
    },
    "proof_uploaded": {
      "type": "boolean"
    }
  }
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/billing/manual-topups

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}

Webhooks

GET/v1/webhooks/meta

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/webhooks/meta

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/webhooks/telegram

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/webhooks/payment

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/webhooks/payment/polar

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}

الإدارة

POST/v1/admin/safety-floor-check

المعاملات

  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/admin/webhooks/retry-deliveries

المعاملات

  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/admin/stats

المعاملات

  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/admin/credits/grant

المعاملات

  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

جسم الطلب

{
  "type": "object",
  "required": [
    "amount_usd",
    "reference"
  ],
  "additionalProperties": false,
  "anyOf": [
    {
      "required": [
        "client_id"
      ]
    },
    {
      "required": [
        "email"
      ]
    }
  ],
  "properties": {
    "client_id": {
      "type": "string",
      "minLength": 1
    },
    "email": {
      "type": "string",
      "minLength": 3
    },
    "amount_usd": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 10000
    },
    "reason": {
      "type": "string",
      "maxLength": 200
    },
    "reference": {
      "type": "string",
      "minLength": 8,
      "maxLength": 200
    }
  }
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/admin/reconciliation

المعاملات

  • stale_minutes (query) — integer, min 0, max 10080
  • limit (query) — integer, min 1, max 500
  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/admin/central-waba/killswitch

المعاملات

  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/admin/central-waba/killswitch

المعاملات

  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

جسم الطلب

{
  "type": "object",
  "required": [
    "engaged"
  ],
  "additionalProperties": false,
  "properties": {
    "engaged": {
      "type": "boolean"
    }
  }
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/admin/free-trial/killswitch

المعاملات

  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/admin/free-trial/killswitch

المعاملات

  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

جسم الطلب

{
  "type": "object",
  "required": [
    "engaged"
  ],
  "additionalProperties": false,
  "properties": {
    "engaged": {
      "type": "boolean"
    }
  }
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/admin/playground/killswitch

المعاملات

  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/admin/playground/killswitch

المعاملات

  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

جسم الطلب

{
  "type": "object",
  "required": [
    "engaged"
  ],
  "additionalProperties": false,
  "properties": {
    "engaged": {
      "type": "boolean"
    }
  }
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/v1/admin/manual-topups

المعاملات

  • status (query) — open | pending | submitted | approved | rejected
  • limit (query) — integer, min 1, max 500
  • q (query) — string
  • after_created_at (query) — string
  • after_id (query) — string
  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/admin/manual-topups/{id}/approve

المعاملات

  • id (path, مطلوب) — string
  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

جسم الطلب

{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "reason": {
      "type": "string",
      "maxLength": 500
    }
  }
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
POST/v1/admin/manual-topups/{id}/reject

المعاملات

  • id (path, مطلوب) — string
  • x-admin-secret (header, مطلوب) — string
  • x-admin-actor (header) — string

جسم الطلب

{
  "type": "object",
  "required": [
    "reason"
  ],
  "additionalProperties": false,
  "properties": {
    "reason": {
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    }
  }
}

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}

الحالة

GET/health

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}
GET/health/channels

الاستجابات

200

default — Error response (standard envelope). `code` is a stable machine-readable string — e.g. VALIDATION_ERROR (400), UNAUTHORIZED / INVALID_API_KEY (401), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500); `message` is human-readable.

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string",
          "description": "Stable, machine-readable error code."
        },
        "message": {
          "type": "string",
          "description": "Human-readable description."
        }
      }
    }
  }
}