Listrak ContactListSubscription API

The ContactListSubscription API from Listrak — 3 operation(s) for contactlistsubscription.

Operations 3

GET /v1/ShortCode/{senderCodeId}/Contact/{phoneNumber}/PhoneList Get Contact List Collection #
POST /v1/ShortCode/{senderCodeId}/Contact/{phoneNumber}/PhoneList/{phoneListId} Subscribe Contact #
DELETE /v1/ShortCode/{senderCodeId}/ContactUnsubscribe/{phoneNumber}/PhoneList/{phoneListId} Unsubscribe Contact #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/listrak-contactlistsubscription-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

listrak-contactlistsubscription-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Listrak Contact List Subscription API
  version: v1
  x-logo:
    url: /SMS/Resources/Images/Logo.png
  description: 'Operations tagged ContactListSubscription across 2 of this provider''s published API definitions: listrak-sms-openapi.json, listrak-sms-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.listrak.com/sms
tags:
- name: ContactListSubscription
  description: A Contact List Subscription resource is used to retrieve and maintain SMS Subscriptions between SMS Lists.
paths:
  /v1/ShortCode/{senderCodeId}/Contact/{phoneNumber}/PhoneList:
    get:
      tags:
      - ContactListSubscription
      summary: Get Contact List Collection
      description: Retrieve a collection of SMS Lists that a contact belongs to along with subscription status.
      operationId: ContactListSubscription_GetContactListCollection
      parameters:
      - name: senderCodeId
        in: path
        description: Identifier used to specify the Sender Code.
        required: true
        schema:
          type: integer
          format: int32
      - name: phoneNumber
        in: path
        description: Phone number to idenify contact to retrieve data.
        required: true
        schema:
          type: string
      - name: cursor
        in: query
        description: Value indicating the page of data that's being retrieved. The default value is `Start`.
        required: false
        schema:
          type: string
      - name: count
        in: query
        description: Number of data members to be displayed per page. The default value is `1000` and the maximum value is `5000`.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Collection_ContactListSubscription'
              example:
                status: 200
                nextPageCursor: null
                data:
                - phoneListId: 0
                  subscriptionState: null
                  subscribeDate: null
                  unsubscribeDate: null
                  pendingDate: null
                  pendingDoubleOptIn: false
                  pendingAgeGate: false
        '400':
          description: BadRequest
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                status: 400
                error: ERROR_INVALID_PARAMETER
                message: An invalid value was supplied for {Parameter}.
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                status: 404
                error: ERROR_UNABLE_TO_LOCATE_RESOURCE
                message: Unable to locate a resource associated with the senderCodeId and phoneNumber supplied.
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                status: 401
                error: ERROR_UNAUTHORIZED
                message: Authorization was denied for this request.
      security:
      - OAuth 2: []
      x-code-samples:
      - lang: C#
        source: 'var client = new HttpClient();


          client.BaseAddress = new Uri("/");

          client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);


          var response = await client.GetAsync("v1/ShortCode/{senderCodeId}/Contact/{phoneNumber}/PhoneList");

          '
      - lang: PHP
        source: "$client = new \\GuzzleHttp\\Client([\n\t'base_uri' => '/'\n]);\n\n$res = $client->request('GET', 'v1/ShortCode/{senderCodeId}/Contact/{phoneNumber}/PhoneList',  [\n\t'headers' => ['Authorization' => 'Bearer ' . $accessToken]\n]);\n"
    servers:
    - url: https://api.listrak.com/sms
  /v1/ShortCode/{senderCodeId}/Contact/{phoneNumber}/PhoneList/{phoneListId}:
    post:
      tags:
      - ContactListSubscription
      summary: Subscribe Contact
      description: Subscribes a contact to an SMS list. This will only subscribe contacts that already exist on the sender code. If the contact does not already exist on the sender code, please use the Create Contact call to create and subscribe the contact.
      operationId: ContactListSubscription_PostContactListSubscription
      parameters:
      - name: senderCodeId
        in: path
        description: Identifier used to specify the sender Code.
        required: true
        schema:
          type: integer
          format: int32
      - name: phoneNumber
        in: path
        description: Phone number to identify contact to subscribe.
        required: true
        schema:
          type: string
      - name: phoneListId
        in: path
        description: Identifier to determine which SMS List to subscribe contact.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '400':
          description: BadRequest
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                status: 400
                error: ERROR_INVALID_PARAMETER
                message: An invalid value was supplied for {Parameter}.
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCreated'
              example:
                status: 201
                resourceId: '{ResourceId}'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                status: 401
                error: ERROR_UNAUTHORIZED
                message: Authorization was denied for this request.
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                status: 404
                error: ERROR_UNABLE_TO_LOCATE_RESOURCE
                message: Unable to locate a resource associated with the senderCodeId, phoneNumber, and phoneListId supplied.
      security:
      - OAuth 2: []
      x-code-samples:
      - lang: C#
        source: 'var client = new HttpClient();


          client.BaseAddress = new Uri("/");

          client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);


          var response = await client.PostAsJsonAsync("v1/ShortCode/{senderCodeId}/Contact/{phoneNumber}/PhoneList/{phoneListId}", new

          );

          '
      - lang: PHP
        source: "$client = new \\GuzzleHttp\\Client([\n\t'base_uri' => '/'\n]);\n\n$res = $client->request('POST', 'v1/ShortCode/{senderCodeId}/Contact/{phoneNumber}/PhoneList/{phoneListId}',  [\n\t'headers' => ['Authorization' => 'Bearer ' . $accessToken],\n\t'json' => $jsonBody\n]);\n"
    servers:
    - url: https://api.listrak.com/sms
  /v1/ShortCode/{senderCodeId}/ContactUnsubscribe/{phoneNumber}/PhoneList/{phoneListId}:
    delete:
      tags:
      - ContactListSubscription
      summary: Unsubscribe Contact
      description: Unsubscribes a contact from an SMS List. This will only unsubscribe contacts that already exist on the Sender Code, and exist on the SMS List.
      operationId: ContactListSubscription_DeleteUnsubscribeContactListSubscription
      parameters:
      - name: senderCodeId
        in: path
        description: Identifier used to specify the Sender Code.
        required: true
        schema:
          type: integer
          format: int32
      - name: phoneNumber
        in: path
        description: Phone number to identify contact to unsubscribe.
        required: true
        schema:
          type: string
      - name: phoneListId
        in: path
        description: Identifier to determine which SMS List to unsubscribe contact.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceDeleted'
              example:
                status: 200
        '400':
          description: BadRequest
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                status: 400
                error: ERROR_INVALID_PARAMETER
                message: An invalid value was supplied for {Parameter}.
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                status: 404
                error: ERROR_UNABLE_TO_LOCATE_RESOURCE
                message: Unable to locate a resource associated with the senderCodeId, phoneNumber, and phoneListId supplied.
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                status: 401
                error: ERROR_UNAUTHORIZED
                message: Authorization was denied for this request.
      security:
      - OAuth 2: []
      x-code-samples:
      - lang: C#
        source: 'var client = new HttpClient();


          client.BaseAddress = new Uri("/");

          client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);


          var response = await client.DeleteAsync("v1/ShortCode/{senderCodeId}/ContactUnsubscribe/{phoneNumber}/PhoneList/{phoneListId}");

          '
      - lang: PHP
        source: "$client = new \\GuzzleHttp\\Client([\n\t'base_uri' => '/'\n]);\n\n$res = $client->request('DELETE', 'v1/ShortCode/{senderCodeId}/ContactUnsubscribe/{phoneNumber}/PhoneList/{phoneListId}',  [\n\t'headers' => ['Authorization' => 'Bearer ' . $accessToken]\n]);\n"
    servers:
    - url: https://api.listrak.com/sms
