الوثائق
تاريخ مسار الأدوات
إصدارات مسار الأدوات، والاستعادة، واكتشاف المكتبة، وتعليقات البرنامج المترابطة.
مترجم تلقائيًا من الإنجليزية. عرض الأصل بالإنجليزية
أرسل هذه الطلبات إلى السايدكار الخاصة بك. تبقى القيم في هذا المتصفح.
كيف يعمل هذا
يستمع السايدكار إلى منفذ الاسترجاع الذي تم اختياره عند بدء التشغيل ويطبعه في منفذ الاسترجاع الخاص به ready خط؛ استخدم عنوان URL هذا و CADCAMFUN_TOKEN لقد بدأ مع. تذهب الطلبات مباشرة من هذه الصفحة إلى هذا العنوان.
يرسل السايدكار رؤوس CORS فقط إلى أصول Tauri وإلى http://localhost أو http://127.0.0.1 على أي منفذ. من المستندات المستضافة، يحظر المتصفح الاستجابة، لذا قم بتشغيل المستندات محليًا (bun run dev في packages/web) لاستخدام الملعب، أو نسخ الطلب كحليقة. للتجربة دون لمس البيانات الحقيقية، ابدأ تشغيل السايدكار باستخدام CADCAMFUN_DATA_DIR أشار إلى دليل مهمل - انظر إرشادات واجهة برمجة التطبيقات.
العمليات
8 نقاط نهاية في toolpathExtras المجموعة التي تم إنشاؤها من السايدكار مستند OpenAPI. تأخذ العمليات المحمية Authorization: Bearer $CADCAMFUN_TOKEN; يرى المصادقة. السلوك والحدود موجودة دليل النظام الفرعي.
| يحصل | /api/toolpaths/library | toolpathExtras.library |
| يحصل | /api/toolpaths/{id}/versions | toolpathExtras.listVersions |
| بريد | /api/toolpaths/{id}/versions | toolpathExtras.createVersion |
| بريد | /api/toolpaths/{id}/versions/restore | toolpathExtras.restoreVersion |
| يحصل | /api/toolpaths/{id}/comments | toolpathExtras.listComments |
| بريد | /api/toolpaths/{id}/comments | toolpathExtras.createComment |
| يضع | /api/toolpaths/{id}/comments/{commentId} | toolpathExtras.updateComment |
| يمسح | /api/toolpaths/{id}/comments/{commentId} | toolpathExtras.removeComment |
/api/toolpaths/library
toolpathExtras.library يتطلب Authorization: Bearer <token>.
| اسم | في | يكتب | مطلوب |
|---|---|---|---|
| projectId | استفسار | خيط | مطلوب |
| يكتب | استفسار | خيط | null | خياري |
| operationType | استفسار | خيط | null | خياري |
| فئة | استفسار | خيط | null | خياري |
| يبحث | استفسار | خيط | null | خياري |
200 صفيف <كائن> application/json
Array<{ id: string name: string description: string type: string operationType: string category: string tags: string[] data: unknown gcode: string projectId: string }>
400 BadRequestEncoded application/json
BadRequestEncoded
401 UnauthorizedEncoded application/json
UnauthorizedEncoded
500 InternalErrorEncoded application/json
InternalErrorEncoded
مثال SDK
import { CadCam } from "@cadcamfun/api/sdk"
const client = CadCam.make({
baseUrl: process.env.CADCAMFUN_URL!,
headers: { authorization: `Bearer ${process.env.CADCAMFUN_TOKEN}` },
})
// ToolpathExtrasLibraryInput
const result = await client.toolpathExtras.library({}) curl
curl --request GET "${CADCAMFUN_URL}/api/toolpaths/library?projectId=<projectId>" \
--header "Authorization: Bearer ${CADCAMFUN_TOKEN}" جربه
/api/toolpaths
toolpathExtras.listVersions يتطلب Authorization: Bearer <token>.
| اسم | في | يكتب | مطلوب |
|---|---|---|---|
| بطاقة تعريف | طريق | خيط | مطلوب |
200 صفيف <كائن> application/json
Array<{ id: string toolpathId: string data: unknown gcode: string | null changeMessage: string | null userId: string createdAt: string user: { name: string | null email: string | null } | null }>
400 BadRequestEncoded application/json
BadRequestEncoded
401 UnauthorizedEncoded application/json
UnauthorizedEncoded
404 NotFoundEncoded application/json
NotFoundEncoded
500 InternalErrorEncoded application/json
InternalErrorEncoded
مثال SDK
import { CadCam } from "@cadcamfun/api/sdk"
const client = CadCam.make({
baseUrl: process.env.CADCAMFUN_URL!,
headers: { authorization: `Bearer ${process.env.CADCAMFUN_TOKEN}` },
})
// ToolpathExtrasListVersionsInput
const result = await client.toolpathExtras.listVersions({
id: "<id>"
}) curl
curl --request GET "${CADCAMFUN_URL}/api/toolpaths/<id>/versions" \
--header "Authorization: Bearer ${CADCAMFUN_TOKEN}" جربه
toolpathExtras.createVersion يتطلب Authorization: Bearer <token>.
| اسم | في | يكتب | مطلوب |
|---|---|---|---|
| بطاقة تعريف | طريق | خيط | مطلوب |
{ data?: unknown | null gcode?: string | null changeMessage?: string | null }
201 هدف application/json
{ id: string toolpathId: string data: unknown gcode: string | null changeMessage: string | null userId: string createdAt: string message: string }
400 BadRequestEncoded application/json
BadRequestEncoded
401 UnauthorizedEncoded application/json
UnauthorizedEncoded
404 NotFoundEncoded application/json
NotFoundEncoded
500 InternalErrorEncoded application/json
InternalErrorEncoded
مثال SDK
import { CadCam } from "@cadcamfun/api/sdk"
const client = CadCam.make({
baseUrl: process.env.CADCAMFUN_URL!,
headers: { authorization: `Bearer ${process.env.CADCAMFUN_TOKEN}` },
})
// ToolpathExtrasCreateVersionInput
const result = await client.toolpathExtras.createVersion({
id: "<id>",
data: null,
gcode: "",
changeMessage: ""
}) curl
curl --request POST "${CADCAMFUN_URL}/api/toolpaths/<id>/versions" \
--header "Authorization: Bearer ${CADCAMFUN_TOKEN}" \
--header "Content-Type: application/json" \
--data-binary @request.json جربه
toolpathExtras.restoreVersion يتطلب Authorization: Bearer <token>.
| اسم | في | يكتب | مطلوب |
|---|---|---|---|
| بطاقة تعريف | طريق | خيط | مطلوب |
{ versionId: string }
200 هدف application/json
{ id: string name: string description: string | null data: unknown type: string | null operationType: string | null gcode: string | null thumbnail: string | null isPublic: boolean projectId: string createdAt: string updatedAt: string createdBy: string drawingId: string | null materialId: string | null toolId: string | null machineConfigId: string | null message: string }
400 BadRequestEncoded application/json
BadRequestEncoded
401 UnauthorizedEncoded application/json
UnauthorizedEncoded
403 ForbiddenEncoded application/json
ForbiddenEncoded
404 NotFoundEncoded application/json
NotFoundEncoded
500 InternalErrorEncoded application/json
InternalErrorEncoded
مثال SDK
import { CadCam } from "@cadcamfun/api/sdk"
const client = CadCam.make({
baseUrl: process.env.CADCAMFUN_URL!,
headers: { authorization: `Bearer ${process.env.CADCAMFUN_TOKEN}` },
})
// ToolpathExtrasRestoreVersionInput
const result = await client.toolpathExtras.restoreVersion({
id: "<id>",
versionId: ""
}) curl
curl --request POST "${CADCAMFUN_URL}/api/toolpaths/<id>/versions/restore" \
--header "Authorization: Bearer ${CADCAMFUN_TOKEN}" \
--header "Content-Type: application/json" \
--data-binary @request.json جربه
toolpathExtras.listComments يتطلب Authorization: Bearer <token>.
| اسم | في | يكتب | مطلوب |
|---|---|---|---|
| بطاقة تعريف | طريق | خيط | مطلوب |
200 صفيف <كائن> application/json
Array<{ id: string toolpathId: string content: string userId: string createdAt: string updatedAt: string user: { id: string name: string | null email: string | null image: string | null } | null }>
400 BadRequestEncoded application/json
BadRequestEncoded
401 UnauthorizedEncoded application/json
UnauthorizedEncoded
404 NotFoundEncoded application/json
NotFoundEncoded
500 InternalErrorEncoded application/json
InternalErrorEncoded
مثال SDK
import { CadCam } from "@cadcamfun/api/sdk"
const client = CadCam.make({
baseUrl: process.env.CADCAMFUN_URL!,
headers: { authorization: `Bearer ${process.env.CADCAMFUN_TOKEN}` },
})
// ToolpathExtrasListCommentsInput
const result = await client.toolpathExtras.listComments({
id: "<id>"
}) curl
curl --request GET "${CADCAMFUN_URL}/api/toolpaths/<id>/comments" \
--header "Authorization: Bearer ${CADCAMFUN_TOKEN}" جربه
toolpathExtras.createComment يتطلب Authorization: Bearer <token>.
| اسم | في | يكتب | مطلوب |
|---|---|---|---|
| بطاقة تعريف | طريق | خيط | مطلوب |
{ content: string }
201 هدف application/json
{ id: string toolpathId: string content: string userId: string createdAt: string updatedAt: string user: { id: string name: string | null email: string | null image: string | null } | null }
400 BadRequestEncoded application/json
BadRequestEncoded
401 UnauthorizedEncoded application/json
UnauthorizedEncoded
404 NotFoundEncoded application/json
NotFoundEncoded
500 InternalErrorEncoded application/json
InternalErrorEncoded
مثال SDK
import { CadCam } from "@cadcamfun/api/sdk"
const client = CadCam.make({
baseUrl: process.env.CADCAMFUN_URL!,
headers: { authorization: `Bearer ${process.env.CADCAMFUN_TOKEN}` },
})
// ToolpathExtrasCreateCommentInput
const result = await client.toolpathExtras.createComment({
id: "<id>",
content: ""
}) curl
curl --request POST "${CADCAMFUN_URL}/api/toolpaths/<id>/comments" \
--header "Authorization: Bearer ${CADCAMFUN_TOKEN}" \
--header "Content-Type: application/json" \
--data-binary @request.json جربه
toolpathExtras.updateComment يتطلب Authorization: Bearer <token>.
| اسم | في | يكتب | مطلوب |
|---|---|---|---|
| بطاقة تعريف | طريق | خيط | مطلوب |
| commentId | طريق | خيط | مطلوب |
{ content: string }
200 هدف application/json
{ id: string toolpathId: string content: string userId: string createdAt: string updatedAt: string user: { id: string name: string | null email: string | null image: string | null } | null }
400 BadRequestEncoded application/json
BadRequestEncoded
401 UnauthorizedEncoded application/json
UnauthorizedEncoded
403 ForbiddenEncoded application/json
ForbiddenEncoded
404 NotFoundEncoded application/json
NotFoundEncoded
500 InternalErrorEncoded application/json
InternalErrorEncoded
مثال SDK
import { CadCam } from "@cadcamfun/api/sdk"
const client = CadCam.make({
baseUrl: process.env.CADCAMFUN_URL!,
headers: { authorization: `Bearer ${process.env.CADCAMFUN_TOKEN}` },
})
// ToolpathExtrasUpdateCommentInput
const result = await client.toolpathExtras.updateComment({
id: "<id>",
commentId: "<commentId>",
content: ""
}) curl
curl --request PUT "${CADCAMFUN_URL}/api/toolpaths/<id>/comments/<commentId>" \
--header "Authorization: Bearer ${CADCAMFUN_TOKEN}" \
--header "Content-Type: application/json" \
--data-binary @request.json جربه
toolpathExtras.removeComment يتطلب Authorization: Bearer <token>.
| اسم | في | يكتب | مطلوب |
|---|---|---|---|
| بطاقة تعريف | طريق | خيط | مطلوب |
| commentId | طريق | خيط | مطلوب |
200 هدف application/json
{ message: string }
400 BadRequestEncoded application/json
BadRequestEncoded
401 UnauthorizedEncoded application/json
UnauthorizedEncoded
403 ForbiddenEncoded application/json
ForbiddenEncoded
404 NotFoundEncoded application/json
NotFoundEncoded
500 InternalErrorEncoded application/json
InternalErrorEncoded
مثال SDK
import { CadCam } from "@cadcamfun/api/sdk"
const client = CadCam.make({
baseUrl: process.env.CADCAMFUN_URL!,
headers: { authorization: `Bearer ${process.env.CADCAMFUN_TOKEN}` },
})
// ToolpathExtrasRemoveCommentInput
const result = await client.toolpathExtras.removeComment({
id: "<id>",
commentId: "<commentId>"
}) curl
curl --request DELETE "${CADCAMFUN_URL}/api/toolpaths/<id>/comments/<commentId>" \
--header "Authorization: Bearer ${CADCAMFUN_TOKEN}" جربه
المخططات
يمكن الوصول إلى المخططات المسماة من معلمات هذه المجموعة وأجسامها واستجاباتها. أ ? يمثل حقلاً اختياريًا؛ | null يضع علامة على الحقل الذي قد يكون موجودًا بقيمة فارغة.
BadRequestEncoded{ _tag: "BadRequest" message: string }
ForbiddenEncoded{ _tag: "Forbidden" message: string }
InternalErrorEncoded{ _tag: "InternalError" message: string }
NotFoundEncoded{ _tag: "NotFound" message: string }
استدعاء هذه المجموعة
معرفات العملية لها النموذج toolpathExtras.<name>. وعد SDK الذي تم إنشاؤه (@cadcamfun/api/sdk) يعرض معظمهم client.<namespace>.<method>(input)، أين input هو كائن مسطح واحد من معلمات المسار وحقول النص؛ يُظهر مثال SDK لكل بطاقة الملحق الدقيق ونوع الإدخال. لا يتم إنشاء التحميلات متعددة الأجزاء والاستجابات الثنائية أو استجابات JavaScript وخطافات الويب الأولية؛ تظهر تلك البطاقات fetch بدلاً من ذلك.
import { CadCam, ClientError } from "@cadcamfun/api/sdk"
const client = CadCam.make({
baseUrl: process.env.CADCAMFUN_URL!,
headers: { authorization: `Bearer ${process.env.CADCAMFUN_TOKEN}` },
})
try {
await client.projects.list()
} catch (error) {
if (error instanceof ClientError) {
// Transport | UnexpectedStatus | UnsupportedContentType | MalformedResponse | SseEventTooLarge
} else {
// a declared error body: switch on error._tag
}
} استكشاف الأخطاء وإصلاحها
| أعراض | السبب المحتمل | يصلح |
|---|---|---|
| 401 في كل طلب | رمز مميز من إطلاق سابق، أو مفقود Bearer بادئة | يرسل Authorization: Bearer <token> بالرمز المميز الذي بدأت به السايدكار. |
| 400 قبل أن يحدث أي شيء | النص أو المعلمة لا يتطابقان مع المخطط | قارن الحمولة بمخطط الطلب الموجود على البطاقة. |
| 403 أو 404 لسجل يمكنك رؤيته في مكان آخر | حساب التمثيل يختلف | أرسل الحق x-session-tokenأو استخدم ملف التعريف المحلي الذي يملك السجل. |
| 409 | حالة متعارضة، مثل اسم مكرر أو رأس فرع قديم | أعد قراءة المورد وأعد المحاولة باستخدام البيانات الحالية. |
| جربه يقول "تم حظره بواسطة CORS" | يتم تقديم المستندات من أصل غير استرجاعي | قم بتشغيل المستندات محليًا أو انسخ الطلب كـ curly. |
| رفض اتصال | تم إعادة تشغيل السايدكار في منفذ جديد | قراءة المنفذ من الجديد ready سطر. |