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.

OperationEndpointPublicBasic Auth (App)Basic Auth (Master)Bearer TokenOAuth 2.0
Create experiment (A/B Test)POST /api/experiments
Delete experimentDELETE /api/experiments/scheduled/{experiment_id}
Experiment listingGET /api/experiments
Experiment lookupGET /api/experiments/{experiment_id}
Scheduled experiment listingGET /api/experiments/scheduled
Validate experimentPOST /api/experiments/validate
Create Attributes listPOST /api/attribute-listsLists
Download list errorsGET /api/attribute-lists/{list_name}/errorsLists
Retrieve listsGET /api/attribute-listsLists
Upload Attribute listPUT /api/attribute-lists/{list_name}/csvLists
Create pipeline (automated message)POST /api/pipelinesPipelines
Delete pipelineDELETE /api/pipelines/{pipeline_id}Pipelines
Individual pipeline lookupGET /api/pipelines/{pipeline_id}Pipelines
List deleted pipelinesGET /api/pipelines/deletedPipelines
List existing pipelinesGET /api/pipelinesPipelines
List filtered pipelinesGET /api/pipelines/filteredPipelines
List pipelines constraintsGET /api/pipelines/constraintsPipelines
List pipelines limitsGET /api/pipelines/limitsPipelines
Update pipelinePUT /api/pipelines/{pipeline_id}Pipelines
Update pipelines constraintsPUT /api/pipelines/constraintsPipelines
Validate pipelinePOST /api/pipelines/validatePipelines
Create and Send a messagePOST /api/create-and-sendPush
Create bulk send audiencePOST /api/bulk/{platform_name}
Schedule a Create and Send messagePOST /api/schedules/create-and-sendPush
Schedule message with bulk IDPOST /api/schedules/bulk-sendPush
Send message with bulk IDPOST /api/bulk-sendPush
Validate Create and Send payloadPOST /api/create-and-send/validatePush
Validate message with bulk IDPOST /api/bulk-send/validatePush
Channel listingGET /api/channelsChannels
Channel lookupGET /api/channels/{channel_id}Channels
Channel tagsPOST /api/channels/tagsChannels
Set or remove attributes on channelsPOST /api/channels/attributesChannels
Subscribe or unsubscribe channels to/from subscription listsPOST /api/channels/subscription_listsChannels
Uninstall channelsPOST /api/channels/uninstallChannels
Contact associationPOST /api/contacts/associateContacts
Contact disassociationPOST /api/contacts/disassociate/{contact_id}Contacts
Contacts tagsPOST /api/contacts/tags/Contacts
Look up Contact ID by Channel IDGET /api/contacts/lookup/channel/{channel_id}Contacts
Look up Contact ID by Named User IDGET /api/contacts/lookup/named_user/{named_user_id}Contacts
Scoped Contact batch operationsPOST /api/contacts/scoped/{contact_id}Contacts
Set or remove attributes on a ContactPOST /api/contacts/attributesContacts
Create content templatePOST /api/content/templatesContent
Create or update content template by external IDPUT /api/content/templates/external/{type}/{external_id}Content
Delete content templateDELETE /api/content/templates/{template_id}Content
Delete content template by external IDDELETE /api/content/templates/external/{type}/{external_id}Content
List content templatesGET /api/content/templatesContent
Look up a content templateGET /api/content/templates/{template_id}Content
Look up a content template by external IDGET /api/content/templates/external/{type}/{external_id}Content
Update content templatePUT /api/content/templates/{template_id}Content
Add Custom EventsPOST /api/custom-eventsEvents
Named Users uninstallPOST /api/named_users/uninstallNamed Users
Uninstall channelsPOST /api/channels/uninstallChannels
Create email attachmentPOST /api/attachmentsAttachments
Custom unsubscribe email channelGET /api/channels/email/custom-unsubscribe
Email tagsPOST /api/channels/email/tagsChannels
Look up an email addressGET /api/channels/email/{email}Channels
Register email channelPOST /api/channels/emailChannels
Remove suppression from an email channelPOST /api/channels/email/unsuppressChannels
Replace email channelPOST /api/channels/email/replace/{channel_id}Channels
Suppress an email channelPOST /api/channels/email/suppressChannels
Uninstall email channelPOST /api/channels/email/uninstallChannels
Update an email channelPUT /api/channels/email/{email}Channels
Named User listing or lookupGET /api/named_usersNamed Users
Named User updatePOST /api/named_users/{named_user_id}Named Users
Named Users associationPOST /api/named_users/associateNamed Users
Named Users disassociationPOST /api/named_users/disassociateNamed Users
Named Users tagsPOST /api/named_users/tagsNamed Users
Named Users uninstallPOST /api/named_users/uninstallNamed Users
Scoped Named User batch operationsPOST /api/named_users/scoped/{named_user_id}Named Users
Set or remove attributes on Named UsersPOST /api/named_users/{named_user_id}/attributesNamed Users
Verify public keyGET /verify/public_key/{kid}
Open channel tagsPOST /api/channels/open/tagsChannels
Register new or update channelPOST /api/channels/openChannels
Uninstall open channelsPOST /api/channels/open/uninstallChannels
Create templatePOST /api/templates
Delete templateDELETE /api/templates/{template_id}
List templatesGET /api/templates
Look up a templateGET /api/templates/{template_id}
Push to templatePOST /api/templates/pushPush
Schedule a templated pushPOST /api/templates/schedulesPush
Update templatePOST /api/templates/{template_id}
Validate a templatePOST /api/templates/push/validatePush
Delete message from inboxDELETE /api/user/messages/{push_id}
Delete multiple messages from inboxPOST /api/user/messages/batch-delete
Send a pushPOST /api/pushPush
Validate a pushPOST /api/push/validatePush
Region listingGET /api/regions
Region lookupGET /api/regions/{region_id}
Activity log reportGET /api/reports/activity/details
App opens reportGET /api/reports/opens
Custom Events detail listingGET /api/reports/events
Custom Events per group summaryGET /api/reports/events/summary/pergroup/{group_id}
Custom Events per push summaryGET /api/reports/events/summary/perpush/{push_id}
Devices reportGET /api/reports/devices
Experiment overview reportGET /api/reports/experiment/overview/{push_id}
Experiment variant reportGET /api/reports/experiment/detail/{push_id}/{variant_id}
Individual push response statisticsGET /api/reports/responses/{push_id}
Opt-in reportGET /api/reports/optins
Opt-out reportGET /api/reports/optouts
Per group push detail reportGET /api/reports/pergroup/detail/{group_id}
Per group push time series reportGET /api/reports/pergroup/series/{group_id}
Per push detail reportGET /api/reports/perpush/detail/{push_id}
Per push time series reportGET /api/reports/perpush/series/{push_id}
Push body per pushGET /api/reports/perpush/pushbody/{push_id}
Push reportGET /api/reports/sends
Response listingGET /api/reports/responses/list
Response reportGET /api/reports/responses
Time in app reportGET /api/reports/timeinapp
Web response reportGET /api/reports/web/interaction
Delete scheduleDELETE /api/schedules/{schedule_id}Schedules
List a specific scheduleGET /api/schedules/{schedule_id}Schedules
List schedulesGET /api/schedulesSchedules
Pause a schedulePOST /api/schedules/{schedule_id}/pauseSchedules
Resume a schedulePOST /api/schedules/{schedule_id}/resumeSchedules
Schedule a notificationPOST /api/schedulesPush
Update schedulePUT /api/schedules/{schedule_id}Schedules
Create SegmentPOST /api/segments
Delete SegmentDELETE /api/segments/{segment_id}
Segment listingGET /api/segments
Segment lookupGET /api/segments/{segment_id}
Update SegmentPUT /api/segments/{segment_id}
Custom SMS responsePOST /api/sms/custom-response
Manually trigger a keyword interactionPOST /api/sms/{msisdn}/keywords
Opt-out of SMS messagesPOST /api/channels/sms/opt-outChannels
Register SMS channelPOST /api/channels/smsChannels
SMS channel lookupGET /api/channels/sms/{msisdn}/{sender}Channels
SMS tagsPOST /api/channels/sms/tagsChannels
Uninstall SMS channelPOST /api/channels/sms/uninstallChannels
Update SMS channelPUT /api/channels/sms/{channel_id}Channels
Create listPOST /api/listsLists
Delete a listDELETE /api/lists/{list_name}Lists
Download a list of channelsGET /api/lists/{list_name}/csvLists
Get single list metadataGET /api/lists/{list_name}Lists
Retrieve listsGET /api/listsLists
Update list contentsPUT /api/lists/{list_name}/csvLists
Update list metadataPUT /api/lists/{list_name}Lists
Named User subscription lists listingGET /api/subscription_lists/named_users/{named_user_id}Named Users
Subscription lists listingGET /api/subscription_listsLists
Create a tag listPOST /api/tag-listsLists
Delete tag listDELETE /api/tag-lists/{list_name}Lists
Download list errorsGET /api/tag-lists/{list_name}/errorsLists
Retrieve listsGET /api/tag-listsLists
Upload tag listPUT /api/tag-lists/{list_name}/csvLists
Channel tagsPOST /api/channels/tagsChannels
Contacts tagsPOST /api/contacts/tags/Contacts
Email tagsPOST /api/channels/email/tagsChannels
Named Users tagsPOST /api/named_users/tagsNamed Users
Open channel tagsPOST /api/channels/open/tagsChannels
SMS tagsPOST /api/channels/sms/tagsChannels

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.

