Phần cài đặt Nhà phát triển là nơi bạn kết nối Exayard với mã nguồn của riêng mình và với các ứng dụng do công ty khác xây dựng. Mở Cài đặt rồi chọn Nhà phát triển. Chỉ quản trị viên công ty mới thấy mục này trong menu Cài đặt. Thành viên mở trang này có thể xem nhưng không thể thay đổi gì.
Ứng dụng, khóa API, webhook và nhật ký có sẵn trong mọi gói, kể cả gói Free. Chỉ công việc AI mới bị tính phí.
Ứng dụng
Ứng dụng là một tích hợp của bạn, ví dụ "Acme estimator" hoặc "Nightly sync". Mỗi khóa API thuộc về một ứng dụng. Ứng dụng là phần đầu tiên trên trang. Mọi thành viên đều có thể xem phần này. Chỉ quản trị viên mới có thể tạo hoặc thay đổi ứng dụng.
Nhấp vào Ứng dụng mới rồi điền Tên, Mô tả, Trang chủ, Email hỗ trợ và Phạm vi quyền. Phạm vi quyền được chia thành quyền đọc và quyền ghi cho từng tài nguyên, ví dụ read:projects và write:estimates. Ứng dụng không thể yêu cầu phạm vi admin:org. Mỗi công ty có thể có tối đa 25 ứng dụng.
Mỗi ứng dụng hiển thị thời điểm được tạo và giới hạn tốc độ, ví dụ "Tối đa 60 yêu cầu mỗi phút cho mỗi công ty và tổng cộng 600". Menu Thao tác khác của ứng dụng gồm:
Chỉnh sửa thay đổi thông tin chi tiết và phạm vi quyền của ứng dụng.
Webhook đặt một địa chỉ duy nhất nhận sự kiện từ mọi công ty đã cài đặt ứng dụng.
Xóa ứng dụng xóa ứng dụng và thu hồi mọi khóa của ứng dụng. Mọi công ty đã cài đặt ứng dụng sẽ mất quyền truy cập.
Khóa API
Khóa API cho phép mã nguồn của bạn gọi Exayard API. Khóa nằm bên trong một ứng dụng, trong mục Khóa. Mỗi khóa hoạt động trong chính công ty của ứng dụng đó, vì vậy bạn không cần truyền ID công ty.
Để tạo khóa, nhấp vào Khóa mới trong ứng dụng. Đặt Tên cho khóa, ví dụ "Production". Trong Phạm vi quyền, chọn Tất cả để dùng mọi phạm vi quyền mà ứng dụng có, hoặc Cụ thể để chọn ít hơn. Bạn có thể đặt ngày Hết hạn (không bắt buộc) nếu khóa chỉ dùng cho công việc ngắn hạn. Khóa hoạt động đến hết ngày đó. Nhấp vào Tạo.
Exayard chỉ hiển thị khóa đầy đủ một lần. Hãy sao chép khóa ngay lúc đó, vì khóa sẽ không bao giờ được hiển thị lại. Exayard chỉ lưu một bản đã mã hóa, nên khóa bị mất không thể khôi phục. Hãy tạo khóa mới và thu hồi khóa cũ.
Khóa bắt đầu bằng exa_live_. Khóa được tạo trong sandbox bắt đầu bằng exa_test_. Sau khi bạn tạo, khóa hiển thị tên, bản xem trước như exa_live_...AbCd và Lần dùng gần nhất hoặc Chưa dùng lần nào. Khóa có thời hạn hiển thị Hết hạn kèm ngày hết hạn, và khóa đã hết hạn hiển thị Đã hết hạn.
Mỗi ứng dụng có thể có tối đa 25 khóa đang hoạt động. Khóa đã hết hạn vẫn được tính cho đến khi bạn thu hồi. Để đổi khóa mà không bị gián đoạn, hãy tạo khóa thứ hai, chuyển máy chủ của bạn sang khóa đó, rồi thu hồi khóa đầu tiên.
Mở menu Thao tác với khóa của một khóa để Đổi tên hoặc Thu hồi khóa. Việc thu hồi không thể hoàn tác và khóa sẽ ngừng hoạt động trong vòng 30 giây.
Nếu một khóa xuất hiện ở nơi công khai, chẳng hạn như một kho mã nguồn công khai, Exayard sẽ thu hồi khóa đó, gửi email cho các quản trị viên của bạn và giữ khóa trong danh sách với nhãn Bị lộ công khai, đã thu hồi.
Khi một công ty khác đã cài đặt ứng dụng của bạn, hộp thoại tạo khóa mới cũng hiển thị Dùng được tại. Công ty này là lựa chọn mặc định. Mọi công ty đã cài đặt ứng dụng này tạo một khóa mà máy chủ của bạn dùng trong từng công ty đó. Khi đó, mỗi lệnh gọi ghi rõ công ty của nó trong header Exayard-Organization-Id.
Cùng các khóa này cũng dùng để kết nối các công cụ không cần lập trình. Xem Kết nối Exayard với Zapier, Kết nối Exayard với Make và Kết nối Exayard với n8n. Đối với trợ lý AI, xem Kết nối Exa với trợ lý AI của bạn.
Khóa cũ
Các khóa được tạo trước khi khóa nằm trong ứng dụng bắt đầu bằng ak_. Các khóa này vẫn hoạt động, nhưng không thể tạo thêm khóa mới loại này. Chúng xuất hiện trong mục Khóa cũ ở cuối trang, chỉ khi vẫn còn khóa loại này.
Mọi quản trị viên đều thấy tất cả khóa của công ty tại đó, bất kể ai đã tạo. Khóa do người khác tạo hiển thị Người tạo kèm tên người đó. Mỗi người cũng thấy các khóa cá nhân của riêng mình. Nhấp vào biểu tượng thùng rác để Thu hồi khóa. Khóa ngừng hoạt động ngay lập tức.
Sandbox
Sandbox là một công ty thử nghiệm được liên kết với công ty của bạn. Hãy dùng sandbox để xây dựng và thử nghiệm tích hợp mà không ảnh hưởng đến các dự án thật. Chỉ quản trị viên mới thấy mục Sandbox.
Nhấp vào Sandbox mới, đặt Tên rồi nhấp vào Tạo. Mỗi công ty có thể có tối đa 5 sandbox. Mở sẽ chuyển bạn vào sandbox, nơi trình chuyển đổi công ty đánh dấu sandbox là Sandbox. Tạo ứng dụng và khóa tại đó như bình thường. Khóa của sandbox bắt đầu bằng exa_test_. Để chạy thật, hãy tạo cùng ứng dụng và khóa trong công ty thật của bạn rồi thay khóa trong mã nguồn.
Sandbox dùng gói của công ty bạn, và công ty bạn thanh toán cho mức sử dụng của sandbox. Sandbox không có phần thanh toán riêng và không nhận mức sử dụng AI hằng tháng riêng. Webhook và tích hợp hoạt động giống như trong công ty thật của bạn.
Sandbox không gửi email chia sẻ hồ sơ chào giá hoặc bản đã ký cho người bên ngoài sandbox, và không gửi tin nhắn SMS. Các mục này hiển thị "Chưa gửi vì công ty này là sandbox". Lời mời tham gia sandbox vẫn được gửi như bình thường.
Bóc tách khối lượng và đọc tệp trong sandbox trả về kết quả được sao chép từ dự án mẫu của chúng tôi, miễn phí. Bản bóc tách khối lượng, các trang của bản bóc tách đó và webhook báo bóc tách khối lượng hoàn tất đều được đánh dấu là mẫu. Dự toán, hồ sơ dự thầu, tìm kiếm cấu kiện và trò chuyện cũng trả lời bằng dữ liệu mẫu, miễn phí.
Để xóa một sandbox, nhấp vào Xóa trên dòng của sandbox đó, rồi nhấp vào Xóa sandbox. Sandbox sẽ bị đóng, các khóa của sandbox ngừng hoạt động và dữ liệu của sandbox sẽ bị xóa sau đó.
Webhook
Webhook yêu cầu Exayard thông báo cho máy chủ của bạn khi có sự kiện xảy ra trong công ty. Mọi thành viên đều có thể xem danh sách. Chỉ quản trị viên mới có thể thêm hoặc thay đổi webhook.
Nhấp vào Tạo webhook, nhập URL sẽ nhận các lần gửi và thêm Mô tả (không bắt buộc). Chọn các Sự kiện cần gửi. Chọn Tất cả để nhận mọi sự kiện, kể cả sự kiện mới, hoặc Cụ thể để chọn từ danh sách. Mọi sự kiện và nội dung của chúng được liệt kê trong danh mục sự kiện webhook.
Khi bạn tạo webhook, Exayard hiển thị Khóa bí mật ký một lần. Hãy sao chép ngay lúc đó, vì khóa này sẽ không được hiển thị lại.
Mở menu Thao tác khác của webhook để dùng các tùy chọn còn lại:
Chỉnh sửa thay đổi URL, mô tả và sự kiện, đồng thời đặt Trạng thái thành Đang hoạt động hoặc Đã tạm dừng. Webhook bị tạm dừng sẽ không nhận lần gửi nào. Hộp thoại này cũng có Thay mới khóa bí mật. Khóa bí mật cũ ngừng hoạt động ngay lập tức, vì vậy hãy cập nhật máy chủ của bạn trước.
Gửi sự kiện thử nghiệm gửi một sự kiện thuộc Loại sự kiện bạn chọn. Hộp thoại chờ phản hồi từ máy chủ của bạn và hiển thị kết quả cùng mã phản hồi. Sự kiện thử nghiệm mang
"test": true.Lượt gửi liệt kê 25 lần gửi gần nhất kèm sự kiện, trạng thái, mã phản hồi và số lần thử. Một lần gửi có trạng thái Đang chờ, Đang thử lại, Đã gửi thành công hoặc Thất bại. Quản trị viên có thể nhấp vào Gửi lại để gửi lại một lần gửi.
Xóa webhook chấm dứt mọi lần gửi đến URL đó.
Sự kiện thử nghiệm và lần gửi lại chỉ được gửi một lần và không bao giờ được thử lại.
Bảo mật các lần gửi webhook
Mỗi lần gửi đều kèm header Exayard-Signature theo dạng t=<unix>,v1=<digest>. Exayard tạo chữ ký bằng cách ghép dấu thời gian với phần thân yêu cầu, sau đó ký bằng HMAC-SHA256 với khóa bí mật của webhook.
Mỗi lần gửi cũng kèm các header Exayard-Event-Id, Exayard-Event-Type và Exayard-Organization-Id. Phần thân JSON có trường organizationId cho biết sự kiện đến từ công ty nào. Header mang cùng ID đó, nên bạn có thể định tuyến một lần gửi trước khi đọc phần thân. Chữ ký bao phủ toàn bộ phần thân, bao gồm cả organizationId.
Vì mỗi lần gửi đều cho biết công ty nguồn, một địa chỉ nhận có thể phục vụ nhiều công ty. Hãy đăng ký cùng một URL trong từng công ty và định tuyến mỗi lần gửi theo organizationId. Mỗi webhook có khóa bí mật riêng, vì vậy hãy chọn khóa bí mật theo Exayard-Organization-Id trước khi xác minh.
Để xác minh một lần gửi, hãy tính lại chữ ký bằng khóa bí mật của bạn, xác nhận dấu thời gian nằm trong khoảng năm phút so với thời điểm hiện tại, rồi so sánh các giá trị digest.
Một lần gửi thất bại sẽ được thử tổng cộng tối đa 10 lần, trong khoảng 80 giờ, với thời gian chờ giữa các lần thử tăng dần. Mỗi lần thử đều gửi cùng phần thân và cùng ID sự kiện. Chuyển hướng được tính là thất bại.
Cho phép công ty khác cài đặt ứng dụng của bạn
Ứng dụng của bạn hoạt động trong công ty của bạn ngay khi bạn tạo. Mỗi ứng dụng cũng có phần Cho phép công ty khác cài đặt ứng dụng này. Phần này hiển thị ứng dụng ở trạng thái Đã xét duyệt, Đã yêu cầu xét duyệt hay Chưa xét duyệt, cùng Địa chỉ đăng nhập, Client ID và số công ty có thể cài đặt ứng dụng.
Quản trị viên mở menu Thao tác cài đặt để dùng các tùy chọn sau:
Chỉnh sửa địa chỉ đăng nhập đặt các địa chỉ mà Exayard đưa người dùng quay về khi ứng dụng của bạn cho họ đăng nhập bằng tài khoản Exayard. Nhập mỗi địa chỉ trên một dòng, tối đa 10 địa chỉ. Mỗi địa chỉ phải bắt đầu bằng
https://, hoặchttp://localhosttrong lúc bạn thử nghiệm. Lần đầu tiên bạn lưu địa chỉ đăng nhập, Exayard hiển thị Khóa bí mật client của ứng dụng một lần.Sao chép liên kết cài đặt sao chép một liên kết mà bạn có thể gửi cho bất kỳ công ty nào. Liên kết này mở hộp thoại cài đặt cho quản trị viên của công ty đó.
Yêu cầu xét duyệt gửi ứng dụng đến bộ phận hỗ trợ của Exayard để xét duyệt.
Ứng dụng mới có thể được cài đặt tại tối đa 25 công ty ngoài công ty của bạn và không xuất hiện trong Tìm ứng dụng. Các công ty trong Tài khoản cho khách hàng của bạn không được tính vào giới hạn đó. Sau khi được phê duyệt, ứng dụng hiển thị Đã xét duyệt và giới hạn cài đặt được gỡ bỏ. Dùng Hiển thị trong Tìm ứng dụng để đưa ứng dụng vào danh mục của mọi công ty, hoặc Ẩn khỏi Tìm ứng dụng để gỡ ứng dụng khỏi danh mục. Ứng dụng Đã tạm ngưng không thể gọi Exayard cho đến khi bộ phận hỗ trợ dỡ bỏ việc tạm ngưng, và các lượt cài đặt của ứng dụng vẫn được giữ nguyên.
Khi bạn bỏ bớt phạm vi quyền của một ứng dụng, mọi lượt cài đặt sẽ mất các phạm vi đó ngay lập tức. Khi bạn thêm phạm vi quyền, mỗi công ty vẫn giữ quyền truy cập hiện tại cho đến khi một quản trị viên của công ty đó phê duyệt các phạm vi mới.
Webhook của ứng dụng
Mở menu Thao tác khác của ứng dụng rồi nhấp vào Webhook. Nhập URL rồi nhấp vào Tạo, sau đó sao chép Khóa bí mật ký mà Exayard chỉ hiển thị một lần. Mỗi công ty đã cài đặt ứng dụng sẽ gửi các sự kiện thuộc phạm vi quyền mà công ty đó đã cấp. Ứng dụng của bạn cũng nhận app.installed, app.scopes_approved và app.uninstalled khi một công ty cài đặt ứng dụng, phê duyệt quyền truy cập rộng hơn hoặc gỡ ứng dụng. Các lần gửi đều cho biết công ty nguồn và được ký theo cùng cách như các webhook khác.
Cùng hộp thoại này cho phép bạn Tạm dừng và Tiếp tục các lần gửi, Thay mới khóa bí mật và Xóa webhook.
Ứng dụng đã kết nối
Ứng dụng đã kết nối liệt kê các ứng dụng đã được cài đặt trong công ty của bạn. Mọi thành viên đều có thể xem mục này. Chỉ quản trị viên mới có thể cài đặt, gỡ hoặc phê duyệt.
Mỗi dòng hiển thị tên ứng dụng, ứng dụng có Đã xét duyệt hay không, công ty đã xây dựng ứng dụng, người cài đặt và thời điểm cài đặt, cùng các phạm vi quyền đã được cấp.
Cài đặt ứng dụng
Mở liên kết cài đặt của ứng dụng, hoặc nhấp vào Cài đặt bên cạnh ứng dụng trong Tìm ứng dụng. Hộp thoại hiển thị ai đã xây dựng ứng dụng, ứng dụng đã được xét duyệt hay chưa và các phạm vi quyền mà ứng dụng yêu cầu. Sau đó chọn:
Công ty: bất kỳ công ty nào mà bạn là quản trị viên. Công ty đã có ứng dụng sẽ được đánh dấu (đã cài đặt). Cài đặt lại sẽ lưu các lựa chọn mới của bạn.
Dự án: Tất cả dự án, hoặc Chỉ các dự án này rồi đánh dấu các dự án mà ứng dụng được phép truy cập, tối đa 500 dự án. Ứng dụng không thể truy cập bất kỳ dự án nào khác trong công ty.
Hạn mức AI hằng tháng: số tiền tối đa mà công việc AI của ứng dụng có thể tiêu tốn của công ty bạn trong mỗi tháng thanh toán, tính theo đơn vị tiền tệ thanh toán của bạn. Để trống để chọn Không giới hạn.
Nhấp vào Cài đặt. Nếu ứng dụng cho bạn đăng nhập, Exayard sẽ đưa bạn tiếp tục hoàn tất việc đăng nhập vào ứng dụng. Nếu bạn là thành viên nhưng không phải quản trị viên, hộp thoại sẽ cho biết quản trị viên của công ty nào có thể cài đặt ứng dụng. Nhấp vào Sao chép liên kết để gửi liên kết cho họ.
Để thay đổi dự án sau này, hãy mở lại liên kết cài đặt và cài đặt với lựa chọn mới.
Phê duyệt thêm quyền truy cập
Khi một ứng dụng yêu cầu thêm phạm vi quyền, dòng của ứng dụng đó hiển thị Yêu cầu thêm quyền truy cập kèm các phạm vi mới. Quản trị viên nhấp vào Phê duyệt để cấp các phạm vi đó. Cho đến lúc đó, ứng dụng vẫn giữ quyền truy cập đã có.
Gỡ ứng dụng
Mở menu Thao tác khác của ứng dụng, nhấp vào Gỡ rồi xác nhận. Ứng dụng mất quyền truy cập vào công ty của bạn ngay lập tức và các webhook của ứng dụng ngừng hoạt động. Công việc AI mà ứng dụng đã bắt đầu vẫn sẽ hoàn tất.
Tìm ứng dụng
Tìm ứng dụng xuất hiện bên trong Ứng dụng đã kết nối. Mục này liệt kê các ứng dụng đã được xét duyệt mà bên xây dựng đã chọn đưa vào danh sách. Ứng dụng mà công ty bạn đã có sẽ hiển thị Đã cài đặt. Nhấp vào Cài đặt trên bất kỳ ứng dụng nào khác để mở hộp thoại cài đặt.
Kết nối cá nhân của bạn
Kết nối cá nhân của bạn liệt kê các công cụ AI và ứng dụng khác mà bạn đã kết nối với tài khoản Exayard của riêng mình, như ChatGPT hoặc Claude. Mục này xuất hiện ở đầu Ứng dụng đã kết nối và chỉ bạn mới thấy các kết nối của mình. Kết nối cá nhân hoạt động dưới danh nghĩa của bạn, vì vậy nó có thể truy cập mọi thứ mà bạn truy cập được.
Mỗi kết nối hiển thị thời điểm được dùng lần đầu và lần gần nhất, cùng các công ty mà kết nối đã được dùng. Để ngừng một kết nối, mở menu Thao tác khác của kết nối đó, nhấp vào Gỡ rồi xác nhận. Lệnh gọi tiếp theo của kết nối sẽ bị từ chối. Kết nối vẫn nằm trong danh sách với nhãn Đã gỡ, và Cho phép lại sẽ cho kết nối hoạt động trở lại. Để kết nối một công cụ mới, xem Kết nối Exa với trợ lý AI của bạn.
Tài khoản cho khách hàng của bạn
Ứng dụng của bạn có thể tạo công ty Exayard thông qua API cho những khách hàng chỉ dùng Exayard qua sản phẩm của bạn. Công ty của bạn sở hữu các công ty này và thanh toán cho công việc AI chạy trong đó. Các công ty này không có thành viên riêng, và các ứng dụng của bạn được tự động cài đặt trong đó.
Tài khoản cho khách hàng của bạn liệt kê các công ty này cho quản trị viên, kèm Tên của từng công ty và ngày tạo trong cột Ngày tạo. Nhấp vào Đóng công ty rồi xác nhận để đóng một công ty. Mọi ứng dụng trong công ty đó sẽ mất quyền truy cập.
Bắt đầu
Thẻ Bắt đầu nhanh chứa một prompt soạn sẵn dành cho trình soạn thảo AI như Claude hoặc Cursor. Nhấp vào Sao chép prompt rồi dán vào trình soạn thảo của bạn. Prompt bao gồm URL cơ sở của API, định dạng xác thực, các phạm vi quyền và cơ chế ký webhook, nhờ đó AI có thể xây dựng một tích hợp hoạt động được và hỏi bạn những thông tin chi tiết cần thiết. Chỉ quản trị viên mới thấy thẻ này, vì thẻ cần đến khóa API.
Thẻ Tài liệu liên kết đến bộ tài liệu đầy đủ dành cho nhà phát triển qua Mở tài liệu, và đến Đặc tả OpenAPI, mô tả mọi route và schema. Quản trị viên còn thấy Kết nối với Claude hoặc Cursor, mở phần thiết lập để kết nối trợ lý AI với Exayard.
Nhật ký
Nhật ký hiển thị các yêu cầu gửi đến API, mới nhất ở trên cùng. Mỗi dòng hiển thị Phương thức, Đường dẫn, Trạng thái, Thời gian và Độ trễ. Nhấp vào Tải thêm ở cuối danh sách để xem các yêu cầu cũ hơn.
Quản trị viên thấy mọi yêu cầu. Thành viên chỉ thấy các yêu cầu không đi qua ứng dụng.
Quản trị viên có thể lọc theo Ứng dụng, sau đó theo một khóa của ứng dụng đó. Bất kỳ ai cũng có thể nhập Người dùng cuối để chỉ xem các yêu cầu của khách hàng đó. Người dùng cuối là ID do bạn đặt cho một khách hàng của mình. Mã nguồn của bạn gửi ID này kèm mỗi yêu cầu trong header Exayard-End-User. Không bao giờ dùng địa chỉ email làm ID.
Chọn một dòng để xem chi tiết đầy đủ, bao gồm ID yêu cầu, ứng dụng và người dùng cuối, cùng Nội dung yêu cầu và Nội dung phản hồi. Hãy dùng nhật ký để xác nhận một lệnh gọi đã thành công hoặc để tìm hiểu vì sao một tích hợp gặp sự cố.
Chi tiêu theo khóa và người dùng cuối
Quản trị viên thấy số tiền mỗi ứng dụng đã chi trong tháng này tại Chi tiêu theo ứng dụng trong Cài đặt rồi Mức sử dụng. Các ứng dụng của chính bạn cũng được liệt kê tại đó. Dưới mỗi ứng dụng, Theo khóa hiển thị số tiền mỗi khóa đã chi, và Người dùng cuối hàng đầu hiển thị năm người dùng cuối chi nhiều nhất. Chi tiêu không gắn với một khóa nào của ứng dụng sẽ hiển thị là Khác.
Hạn mức AI hằng tháng
Hạn mức AI hằng tháng của một ứng dụng là số tiền tối đa mà công việc AI của ứng dụng có thể tiêu tốn của công ty bạn trong mỗi tháng thanh toán. Để đặt hạn mức, mở menu Thao tác khác của ứng dụng trong Chi tiêu theo ứng dụng rồi nhấp vào Đặt hạn mức AI hằng tháng. Nhập số tiền theo đơn vị tiền tệ thanh toán của bạn rồi nhấp vào Lưu. Lưu với trường để trống để xóa hạn mức.
Khi ứng dụng đạt đến hạn mức, công việc AI của ứng dụng sẽ bị từ chối trong phần còn lại của tháng thanh toán, kể cả khi công ty bạn vẫn còn mức sử dụng AI. Các hạn mức riêng của công ty bạn vẫn được áp dụng. Công việc AI do chính người dùng khởi chạy không bao giờ được tính vào hạn mức của ứng dụng.
