Add Header X-WORKSPACE : 0 to all workspace to fetch data from 0th workspace.
If user has more than 1 workspace , refer to get Workspaces API to fetch the list of
workspaces.
Get Workspaces :
Request URL : [Link]
Request Header - Authorization : Bearer xxx
Scope : [Link]
Request Method : GET
Response :
{
"status_message": "Success",
"status_code": 200,
"total_count": 2,
"workspaces": [
{
"workspace_id": "0",
"users_count": 2,
"created_time": "2023-03-22T13:56:02Z",
"last_updated_time": "2023-03-22T20:56:02Z",
"org_id": 1234,
"name": "Org1234",
"description": "1234",
"is_default": "false",
"created_by": "aaa@[Link]",
"status": "active"
},
{
"workspace_id": "1",
"users_count": 1,
"created_time": "2024-03-11T11:32:16Z",
"last_updated_time": "2024-03-11T18:32:16Z",
"org_id": 806148170,
"name": "Test",
"description": "aaa",
"is_default": "false",
"created_by": "aaa@[Link]",
"status": "active"
}
]
}
Get Fields :
Request URL : [Link]
Request Header - Authorization : Bearer xxx
Scope : [Link]
Request Method : GET
Response :
{
"status_message": "field(s) retrieved successfully",
"status_code": 200,
"total_count": 70,
"fields": [
{
"field_id": "1108271500000000002167",
"is_encrypted": false,
"module": "Contacts",
"is_editable": true,
"field_length": 100,
"is_not_clearable": false,
"display_name": "Contact Email",
"type": "standard",
"ui_type_id": 2,
"field_name": "contact_email",
"is_ephi": false,
"mergetag": "$[UD:CONTACT_EMAIL]$",
"field_type": "email"
},
{
"field_id": "1108271500000000002168",
"is_encrypted": false,
"module": "Contacts",
"is_editable": true,
"field_length": 20,
"is_not_clearable": false,
"display_name": "Mobile",
"type": "standard",
"ui_type_id": 2,
"field_name": "mobile",
"is_ephi": false,
"mergetag": "$[UD:MOBILE]$",
"field_type": "text"
}
]
}
Get Mailing Lists :
Request URL :{{MA_IDC}}/api/v2.1/list?from_index=0&limit=1000
Request Header - Authorization : Bearer xxx
Scope : [Link]
Request Method : GET
Response :
{
"status_message": "list(s) retrieved successfully",
"status_code": 200,
"lists": [
{
"created_time": 1744228459000,
"lock_status": "unlocked",
"list_id": "10827150000095250278908",
"total_count": 0,
"description": "",
"list_name": "TestList1",
"campaign_count": 0,
"lead_count": 0,
"created_by": "Test",
"created_time_iso": "2025-04-09T11:54:19",
"bounced_count": 0,
"unsub_count": 0,
"is_public": true
}
],
"total_count": 78
}
Get Topics
Request URL :{{MA_IDC}}/api/v2.1/topic
Request Header - Authorization : Bearer xxx
Scope : [Link]
Request Method : GET
Response :
{
"status_message": "Topics / Products retrieved successfully",
"from_index": 1,
"status_code": 200,
"is_grouped": 1,
"topics": [
{
"is_enabled": true,
"total_leads": 0,
"created_time": "2024-10-14T16:47:28Z",
"is_grouped": 0,
"owner_id": 806150196,
"topic_description": "Test topics",
"topic_name": "T2",
"topic_id": "10827150000095250278910",
"created_by": "test"
}
]
"limit": 200,
"page": 1
}
Get Lawful Basis:
Request URL :{{MA_IDC}}/api/v2.1/topic/lawful_basis
Request Header - Authorization : Bearer xxx
Scope : [Link]
Request Method : GET
Response
{
"status_message": "Lawful Basis retrieved succussfully",
"lawful_basis": [
{
"display_name": "Not Applicable",
"consent_type": 1
},
{
"display_name": "Consent",
"consent_type": 5
},
{
"display_name": "Legitimate Interest",
"consent_type": 11
},
{
"display_name": "Contract",
"consent_type": 12
},
{
"display_name": "Public Task",
"consent_type": 13
},
{
"display_name": "Legal Obligation",
"consent_type": 14
},
{
"display_name": "Vital Interest",
"consent_type": 15
}
],
"is_gdpr": true,
"status_code": 200
}
ADD/UPDATE CONTACT:
Request URL :
[Link]
827150000095250278909&subscription_type=marketing&topic_id=1082715000009525
0278910,10827150000095250278911&lawful_basis=Consent&overwrite=true
list_id - can be got from Get lists API
topic_id - can be got from Get Topics API
lawful_basis - can be got from Lawful Basis API
resubscription - true|false(to send resubscription mail to unsubscribed contact)
subscription_type=marketing|nonmarketing
overwrite = true|false (to overwrite subscription type)
Request Header - Authorization : Bearer xxx
Request Method : POST
Scope : [Link]
Request Body : (form data)
{"contact_email":"aaa@[Link]","mobile":"1234567890"}
use field_name from /field api as key for json
Date mm/dd/yyyy
DateTime mm/dd/yyyy;hh;mm;[am/pm]
Anniversary mm/dd
Multiselect option1;option2
Checkbox true/false
Radio value
Response
[Link] Optin
{
"status_message": "Success",
"status_code": 200,
"contact_id": "11023434"
}
[Link] Optin
{
"status_message": "A confirmation email is sent to the user. User needs to confirm to
successfully subscribe.",
"status_code": 200
}
[Link] already present
{
"status_message": "Success",
"status_code": 200,
"contact_id": "11023434"
}