{
  "openapi": "3.0.1",
  "info": {
    "title": "Social Listening API - Audience Intelligence, Pulsar",
    "description": "Export social listening and audience intelligence data from your own Pulsar account: TRAC searches, posts and reactions with impressions, engagement, reach and visibility, and CORE brands, profiles, post metrics and totals. Read only GraphQL queries. Bring your own token.",
    "version": "0.1",
    "x-build-id": "0G9npWnOiUdWR7Vqe"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~social-listening-audience-intelligence-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-social-listening-audience-intelligence-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/nabeelbaghoor~social-listening-audience-intelligence-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-social-listening-audience-intelligence-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/nabeelbaghoor~social-listening-audience-intelligence-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-social-listening-audience-intelligence-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "mode": {
            "title": "What to read",
            "enum": [
              "searches",
              "results",
              "brands",
              "profileMetrics",
              "profilePosts"
            ],
            "type": "string",
            "description": "TRAC searches lists every search on your Pulsar subdomain and needs nothing else, so it is the default. TRAC search results reads the posts and reactions of one or more searches. CORE brands and profiles lists the brands and social profiles you track. CORE profile metrics reads post, comment, engagement and impression totals or averages for a brand's profiles. CORE profile posts reads the metrics of each post of those profiles.",
            "default": "searches"
          },
          "sortBy": {
            "title": "Sort searches by",
            "enum": [
              "NAME",
              "VELOCITY_DAY"
            ],
            "type": "string",
            "description": "TRAC searches. Order by name or by daily velocity. Leave empty for the provider default."
          },
          "searchStatus": {
            "title": "Search status",
            "type": "array",
            "description": "TRAC searches. Keep only searches in these states: READY (collected and ready) or EDIT (still being set up). Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "READY",
                "EDIT"
              ],
              "enumTitles": [
                "Ready",
                "Edit"
              ]
            }
          },
          "realtimeStatus": {
            "title": "Realtime status",
            "type": "array",
            "description": "TRAC searches. Keep only searches whose realtime collection is STARTED, STOPPED or NOT_PRESENT. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "STARTED",
                "STOPPED",
                "NOT_PRESENT"
              ],
              "enumTitles": [
                "Started",
                "Stopped",
                "Not present"
              ]
            }
          },
          "searchIds": {
            "title": "Search IDs (search hashes)",
            "type": "array",
            "description": "TRAC search results. The search hashes to read, as the TRAC searches mode lists them or the Search Status page shows them. Each search is read separately so every row carries its search ID.",
            "items": {
              "type": "string"
            }
          },
          "contentType": {
            "title": "Content type",
            "enum": [
              "all",
              "POST",
              "REACTIONS"
            ],
            "type": "string",
            "description": "TRAC search results. Posts only, reactions (replies and comments) only, or both.",
            "default": "all"
          },
          "sources": {
            "title": "Sources",
            "type": "array",
            "description": "TRAC search results. Keep only these Pulsar sources, written as the platform names them, such as X, REDDIT, INSTAGRAM, PINTEREST, FACEBOOK_PAGE or PODCAST. Leave empty for all sources in the search.",
            "items": {
              "type": "string"
            }
          },
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "TRAC search results. Keep only results from these countries, as two-letter codes such as US or GB.",
            "items": {
              "type": "string"
            }
          },
          "hashtags": {
            "title": "Hashtag",
            "type": "string",
            "description": "TRAC search results. Keep only results with this hashtag, such as fashion (a leading # is removed)."
          },
          "brandId": {
            "title": "Brand ID",
            "type": "string",
            "description": "CORE profile metrics and profile posts. The numeric brand ID the CORE brands and profiles mode lists, such as 186."
          },
          "profileIds": {
            "title": "Profile IDs",
            "type": "array",
            "description": "CORE profile metrics and profile posts. The numeric IDs of the brand's profiles, as the CORE brands and profiles mode lists them.",
            "items": {
              "type": "string"
            }
          },
          "metric": {
            "title": "Aggregation",
            "enum": [
              "SUM",
              "AVG",
              "COUNT"
            ],
            "type": "string",
            "description": "CORE profile metrics. Sum, average or count the posts, comments, engagements and impressions over the date range.",
            "default": "SUM"
          },
          "splitByProfile": {
            "title": "One row per profile",
            "type": "boolean",
            "description": "CORE profile metrics. Read each profile separately instead of all profiles together.",
            "default": false
          },
          "dateFrom": {
            "title": "Start date",
            "type": "string",
            "description": "Data modes. The first day to read, as YYYY-MM-DD (UTC), or a full time such as 2026-09-01T00:00:00Z. Defaults to 6 days before the end date."
          },
          "dateTo": {
            "title": "End date",
            "type": "string",
            "description": "Data modes. The last day to read, as YYYY-MM-DD (UTC, read to 23:59:59), or a full time. Defaults to today."
          },
          "windowDays": {
            "title": "Days per request",
            "minimum": 0,
            "maximum": 366,
            "type": "integer",
            "description": "TRAC search results and CORE profile posts. The date range is read in windows of this many days, newest first, because each request returns one page of results. Smaller windows read further into busy searches; 0 reads the whole range in one request.",
            "default": 1
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "The most rows this run returns and charges for.",
            "default": 100
          },
          "requestsPerMinute": {
            "title": "Requests per minute",
            "minimum": 1,
            "maximum": 300,
            "type": "integer",
            "description": "Pacing. The provider allows 5 requests a second (300 a minute).",
            "default": 120
          },
          "apiKey": {
            "title": "API bearer token",
            "type": "string",
            "description": "Your own Pulsar API bearer token, for an API-enabled user on your subdomain, from your account manager or the API token page. Stored as a secret. You can instead set the DATA_API_KEY environment secret."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}