diff --git a/leave-school-vue/src/api/newspublish-api.js b/leave-school-vue/src/api/newspublish-api.js
new file mode 100644
index 0000000..44c7368
--- /dev/null
+++ b/leave-school-vue/src/api/newspublish-api.js
@@ -0,0 +1,40 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+  return request({
+    url: '/api/news/newspublish/list-api',
+    // url: 'http://localhost:8080/leaveschool/api/v1/base/newspublish',
+    method: 'get',
+    params
+  })
+}
+export function getAllList(params) {
+  return request({
+    url: '/api/news/newspublish/all-list',
+    method: 'get',
+    params
+  })
+}
+export function getItem(params) {
+  return request({
+    url: '/api/news/newspublish/get-item',
+    method: 'get',
+    params
+  })
+}
+
+export function createNewspublish(data) {
+  return request({
+    url: '/api/news/newspublish/create-newspublish',
+    method: 'post',
+    data
+  })
+}
+
+export function deleteNewspublish(data) {
+  return request({
+    url: '/api/news/newspublish/delete-newspublish',
+    method: 'delete',
+    data
+  })
+}
