تخطَّ إلى المستندات
خادم MCP

حسابك

مساحات عمل الشخص وبريده وصورته واسم المستخدم وتطبيقاته ودعواته.

أدوات حسابك

الأداةما تفعله
listAccountWorkspacesكل مساحة عمل يستطيع حسابك فتحها، سواء كنت تملكها أو انضممت إليها، مع المساحة التي يفتحها التطبيق لك والمساحة التي تعمل عليها هذه الأدوات.
switchAppWorkspaceيختار مساحة العمل التي يفتحها التطبيق لك. وتبقى هذه الأدوات تعمل على مساحة العمل التي تعمل عليها الآن.
createWorkspaceينشئ مساحة عمل تملكها، على خطة Free، يفتحها التطبيق لك من ذلك الحين. ويمكن للحساب أن يملك مساحة عمل Free واحدة.
deleteWorkspaceيحذف مساحة العمل التي تعمل عليها هذه الأدوات، بكل ما فيها، متى سمّاها confirm. ولا يفعل ذلك إلا مالكها، ولا يكون أبدًا لأول مساحة عمل أنشأها الحساب. وفي دردشة التطبيق يسأل دائمًا أولًا.
getNotificationSettingsأنواع البريد التي يرسلها إليك OpenEmail، ومساحات العمل المكتومة على هاتفك.
setEmailNotificationيشغّل بريد activity أو product أو يوقفه. أما بريد account وbilling فيبقى مشغّلًا دائمًا.
setWorkspacePushMutedيكتم إشعارات الهاتف لمساحة عمل واحدة أو يعيدها.
setProfilePhotoيضبط صورة ملفك الشخصي من صورة بترميز base64.
removeProfilePhotoيزيل صورة ملفك الشخصي. وفي دردشة التطبيق يسأل دائمًا أولًا.
getUsernameاسم المستخدم الخاص بك، وهل اخترته، والعنوان المجاني الذي يمنحك إياه.
checkUsernameهل يمكنك اختيار اسم مستخدم، ولماذا لا إن لم يكن ممكنًا.
chooseUsernameيختار اسم المستخدم الخاص بك نهائيًا، لأنه لا يتغير أبدًا بعد اختياره. وفي دردشة التطبيق يسأل دائمًا أولًا.
listConnectedAppsالتطبيقات التي ربطتها، مع ما يجوز لكل منها بلوغه وحتى متى.
revokeConnectedAppيزيل تطبيقًا مرتبطًا، فيضطر إلى طلب الإذن من جديد. وفي دردشة التطبيق يسأل دائمًا أولًا.
listReceivedInvitationsدعوات الانضمام إلى مساحة عمل التي تنتظرك. أما listInvitations فهي أداة الدعوات التي أرسلتها مساحة عمل.
acceptInvitationينضم إلى مساحة عمل الدعوة، ومع activate يجعلها المساحة التي يفتحها التطبيق.
declineInvitationيرفض دعوة نهائيًا. وفي دردشة التطبيق يسأل دائمًا أولًا.

تعمل هذه الأدوات على الشخص الذي ربط العميل، ولا تعمل أبدًا على غيره، وفي دردشة التطبيق تعمل عليك. تتطلب القراءة account:read ويتطلب كل تغيير account:write، ولا يقيّدهما أي دور، لذا يبلغ العميل الذي ربطه عضو حسابَ ذلك العضو نفسه أيضًا.

ثلاثة أمور تبقى في التطبيق: تغيير ما يجوز لتطبيق مرتبط بلوغه، والسماح له بإجراء تغييرات دون رمز تحقق، وحذف الحساب كله.

لا تنقل أدوات مساحات العمل الأدوات الأخرى أبدًا: يغيّر switchAppWorkspace ما يفتحه التطبيق، ويغيّر setActiveConnection ما تعمل عليه الأدوات.

بعض الأدوات على هذا الخادم تُجري تغييرًا تحميه REST API برمز تحقق، وتطلب الرمز نفسه. ما لم يتحقق العميل من رمز خلال آخر 60 دقيقة، أو يختر الشخص له «السماح بالتغييرات لمدة 60 دقيقة» في الحساب → التطبيقات المرتبطة، تردّ هذه الأداة بنتيجة تبدأ بـ Refused (step_up_required): ولا تغيّر شيئًا. أما emptyAudience فلا يطلب رمزًا أبدًا. صفحة المصادقة في API تسرد كل أداة تطلب رمزًا، وتشرح كيف يُطلب رمز وكيف يُتحقق منه.

