circle-info
Se ha lanzado la versión 1.1.2

REST API para M&S CRM

API REST sobre HTTPS con JSON. Métodos HTTP y códigos de estado estándar. Token por instalación.

Introducción

La API de M&S opera sobre HTTPS y utiliza JSON como formato de datos. Es una API RESTful y emplea métodos y códigos de estado HTTP para expresar solicitudes y respuestas. Un token se vincula a una instalación completa de M&S. Para interactuar con otra instalación diferente, debes crear un token en esa instalación.

Autenticación

Usa el authtoken en el encabezado de cada solicitud.

circle-info

Header: authtoken: TU_TOKEN

Para operaciones POST/PUT se utiliza multipart/form-data.

circle-exclamation

Ejemplo de uso

Escenario: Con token jEheVytlAoFl7F8MqUQ7jAo2hOXAS, listar tickets:

curl -H "authtoken: jEheVytlAoFl7F8MqUQ7jAo2hOXAS" \
"https://crm.myscreators.com/index.php/api/tickets"

Crear cliente

post

Crea un cliente nuevo. (En tu doc se muestra respuesta “Client add successful.”)

Autorizaciones
authtokenstringRequerido
Cuerpo
company_namestringRequerido
addressstringOpcional
phonestringOpcional
websitestringOpcional
Respuestas
chevron-right
200

Client add successful

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
post
/clients
200

Client add successful

Obtener cliente por ID

get
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
idintegerRequerido
Respuestas
chevron-right
200

Cliente

application/json
idintegerOpcionalExample: 2
company_namestringOpcionalExample: jdoe
addressstringOpcionalExample: Rajkot
created_datestring · dateOpcional
is_leadstringOpcionalExample: 0
lead_status_idstringOpcionalExample: 1
owner_idstringOpcionalExample: 1
primary_contactstringOpcionalExample: john doe
total_projectsstringOpcionalExample: 7
get
/clients/{id}
200

Cliente

Eliminar cliente

delete
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
idintegerRequerido
Respuestas
chevron-right
200

Eliminado

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
delete
/clients/{id}
200

Eliminado

Buscar clientes

get
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
keysearchstringRequerido
Respuestas
chevron-right
200

Coincidencias de clientes

application/json
idintegerOpcional
company_namestringOpcional
invoice_valuestringOpcional
client_groupsstringOpcional
get
/getClientsSearch/search/{keysearch}
200

Coincidencias de clientes

Crear lead

post
Autorizaciones
authtokenstringRequerido
Cuerpo
company_namestringRequerido
owner_idstringRequerido
lead_status_idstringRequerido
lead_source_idstringRequerido
addressstringOpcional
citystringOpcional
statestringOpcional
zipstringOpcional
countrystringOpcional
phonestringOpcional
websitestringOpcional
vat_numberstringOpcional
Respuestas
chevron-right
200

Creado

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
post
/leads
200

Creado

Obtener lead por ID

get
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
idintegerRequerido
Respuestas
chevron-right
200

Lead

application/json
idintegerOpcionalExample: 2
company_namestringOpcionalExample: Test
addressstringOpcional
citystringOpcional
statestringOpcional
zipstringOpcional
countrystringOpcional
created_datestring · dateOpcional
websitestringOpcional
phonestringOpcional
lead_status_titlestringOpcionalExample: New
owner_namestringOpcionalExample: john doe
get
/leads/{id}
200

Lead

Actualizar lead

put
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
idintegerRequerido
Cuerpo
Respuestas
chevron-right
200

Actualizado

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
put
/leads/{id}
200

Actualizado

Buscar leads

get

Si tu instalación no ofrece esta ruta, usa /projects/search/{keysearch} según la nota del doc.

Autorizaciones
authtokenstringRequerido
Parámetros de ruta
keysearchstringRequerido
Respuestas
chevron-right
200

Coincidencias de leads

application/json
idintegerOpcional
company_namestringOpcional
lead_status_titlestringOpcional
get
/leads/search/{keysearch}
200

Coincidencias de leads

Listar proyectos

get
Autorizaciones
authtokenstringRequerido
Respuestas
chevron-right
200

Proyectos

application/json
idintegerOpcionalExample: 2
titlestringOpcionalExample: project 1
descriptionstringOpcional
start_datestring · nuloOpcional
deadlinestring · nuloOpcional
client_idstringOpcionalExample: 2
statusstringOpcionalExample: open
company_namestringOpcionalExample: jdoe
currency_symbolstringOpcionalExample: INR
get
/projects/
200

Proyectos

Crear proyecto

post
Autorizaciones
authtokenstringRequerido
Cuerpo
titlestringRequerido
client_idstringRequerido
start_datestringRequerido
descriptionstringOpcional
Respuestas
chevron-right
200

Creado

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
post
/projects
200

Creado

Actualizar proyecto

put
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
idintegerRequerido
Cuerpo
Respuestas
chevron-right
200

Actualizado

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
put
/projects/{id}
200

Actualizado

Eliminar proyecto

delete
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
idintegerRequerido
Respuestas
chevron-right
200

Eliminado

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
delete
/projects/{id}
200

Eliminado

Buscar proyectos

get
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
keysearchstringRequerido
Respuestas
chevron-right
200

Coincidencias de proyectos

application/json
idintegerOpcional
titlestringOpcional
statusstringOpcional
get
/projects/search/{keysearch}
200

Coincidencias de proyectos

Listar tickets

get
Autorizaciones
authtokenstringRequerido
Respuestas
chevron-right
200

Tickets