OperationEndpoint
Create email attachmentPOST /api/attachments

Channels

The Channels (chn) scope includes endpoints that manage channels and channel data.

OperationEndpoint
Channel listingGET /api/channels
Channel lookupGET /api/channels/{channel_id}
Channel tagsPOST /api/channels/tags
Set or remove attributes on channelsPOST /api/channels/attributes
Subscribe or unsubscribe channels to/from subscription listsPOST /api/channels/subscription_lists
Uninstall channelsPOST /api/channels/uninstall
Uninstall channelsPOST /api/channels/uninstall
Email tagsPOST /api/channels/email/tags
Look up an email addressGET /api/channels/email/{email}
Register email channelPOST /api/channels/email
Remove suppression from an email channelPOST /api/channels/email/unsuppress
Replace email channelPOST /api/channels/email/replace/{channel_id}
Suppress an email channelPOST /api/channels/email/suppress
Uninstall email channelPOST /api/channels/email/uninstall
Update an email channelPUT /api/channels/email/{email}
Open channel tagsPOST /api/channels/open/tags
Register new or update channelPOST /api/channels/open
Uninstall open channelsPOST /api/channels/open/uninstall
Opt-out of SMS messagesPOST /api/channels/sms/opt-out
Register SMS channelPOST /api/channels/sms
SMS channel lookupGET /api/channels/sms/{msisdn}/{sender}
SMS tagsPOST /api/channels/sms/tags
Uninstall SMS channelPOST /api/channels/sms/uninstall
Update SMS channelPUT /api/channels/sms/{channel_id}
Channel tagsPOST /api/channels/tags
Email tagsPOST /api/channels/email/tags
Open channel tagsPOST /api/channels/open/tags
SMS tagsPOST /api/channels/sms/tags