المرجع

listAccountWorkspaces

الصلاحياتaccount:readينفّذه مساعد التطبيق دون أن يسألمجموعة الأدواتaccount

Every workspace your OpenEmail account can open, the ones you own and the ones you joined, as the workspace switcher of the app lists them, with the one the app opens for you. It is about your account, not this connection: getConnections lists what these tools can act on, and switchAppWorkspace changes only what the app opens, never what these tools act on.

المدخلات

لا يأخذ أي مدخلات.

متاح أيضًا في

API
GET /workspacesGET /workspaces/active
SDK
workspaces.list()workspaces.getActive()

switchAppWorkspace

الصلاحياتaccount:writeيسأل مساعد التطبيق أولًا ما لم تكن قد طلبت ذلكمجموعة الأدواتaccount

Choose which workspace the OpenEmail app opens for you, as the workspace switcher does. Pass a workspace id from listAccountWorkspaces. It changes the app only: these tools keep acting on the workspace they act on now.

المدخلات

workspaceIdstringمطلوب
من 1 إلى 128 من الأحرف

متاح أيضًا في

API
PUT /workspaces/active
SDK
workspaces.setActive()

createWorkspace

الصلاحياتaccount:writeيسأل مساعد التطبيق أولًا ما لم تكن قد طلبت ذلكمجموعة الأدواتaccount

Create a new workspace that you own, on the Free plan, and make it the one the app opens for you, as creating one in the app does. An account can own one Free workspace, so while you own one this is refused until you upgrade it.

المدخلات

namestringمطلوب
من 1 إلى 64 من الأحرف

متاح أيضًا في

API
POST /workspaces
SDK
workspaces.create()

deleteWorkspace

الصلاحياتaccount:writeيسأل مساعد التطبيق دائمًا أولًامجموعة الأدواتaccount

Delete the workspace these tools act on, with its domains, addresses, mail and members, and cancel its plan. It cannot be undone. Only its owner may do it, never through an app limited to some addresses, and your first workspace can never be deleted. confirm has to be the name of the workspace, as listAccountWorkspaces shows it.

المدخلات

confirmstringمطلوب

The name of the workspace being deleted, typed out.

من 1 إلى 256 من الأحرف

متاح أيضًا في

API
DELETE /workspaces/{id}
SDK
workspaces.delete()

getNotificationSettings

الصلاحياتaccount:readينفّذه مساعد التطبيق دون أن يسألمجموعة الأدواتaccount

Which kinds of email OpenEmail sends you, as Account, Notifications shows them, and the workspaces whose notifications are muted on your phone. Account and billing email are always on.

المدخلات

لا يأخذ أي مدخلات.

متاح أيضًا في

API
GET /account/notifications
SDK
account.getNotifications()

setEmailNotification

الصلاحياتaccount:writeيسأل مساعد التطبيق أولًا ما لم تكن قد طلبت ذلكمجموعة الأدواتaccount

Turn one kind of email from OpenEmail on or off for you. activity and product can be turned off; account and billing cannot.

المدخلات

categorystringمطلوب
أحد"account""billing""activity""product"
enabledbooleanمطلوب

متاح أيضًا في

API
PUT /account/notifications/email/{category}
SDK
account.setEmailNotification()

setWorkspacePushMuted

الصلاحياتaccount:writeيسأل مساعد التطبيق أولًا ما لم تكن قد طلبت ذلكمجموعة الأدواتaccount

Mute or unmute the notifications of one workspace on your phone, on every phone you signed in on. Pass a workspace id from listAccountWorkspaces.

المدخلات

workspaceIdstringمطلوب
من 1 إلى 128 من الأحرف
mutedbooleanمطلوب

متاح أيضًا في

API
PUT /account/notifications/push/{workspaceId}
SDK
account.setPushMuted()

setProfilePhoto

الصلاحياتaccount:writeيسأل مساعد التطبيق أولًا ما لم تكن قد طلبت ذلكمجموعة الأدواتaccount

Set your profile photo, replacing any there was, as Account, Profile does. Pass the picture in base64 as image, with its type as contentType: image/png, image/jpeg, image/webp, image/gif, up to 5 MB. It is fitted into a 512 pixel square.

المدخلات

imagestringمطلوب

The image in base64, or as a data: URL.