components:
  schemas:
    ResourceCreated:
      type: object
      properties:
        status:
          format: int32
          description: HTTP status code.
          type: integer
        resourceId:
          description: An identifier used to locate a resource.
          type: string
    Collection_ContactListSubscription:
      type: object
      properties:
        status:
          format: int32
          description: HTTP status code.
          type: integer
        data:
          description: Collection of return data from the given call.
          type: array
          items:
            $ref: '#/components/schemas/ContactListSubscription'
    ResourceDeleted:
      type: object
      properties:
        status:
          format: int32
          description: HTTP status code.
          type: integer
    ContactListSubscription:
      description: A Contact List Subscription Resource.
      type: object
      properties:
        phoneListId:
          format: int32
          description: Identifier for a Phone List.
          type: integer
        subscriptionState:
          description: The State of a Contact's Subscription.
          type: string
        subscribeDate:
          format: date-time
          description: The Date a Contact Subscribed to a List.
          type:
          - string
          - 'null'
        unsubscribeDate:
          format: date-time
          description: The Date a Contact Unsubscribed from a List.
          type:
          - string
          - 'null'
        pendingDate:
          format: date-time
          description: The Date a Contact entered a pending state on a List.
          type:
          - string
          - 'null'
        pendingDoubleOptIn:
          description: Flag for if a contact is pending a double opt-in subscription.
          type: boolean
        pendingAgeGate:
          description: Flag for if a contact is pending an age gate response
          type: boolean
    Error:
      type: object
      properties:
        status:
          format: int32
          description: HTTP status code.
          type: integer
        error:
          description: Error code indicating what error has occured.
          type: string
        message:
          description: Message describing the status and the error that occurred.
          type: string
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://auth.listrak.com/OAuth2/Token
          scopes: {}
x-refined-from:
- listrak-sms-openapi.json
- listrak-sms-openapi.yml
x-amazon-apigateway-security-policy: TLS_1_0
x-tagGroups:
- name: API Reference
  tags:
  - Events
  - EventConfigurations