Contacts

The Contacts (cnt) scope includes endpoints that manage contacts and contact lists.

OperationEndpoint
Contact associationPOST /api/contacts/associate
Contact disassociationPOST /api/contacts/disassociate/{contact_id}
Contacts tagsPOST /api/contacts/tags/
Look up Contact ID by Channel IDGET /api/contacts/lookup/channel/{channel_id}
Look up Contact ID by Named User IDGET /api/contacts/lookup/named_user/{named_user_id}
Scoped Contact batch operationsPOST /api/contacts/scoped/{contact_id}
Set or remove attributes on a ContactPOST /api/contacts/attributes
Contacts tagsPOST /api/contacts/tags/

Events

The Events (evt) scope includes endpoints that create custom events.

OperationEndpoint
Add Custom EventsPOST /api/custom-events

Lists

The Lists (lst) scope includes endpoints that manage lists and list uploads.

OperationEndpoint
Create Attributes listPOST /api/attribute-lists
Download list errorsGET /api/attribute-lists/{list_name}/errors
Retrieve listsGET /api/attribute-lists
Upload Attribute listPUT /api/attribute-lists/{list_name}/csv
Create listPOST /api/lists
Delete a listDELETE /api/lists/{list_name}
Download a list of channelsGET /api/lists/{list_name}/csv
Get single list metadataGET /api/lists/{list_name}
Retrieve listsGET /api/lists
Update list contentsPUT /api/lists/{list_name}/csv
Update list metadataPUT /api/lists/{list_name}
Subscription lists listingGET /api/subscription_lists
Create a tag listPOST /api/tag-lists
Delete tag listDELETE /api/tag-lists/{list_name}
Download list errorsGET /api/tag-lists/{list_name}/errors
Retrieve listsGET /api/tag-lists
Upload tag listPUT /api/tag-lists/{list_name}/csv