من 1 إلى 7340032 من الأحرف
contentTypestringمطلوب

The type of the image: image/png, image/jpeg, image/webp, image/gif.

من 1 إلى 100 من الأحرف

متاح أيضًا في

API
PUT /account/photo
SDK
account.setPhoto()

removeProfilePhoto

الصلاحياتaccount:writeيسأل مساعد التطبيق دائمًا أولًامجموعة الأدواتaccount

Remove your profile photo and delete the stored image, so the app shows your initials again. Removing it when there is none changes nothing.

المدخلات

لا يأخذ أي مدخلات.

متاح أيضًا في

API
DELETE /account/photo
SDK
account.removePhoto()

getUsername

الصلاحياتaccount:readينفّذه مساعد التطبيق دون أن يسألمجموعة الأدواتaccount

Your OpenEmail username, whether you chose it or it was made for you, and the free address it gives you. A username you chose never changes.

المدخلات

لا يأخذ أي مدخلات.

متاح أيضًا في

API
GET /account/username
SDK
account.getUsername()

checkUsername

الصلاحياتaccount:readينفّذه مساعد التطبيق دون أن يسألمجموعة الأدواتaccount

Whether you could choose a username, without choosing it, and why not when you could not. It is lowercased and its spaces become dots before it is checked.

المدخلات

usernamestringمطلوب
من 1 إلى 60 من الأحرف

متاح أيضًا في

API
GET /account/username/availability
SDK
account.checkUsername()

chooseUsername

الصلاحياتaccount:writeيسأل مساعد التطبيق دائمًا أولًامجموعة الأدواتaccount

Choose your username, and with it your free address, for good. Once chosen it never changes, so check it with checkUsername first and make sure it is the one you want.

المدخلات

usernamestringمطلوب
من 1 إلى 60 من الأحرف

متاح أيضًا في

API
PUT /account/username
SDK
account.setUsername()

listConnectedApps

الصلاحياتaccount:readينفّذه مساعد التطبيق دون أن يسألمجموعة الأدواتaccount

Every app you connected to your account with OAuth, as Account, Connected apps lists them: what each may reach, until when, and its client id, which revokeConnectedApp takes. What an app may reach is changed in the app, never from here.

المدخلات

لا يأخذ أي مدخلات.

متاح أيضًا في

API
GET /account/connected-apps
SDK
account.listConnectedApps()

revokeConnectedApp

الصلاحياتaccount:writeيسأل مساعد التطبيق دائمًا أولًامجموعة الأدواتaccount

Remove an app you connected: every token it holds and the access you gave it are deleted, so its next call is refused and it has to ask again. Pass its client id from listConnectedApps. Removing the app you are talking through disconnects it.

المدخلات

clientIdstringمطلوب
من 1 إلى 128 من الأحرف

متاح أيضًا في

API
DELETE /account/connected-apps/{clientId}
SDK
account.revokeConnectedApp()

listReceivedInvitations

الصلاحياتaccount:readينفّذه مساعد التطبيق دون أن يسألمجموعة الأدواتaccount

The invitations to join a workspace that are waiting for you, oldest first, each with the id acceptInvitation and declineInvitation take. It is not listInvitations, which lists the invitations this workspace sent.

المدخلات

لا يأخذ أي مدخلات.

متاح أيضًا في

API
GET /account/invitations
SDK
account.listInvitations()

acceptInvitation

الصلاحياتaccount:writeيسأل مساعد التطبيق أولًا ما لم تكن قد طلبت ذلكمجموعة الأدواتaccount

Accept an invitation that is waiting for you and join its workspace with the role and the addresses it gives. activate also makes it the workspace the app opens for you. A workspace that asks for two-factor sign-in is refused until you turn it on.

المدخلات

invitationIdstringمطلوب
من 1 إلى 128 من الأحرف
activateboolean

متاح أيضًا في

API
POST /account/invitations/{invitationId}/accept
SDK
account.acceptInvitation()

declineInvitation

الصلاحياتaccount:writeيسأل مساعد التطبيق دائمًا أولًامجموعة الأدواتaccount

Decline an invitation that is waiting for you. Its link stops working and whoever sent it is told. It cannot be taken back: they would have to invite you again.

المدخلات

invitationIdstringمطلوب
من 1 إلى 128 من الأحرف

متاح أيضًا في

API
POST /account/invitations/{invitationId}/decline
SDK
account.declineInvitation()