application/json
idintegerOpcionalExample: 1
client_idstringOpcionalExample: 2
project_idstringOpcionalExample: 0
ticket_type_idstringOpcionalExample: 1
titlestringOpcionalExample: Title
created_bystringOpcionalExample: 1
requested_bystringOpcionalExample: 4
created_atstringOpcionalExample: 2021-09-12 06:47:36
statusstringOpcionalExample: new
last_activity_atstringOpcionalExample: 2021-09-12 06:47:36
assigned_tostringOpcionalExample: 3
labelsstringOpcionalExample: 9,10
ticket_typestringOpcionalExample: General Support
company_namestringOpcionalExample: Company
assigned_to_userstringOpcionalExample: john doe
get
/tickets
200

Tickets

Crear ticket

post
Autorizaciones
authtokenstringRequerido
Cuerpo
titlestringRequerido
client_idstringRequerido
requested_by_idstringRequerido
ticket_type_idstringRequerido
descriptionstringRequerido
assigned_tostringRequerido
ticket_labelsstringOpcional

Opcional (IDs separados por coma)

Respuestas
chevron-right
200

Creado

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
post
/tickets
200

Creado

Obtener ticket por ID

get
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
idintegerRequerido
Respuestas
chevron-right
200

Ticket

application/json
idintegerOpcionalExample: 1
client_idstringOpcionalExample: 2
project_idstringOpcionalExample: 0
ticket_type_idstringOpcionalExample: 1
titlestringOpcionalExample: Title
created_bystringOpcionalExample: 1
requested_bystringOpcionalExample: 4
created_atstringOpcionalExample: 2021-09-12 06:47:36
statusstringOpcionalExample: new
last_activity_atstringOpcionalExample: 2021-09-12 06:47:36
assigned_tostringOpcionalExample: 3
labelsstringOpcionalExample: 9,10
ticket_typestringOpcionalExample: General Support
company_namestringOpcionalExample: Company
assigned_to_userstringOpcionalExample: john doe
get
/tickets/{id}
200

Ticket

Actualizar ticket

put
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
idintegerRequerido
Cuerpo
Respuestas
chevron-right
200

Actualizado

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
put
/tickets/{id}
200

Actualizado

Eliminar ticket

delete
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
idintegerRequerido
Respuestas
chevron-right
200

Eliminado

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
delete
/tickets/{id}
200

Eliminado

Buscar tickets

get
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
keysearchstringRequerido
Respuestas
chevron-right
200

Coincidencias de tickets

application/json
idintegerOpcional
titlestringOpcional
statusstringOpcional
get
/tickets/search/{keysearch}
200

Coincidencias de tickets

Crear factura

post
Autorizaciones
authtokenstringRequerido
Cuerpo
invoice_due_datestringRequerido
invoice_client_idstringRequerido
invoice_bill_datestringOpcional
invoice_project_idstringOpcional
tax_idstringOpcional
tax_id2stringOpcional
tax_id3stringOpcional
recurringstringOpcional
invoice_notestringOpcional
Respuestas
chevron-right
200

Creado

application/json
statusbooleanOpcionalExample: true
messagestringOpcionalExample: Operation successful.
post
/invoices
200

Creado

Buscar facturas

get
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
keysearchstringRequerido
Respuestas
chevron-right
200

Coincidencias de facturas

application/json
idintegerOpcional
client_idstringOpcional
statusstringOpcional
get
/invoices/search/{keysearch}
200

Coincidencias de facturas

Listar grupos de clientes

get
Autorizaciones
authtokenstringRequerido
Respuestas
chevron-right
200

Grupos de clientes

application/json
idstringOpcionalExample: 1
titlestringOpcionalExample: Test c group
deletedstringOpcionalExample: 0
get
/client_groups
200

Grupos de clientes

Listar etiquetas de facturas

get
Autorizaciones
authtokenstringRequerido
Respuestas
chevron-right
200

Etiquetas de factura

application/json
idstringOpcional
titlestringOpcional
colorstringOpcional
contextstringOpcional
deletedstringOpcional
get
/invoice_labels
200

Etiquetas de factura

Listar impuestos de factura

get
Autorizaciones
authtokenstringRequerido
Respuestas
chevron-right
200

Impuestos configurados

application/json
idstringOpcionalExample: 1
titlestringOpcionalExample: Tax (10%)
percentagestringOpcionalExample: 10
deletedstringOpcionalExample: 0
get
/invoice_tax
200

Impuestos configurados

Listar etiquetas de proyecto

get
Autorizaciones
authtokenstringRequerido
Respuestas
chevron-right
200

Etiquetas de proyecto

application/json
idstringOpcional
titlestringOpcional
colorstringOpcional
contextstringOpcional
deletedstringOpcional
get
/project_labels
200

Etiquetas de proyecto

Listar miembros de proyecto

get
Autorizaciones
authtokenstringRequerido
Respuestas
chevron-right
200

Miembros de proyecto

application/json
idstringOpcionalExample: 6
user_idstringOpcionalExample: 1
project_idstringOpcionalExample: 1
is_leaderstringOpcionalExample: 1
member_namestringOpcionalExample: Fname Lname
user_typestringOpcionalExample: staff
get
/getProjectMembers
200

Miembros de proyecto

Listar contactos por ClientID

get
Autorizaciones
authtokenstringRequerido
Parámetros de ruta
clientidintegerRequerido
Respuestas
chevron-right
200

Contactos del cliente

application/json
idstringOpcionalExample: 6
first_namestringOpcionalExample: Fname
last_namestringOpcionalExample: Lname
user_typestringOpcionalExample: client
statusstringOpcionalExample: active
client_idstringOpcionalExample: 3
get
/contact_by_clientid/{clientid}
200

Contactos del cliente

Última actualización