Airship API Authorization Reference
Find which authentication methods are supported for each Airship API endpoint.
For information about each authentication method, see Airship API Security.
Authorization per authentication method
The following table indicates supported authentication methods per endpoint in the Airship API. See the column for each authentication method to understand what access it allows. For OAuth 2.0, it lists the scope that allows access to the endpoint.
| Operation | Endpoint | Public | Basic Auth (App) | Basic Auth (Master) | Bearer Token | OAuth 2.0 |
|---|---|---|---|---|---|---|
| Create experiment (A/B Test) | POST /api/experiments | |||||
| Delete experiment | DELETE /api/experiments/scheduled/{experiment_id} | |||||
| Experiment listing | GET /api/experiments | |||||
| Experiment lookup | GET /api/experiments/{experiment_id} | |||||
| Scheduled experiment listing | GET /api/experiments/scheduled | |||||
| Validate experiment | POST /api/experiments/validate | |||||
| Create Attributes list | POST /api/attribute-lists | Lists | ||||
| Download list errors | GET /api/attribute-lists/{list_name}/errors | Lists | ||||
| Retrieve lists | GET /api/attribute-lists | Lists | ||||
| Upload Attribute list | PUT /api/attribute-lists/{list_name}/csv | Lists | ||||
| Create pipeline (automated message) | POST /api/pipelines | Pipelines | ||||
| Delete pipeline | DELETE /api/pipelines/{pipeline_id} | Pipelines | ||||
| Individual pipeline lookup | GET /api/pipelines/{pipeline_id} | Pipelines | ||||
| List deleted pipelines | GET /api/pipelines/deleted | Pipelines | ||||
| List existing pipelines | GET /api/pipelines | Pipelines | ||||
| List filtered pipelines | GET /api/pipelines/filtered | Pipelines | ||||
| List pipelines constraints | GET /api/pipelines/constraints | Pipelines | ||||
| List pipelines limits | GET /api/pipelines/limits | Pipelines | ||||
| Update pipeline | PUT /api/pipelines/{pipeline_id} | Pipelines | ||||
| Update pipelines constraints | PUT /api/pipelines/constraints | Pipelines | ||||
| Validate pipeline | POST /api/pipelines/validate | Pipelines | ||||
| Create and Send a message | POST /api/create-and-send | Push | ||||
| Create bulk send audience | POST /api/bulk/{platform_name} | |||||
| Schedule a Create and Send message | POST /api/schedules/create-and-send | Push | ||||
| Schedule message with bulk ID | POST /api/schedules/bulk-send | Push | ||||
| Send message with bulk ID | POST /api/bulk-send | Push | ||||
| Validate Create and Send payload | POST /api/create-and-send/validate | Push | ||||
| Validate message with bulk ID | POST /api/bulk-send/validate | Push | ||||
| Channel listing | GET /api/channels | Channels | ||||
| Channel lookup | GET /api/channels/{channel_id} | Channels | ||||
| Channel tags | POST /api/channels/tags | Channels | ||||
| Set or remove attributes on channels | POST /api/channels/attributes | Channels | ||||
| Subscribe or unsubscribe channels to/from subscription lists | POST /api/channels/subscription_lists | Channels | ||||
| Uninstall channels | POST /api/channels/uninstall | Channels | ||||
| Contact association | POST /api/contacts/associate | Contacts | ||||
| Contact disassociation | POST /api/contacts/disassociate/{contact_id} | Contacts | ||||
| Contacts tags | POST /api/contacts/tags/ | Contacts | ||||
| Look up Contact ID by Channel ID | GET /api/contacts/lookup/channel/{channel_id} | Contacts | ||||
| Look up Contact ID by Named User ID | GET /api/contacts/lookup/named_user/{named_user_id} | Contacts | ||||
| Scoped Contact batch operations | POST /api/contacts/scoped/{contact_id} | Contacts | ||||
| Set or remove attributes on a Contact | POST /api/contacts/attributes | Contacts | ||||
| Create content template | POST /api/content/templates | Content | ||||
| Create or update content template by external ID | PUT /api/content/templates/external/{type}/{external_id} | Content | ||||
| Delete content template | DELETE /api/content/templates/{template_id} | Content | ||||
| Delete content template by external ID | DELETE /api/content/templates/external/{type}/{external_id} | Content | ||||
| List content templates | GET /api/content/templates | Content | ||||
| Look up a content template | GET /api/content/templates/{template_id} | Content | ||||
| Look up a content template by external ID | GET /api/content/templates/external/{type}/{external_id} | Content | ||||
| Update content template | PUT /api/content/templates/{template_id} | Content | ||||
| Add Custom Events | POST /api/custom-events | Events | ||||
| Named Users uninstall | POST /api/named_users/uninstall | Named Users | ||||
| Uninstall channels | POST /api/channels/uninstall | Channels | ||||
| Create email attachment | POST /api/attachments | Attachments | ||||
| Custom unsubscribe email channel | GET /api/channels/email/custom-unsubscribe | |||||
| Email tags | POST /api/channels/email/tags | Channels | ||||
| Look up an email address | GET /api/channels/email/{email} | Channels | ||||
| Register email channel | POST /api/channels/email | Channels | ||||
| Remove suppression from an email channel | POST /api/channels/email/unsuppress | Channels | ||||
| Replace email channel | POST /api/channels/email/replace/{channel_id} | Channels | ||||
| Suppress an email channel | POST /api/channels/email/suppress | Channels | ||||
| Uninstall email channel | POST /api/channels/email/uninstall | Channels | ||||
| Update an email channel | PUT /api/channels/email/{email} | Channels | ||||
| Named User listing or lookup | GET /api/named_users | Named Users | ||||
| Named User update | POST /api/named_users/{named_user_id} | Named Users | ||||
| Named Users association | POST /api/named_users/associate | Named Users | ||||
| Named Users disassociation | POST /api/named_users/disassociate | Named Users | ||||
| Named Users tags | POST /api/named_users/tags | Named Users | ||||
| Named Users uninstall | POST /api/named_users/uninstall | Named Users | ||||
| Scoped Named User batch operations | POST /api/named_users/scoped/{named_user_id} | Named Users | ||||
| Set or remove attributes on Named Users | POST /api/named_users/{named_user_id}/attributes | Named Users | ||||
| Verify public key | GET /verify/public_key/{kid} | |||||
| Open channel tags | POST /api/channels/open/tags | Channels | ||||
| Register new or update channel | POST /api/channels/open | Channels | ||||
| Uninstall open channels | POST /api/channels/open/uninstall | Channels | ||||
| Create template | POST /api/templates | |||||
| Delete template | DELETE /api/templates/{template_id} | |||||
| List templates | GET /api/templates | |||||
| Look up a template | GET /api/templates/{template_id} | |||||
| Push to template | POST /api/templates/push | Push | ||||
| Schedule a templated push | POST /api/templates/schedules | Push | ||||
| Update template | POST /api/templates/{template_id} | |||||
| Validate a template | POST /api/templates/push/validate | Push | ||||
| Delete message from inbox | DELETE /api/user/messages/{push_id} | |||||
| Delete multiple messages from inbox | POST /api/user/messages/batch-delete | |||||
| Send a push | POST /api/push | Push | ||||
| Validate a push | POST /api/push/validate | Push | ||||
| Region listing | GET /api/regions | |||||
| Region lookup | GET /api/regions/{region_id} | |||||
| Activity log report | GET /api/reports/activity/details | |||||
| App opens report | GET /api/reports/opens | |||||
| Custom Events detail listing | GET /api/reports/events | |||||
| Custom Events per group summary | GET /api/reports/events/summary/pergroup/{group_id} | |||||
| Custom Events per push summary | GET /api/reports/events/summary/perpush/{push_id} | |||||
| Devices report | GET /api/reports/devices | |||||
| Experiment overview report | GET /api/reports/experiment/overview/{push_id} | |||||
| Experiment variant report | GET /api/reports/experiment/detail/{push_id}/{variant_id} | |||||
| Individual push response statistics | GET /api/reports/responses/{push_id} | |||||
| Opt-in report | GET /api/reports/optins | |||||
| Opt-out report | GET /api/reports/optouts | |||||
| Per group push detail report | GET /api/reports/pergroup/detail/{group_id} | |||||
| Per group push time series report | GET /api/reports/pergroup/series/{group_id} | |||||
| Per push detail report | GET /api/reports/perpush/detail/{push_id} | |||||
| Per push time series report | GET /api/reports/perpush/series/{push_id} | |||||
| Push body per push | GET /api/reports/perpush/pushbody/{push_id} | |||||
| Push report | GET /api/reports/sends | |||||
| Response listing | GET /api/reports/responses/list | |||||
| Response report | GET /api/reports/responses | |||||
| Time in app report | GET /api/reports/timeinapp | |||||
| Web response report | GET /api/reports/web/interaction | |||||
| Delete schedule | DELETE /api/schedules/{schedule_id} | Schedules | ||||
| List a specific schedule | GET /api/schedules/{schedule_id} | Schedules | ||||
| List schedules | GET /api/schedules | Schedules | ||||
| Pause a schedule | POST /api/schedules/{schedule_id}/pause | Schedules | ||||
| Resume a schedule | POST /api/schedules/{schedule_id}/resume | Schedules | ||||
| Schedule a notification | POST /api/schedules | Push | ||||
| Update schedule | PUT /api/schedules/{schedule_id} | Schedules | ||||
| Create Segment | POST /api/segments | |||||
| Delete Segment | DELETE /api/segments/{segment_id} | |||||
| Segment listing | GET /api/segments | |||||
| Segment lookup | GET /api/segments/{segment_id} | |||||
| Update Segment | PUT /api/segments/{segment_id} | |||||
| Custom SMS response | POST /api/sms/custom-response | |||||
| Manually trigger a keyword interaction | POST /api/sms/{msisdn}/keywords | |||||
| Opt-out of SMS messages | POST /api/channels/sms/opt-out | Channels | ||||
| Register SMS channel | POST /api/channels/sms | Channels | ||||
| SMS channel lookup | GET /api/channels/sms/{msisdn}/{sender} | Channels | ||||
| SMS tags | POST /api/channels/sms/tags | Channels | ||||
| Uninstall SMS channel | POST /api/channels/sms/uninstall | Channels | ||||
| Update SMS channel | PUT /api/channels/sms/{channel_id} | Channels | ||||
| Create list | POST /api/lists | Lists | ||||
| Delete a list | DELETE /api/lists/{list_name} | Lists | ||||
| Download a list of channels | GET /api/lists/{list_name}/csv | Lists | ||||
| Get single list metadata | GET /api/lists/{list_name} | Lists | ||||
| Retrieve lists | GET /api/lists | Lists | ||||
| Update list contents | PUT /api/lists/{list_name}/csv | Lists | ||||
| Update list metadata | PUT /api/lists/{list_name} | Lists | ||||
| Named User subscription lists listing | GET /api/subscription_lists/named_users/{named_user_id} | Named Users | ||||
| Subscription lists listing | GET /api/subscription_lists | Lists | ||||
| Create a tag list | POST /api/tag-lists | Lists | ||||
| Delete tag list | DELETE /api/tag-lists/{list_name} | Lists | ||||
| Download list errors | GET /api/tag-lists/{list_name}/errors | Lists | ||||
| Retrieve lists | GET /api/tag-lists | Lists | ||||
| Upload tag list | PUT /api/tag-lists/{list_name}/csv | Lists | ||||
| Channel tags | POST /api/channels/tags | Channels | ||||
| Contacts tags | POST /api/contacts/tags/ | Contacts | ||||
| Email tags | POST /api/channels/email/tags | Channels | ||||
| Named Users tags | POST /api/named_users/tags | Named Users | ||||
| Open channel tags | POST /api/channels/open/tags | Channels | ||||
| SMS tags | POST /api/channels/sms/tags | Channels |
OAuth token scopes
Refer to the following sections when setting permissions for OAuth client credentials.
Attachments
The Attachments (att) scope includes endpoints that manage attachments for messages and templates.
| Operation | Endpoint |
|---|---|
| Create email attachment | POST /api/attachments |
Channels
The Channels (chn) scope includes endpoints that manage channels and channel data.
| Operation | Endpoint |
|---|---|
| Channel listing | GET /api/channels |
| Channel lookup | GET /api/channels/{channel_id} |
| Channel tags | POST /api/channels/tags |
| Set or remove attributes on channels | POST /api/channels/attributes |
| Subscribe or unsubscribe channels to/from subscription lists | POST /api/channels/subscription_lists |
| Uninstall channels | POST /api/channels/uninstall |
| Uninstall channels | POST /api/channels/uninstall |
| Email tags | POST /api/channels/email/tags |
| Look up an email address | GET /api/channels/email/{email} |
| Register email channel | POST /api/channels/email |
| Remove suppression from an email channel | POST /api/channels/email/unsuppress |
| Replace email channel | POST /api/channels/email/replace/{channel_id} |
| Suppress an email channel | POST /api/channels/email/suppress |
| Uninstall email channel | POST /api/channels/email/uninstall |
| Update an email channel | PUT /api/channels/email/{email} |
| Open channel tags | POST /api/channels/open/tags |
| Register new or update channel | POST /api/channels/open |
| Uninstall open channels | POST /api/channels/open/uninstall |
| Opt-out of SMS messages | POST /api/channels/sms/opt-out |
| Register SMS channel | POST /api/channels/sms |
| SMS channel lookup | GET /api/channels/sms/{msisdn}/{sender} |
| SMS tags | POST /api/channels/sms/tags |
| Uninstall SMS channel | POST /api/channels/sms/uninstall |
| Update SMS channel | PUT /api/channels/sms/{channel_id} |
| Channel tags | POST /api/channels/tags |
| Email tags | POST /api/channels/email/tags |
| Open channel tags | POST /api/channels/open/tags |
| SMS tags | POST /api/channels/sms/tags |
Contacts
The Contacts (cnt) scope includes endpoints that manage contacts and contact lists.
| Operation | Endpoint |
|---|---|
| Contact association | POST /api/contacts/associate |
| Contact disassociation | POST /api/contacts/disassociate/{contact_id} |
| Contacts tags | POST /api/contacts/tags/ |
| Look up Contact ID by Channel ID | GET /api/contacts/lookup/channel/{channel_id} |
| Look up Contact ID by Named User ID | GET /api/contacts/lookup/named_user/{named_user_id} |
| Scoped Contact batch operations | POST /api/contacts/scoped/{contact_id} |
| Set or remove attributes on a Contact | POST /api/contacts/attributes |
| Contacts tags | POST /api/contacts/tags/ |
Events
The Events (evt) scope includes endpoints that create custom events.
| Operation | Endpoint |
|---|---|
| Add Custom Events | POST /api/custom-events |
Lists
The Lists (lst) scope includes endpoints that manage lists and list uploads.
| Operation | Endpoint |
|---|---|
| Create Attributes list | POST /api/attribute-lists |
| Download list errors | GET /api/attribute-lists/{list_name}/errors |
| Retrieve lists | GET /api/attribute-lists |
| Upload Attribute list | PUT /api/attribute-lists/{list_name}/csv |
| Create list | POST /api/lists |
| Delete a list | DELETE /api/lists/{list_name} |
| Download a list of channels | GET /api/lists/{list_name}/csv |
| Get single list metadata | GET /api/lists/{list_name} |
| Retrieve lists | GET /api/lists |
| Update list contents | PUT /api/lists/{list_name}/csv |
| Update list metadata | PUT /api/lists/{list_name} |
| Subscription lists listing | GET /api/subscription_lists |
| Create a tag list | POST /api/tag-lists |
| Delete tag list | DELETE /api/tag-lists/{list_name} |
| Download list errors | GET /api/tag-lists/{list_name}/errors |
| Retrieve lists | GET /api/tag-lists |
| Upload tag list | PUT /api/tag-lists/{list_name}/csv |
Named Users
The Named Users (nu) scope includes endpoints that manage named users and named user associations.
| Operation | Endpoint |
|---|---|
| Named Users uninstall | POST /api/named_users/uninstall |
| Named User listing or lookup | GET /api/named_users |
| Named User update | POST /api/named_users/{named_user_id} |
| Named Users association | POST /api/named_users/associate |
| Named Users disassociation | POST /api/named_users/disassociate |
| Named Users tags | POST /api/named_users/tags |
| Named Users uninstall | POST /api/named_users/uninstall |
| Scoped Named User batch operations | POST /api/named_users/scoped/{named_user_id} |
| Set or remove attributes on Named Users | POST /api/named_users/{named_user_id}/attributes |
| Named User subscription lists listing | GET /api/subscription_lists/named_users/{named_user_id} |
| Named Users tags | POST /api/named_users/tags |
Pipelines
The Pipelines (pln) scope includes endpoints that manage automated message pipelines.
| Operation | Endpoint |
|---|---|
| Create pipeline (automated message) | POST /api/pipelines |
| Delete pipeline | DELETE /api/pipelines/{pipeline_id} |
| Individual pipeline lookup | GET /api/pipelines/{pipeline_id} |
| List deleted pipelines | GET /api/pipelines/deleted |
| List existing pipelines | GET /api/pipelines |
| List filtered pipelines | GET /api/pipelines/filtered |
| List pipelines constraints | GET /api/pipelines/constraints |
| List pipelines limits | GET /api/pipelines/limits |
| Update pipeline | PUT /api/pipelines/{pipeline_id} |
| Update pipelines constraints | PUT /api/pipelines/constraints |
| Validate pipeline | POST /api/pipelines/validate |
Push
The Push (psh) scope includes endpoints that send push notifications and scheduled messages.
| Operation | Endpoint |
|---|---|
| Create and Send a message | POST /api/create-and-send |
| Schedule a Create and Send message | POST /api/schedules/create-and-send |
| Schedule message with bulk ID | POST /api/schedules/bulk-send |
| Send message with bulk ID | POST /api/bulk-send |
| Validate Create and Send payload | POST /api/create-and-send/validate |
| Validate message with bulk ID | POST /api/bulk-send/validate |
| Push to template | POST /api/templates/push |
| Schedule a templated push | POST /api/templates/schedules |
| Validate a template | POST /api/templates/push/validate |
| Send a push | POST /api/push |
| Validate a push | POST /api/push/validate |
| Schedule a notification | POST /api/schedules |
Schedules
The Schedules (sch) scope includes endpoints that manage scheduled messages.
| Operation | Endpoint |
|---|---|
| Delete schedule | DELETE /api/schedules/{schedule_id} |
| List a specific schedule | GET /api/schedules/{schedule_id} |
| List schedules | GET /api/schedules |
| Pause a schedule | POST /api/schedules/{schedule_id}/pause |
| Resume a schedule | POST /api/schedules/{schedule_id}/resume |
| Update schedule | PUT /api/schedules/{schedule_id} |
Content
The Content (tpl) scope includes endpoints that manage content templates.
| Operation | Endpoint |
|---|---|
| Create content template | POST /api/content/templates |
| Create or update content template by external ID | PUT /api/content/templates/external/{type}/{external_id} |
| Delete content template | DELETE /api/content/templates/{template_id} |
| Delete content template by external ID | DELETE /api/content/templates/external/{type}/{external_id} |
| List content templates | GET /api/content/templates |
| Look up a content template | GET /api/content/templates/{template_id} |
| Look up a content template by external ID | GET /api/content/templates/external/{type}/{external_id} |
| Update content template | PUT /api/content/templates/{template_id} |