Named Users

The Named Users (nu) scope includes endpoints that manage named users and named user associations.

OperationEndpoint
Named Users uninstallPOST /api/named_users/uninstall
Named User listing or lookupGET /api/named_users
Named User updatePOST /api/named_users/{named_user_id}
Named Users associationPOST /api/named_users/associate
Named Users disassociationPOST /api/named_users/disassociate
Named Users tagsPOST /api/named_users/tags
Named Users uninstallPOST /api/named_users/uninstall
Scoped Named User batch operationsPOST /api/named_users/scoped/{named_user_id}
Set or remove attributes on Named UsersPOST /api/named_users/{named_user_id}/attributes
Named User subscription lists listingGET /api/subscription_lists/named_users/{named_user_id}
Named Users tagsPOST /api/named_users/tags

Pipelines

The Pipelines (pln) scope includes endpoints that manage automated message pipelines.

OperationEndpoint
Create pipeline (automated message)POST /api/pipelines
Delete pipelineDELETE /api/pipelines/{pipeline_id}
Individual pipeline lookupGET /api/pipelines/{pipeline_id}
List deleted pipelinesGET /api/pipelines/deleted
List existing pipelinesGET /api/pipelines
List filtered pipelinesGET /api/pipelines/filtered
List pipelines constraintsGET /api/pipelines/constraints
List pipelines limitsGET /api/pipelines/limits
Update pipelinePUT /api/pipelines/{pipeline_id}
Update pipelines constraintsPUT /api/pipelines/constraints
Validate pipelinePOST /api/pipelines/validate

Push

The Push (psh) scope includes endpoints that send push notifications and scheduled messages.

OperationEndpoint
Create and Send a messagePOST /api/create-and-send
Schedule a Create and Send messagePOST /api/schedules/create-and-send
Schedule message with bulk IDPOST /api/schedules/bulk-send
Send message with bulk IDPOST /api/bulk-send
Validate Create and Send payloadPOST /api/create-and-send/validate
Validate message with bulk IDPOST /api/bulk-send/validate
Push to templatePOST /api/templates/push
Schedule a templated pushPOST /api/templates/schedules
Validate a templatePOST /api/templates/push/validate
Send a pushPOST /api/push
Validate a pushPOST /api/push/validate
Schedule a notificationPOST /api/schedules

Schedules

The Schedules (sch) scope includes endpoints that manage scheduled messages.

OperationEndpoint
Delete scheduleDELETE /api/schedules/{schedule_id}
List a specific scheduleGET /api/schedules/{schedule_id}
List schedulesGET /api/schedules
Pause a schedulePOST /api/schedules/{schedule_id}/pause
Resume a schedulePOST /api/schedules/{schedule_id}/resume
Update schedulePUT /api/schedules/{schedule_id}

Content

The Content (tpl) scope includes endpoints that manage content templates.

OperationEndpoint
Create content templatePOST /api/content/templates
Create or update content template by external IDPUT /api/content/templates/external/{type}/{external_id}
Delete content templateDELETE /api/content/templates/{template_id}
Delete content template by external IDDELETE /api/content/templates/external/{type}/{external_id}
List content templatesGET /api/content/templates
Look up a content templateGET /api/content/templates/{template_id}
Look up a content template by external IDGET /api/content/templates/external/{type}/{external_id}
Update content templatePUT /api/content/templates/{template_id}