openapi: 3.1.0 info: title: Consumer Research API version: '2.0' servers: - url: https://api.brandwatch.com components: securitySchemes: sec0: type: apiKey in: header name: Authorization x-bearer-format: bearer security: - sec0: [] paths: /oauth/token: get: summary: Authentication description: 'Generate a token for use with all API requests. All endpoints require an authentication token passed with the request.' operationId: authentication parameters: - name: username in: query description: username used to login to Consumer Research application required: true schema: type: string default: username@brandwatch.com - name: grant_type in: query required: true schema: type: string default: api-password - name: client_id in: query required: true schema: type: string default: brandwatch-api-client requestBody: content: application/json: schema: type: object required: - password properties: password: type: string description: password utilized to login to Consumer Research application responses: '200': description: '200' content: application/json: examples: Result: value: "{\n \"access_token\": \"aa000000-0aaa-0000-0a00-aa00a000a00a\",\n \"token_type\"\ : \"bearer\",\n \"expires_in\": 31535999,\n \"scope\": \"read trust write\"\n}" schema: type: object properties: access_token: type: string example: aa000000-0aaa-0000-0a00-aa00a000a00a token_type: type: string example: bearer expires_in: type: integer example: 31535999 default: 0 scope: type: string example: read trust write deprecated: false security: [] x-readme: code-samples: - language: curl code: "curl -X POST --data-urlencode 'password=[yourpassword]' \\\n 'https://api.brandwatch.com/oauth/token?username=[your@username.com]&grant_type=api-password&client_id=brandwatch-api-client'" samples-languages: - curl /user: get: summary: Current User description: 'Displaying information about who you are logged in as. Each Brandwatch User has associated metadata, including their permissions. The following call will list the current User:' operationId: retrieving-the-current-user responses: '200': description: '200' content: application/json: examples: Result: value: "{\n \"id\": 32987387,\n \"username\": \"example@example.com\",\n \"password\"\ : \"[protected]\",\n \"passwordConfirmation\": null,\n \"oldPassword\": null,\n\ \ \"passwordExpiryDate\": null,\n \"clientId\": 59580958,\n \"firstName\": \"John\"\ ,\n \"lastName\": \"Doe\",\n \"creationDate\": \"2016-06-29T16:19:17.744+0000\"\ ,\n \"enabled\": true,\n \"job\": \"Research analyst\",\n \"department\": \"Insights\"\ ,\n \"uiRole\": \"admin\",\n \"address\": \"1 Home Road, London, England\",\n \"\ phone\": \"\",\n \"mobile\": \"999-999-999\",\n \"messenger\": \"johndoe121\",\n\ \ \"apiRole\": [\n \"BW_BASIC_USER\",\n \"BW_ADMIN_USER\"\n ],\n \"ccAccess\"\ : \"no_access\",\n \"externalId\": null,\n \"tags\": {\n \"notify\": \"true\"\ \n },\n \"twoFactorAuthConfigured\": true,\n \"blocked\": false,\n \"products\"\ : [\n {\n \"code\": \"mybrandwatch\"\n }\n ]\n}" schema: type: object properties: id: type: integer example: 32987387 default: 0 username: type: string example: example@example.com password: type: string example: '[protected]' passwordConfirmation: {} oldPassword: {} passwordExpiryDate: {} clientId: type: integer example: 59580958 default: 0 firstName: type: string example: John lastName: type: string example: Doe creationDate: type: string example: 2016-06-29T16:19:17.744+0000 enabled: type: boolean example: true default: true job: type: string example: Research analyst department: type: string example: Insights uiRole: type: string example: admin address: type: string example: 1 Home Road, London, England phone: type: string example: '' mobile: type: string example: 999-999-999 messenger: type: string example: johndoe121 apiRole: type: array items: type: string example: BW_BASIC_USER ccAccess: type: string example: no_access externalId: {} tags: type: object properties: notify: type: string example: 'true' twoFactorAuthConfigured: type: boolean example: true default: true blocked: type: boolean example: false default: true products: type: array items: type: object properties: code: type: string example: mybrandwatch '401': description: '401' content: application/json: examples: Result: value: "{\n \"error\": \"unauthorized\",\n \"error_description\": \"Invalid authentication\ \ credentials found on request\"\n}" schema: type: object properties: error: type: string example: unauthorized error_description: type: string example: Invalid authentication credentials found on request '403': description: '403' content: text/plain: examples: Result: value: '' '404': description: '404' content: text/plain: examples: Result: value: '' deprecated: false x-readme: code-samples: - language: curl code: curl -X GET https://api.brandwatch.com/user samples-languages: - curl /client: get: summary: Current Client description: 'Displaying information about your Client. Your Brandwatch User will be contained within a Client, which is the entity that is billed. For example, if you work for ACME Robotics, your client will probably be called ACME Robotics, with your Users all as part of that Client. You can request information about your current Client as follows:' operationId: retrieving-the-current-client responses: '200': description: '200' content: application/json: examples: Result: value: "{\n \"id\": 343832672,\n \"name\": \"ACME Robotics\",\n \"parentId\"\ : -1,\n \"startDate\": \"0024-07-30T00:00:00.000+0000\",\n \"expiryDate\": null,\n\ \ \"website\": \"http://www.example.com\",\n \"address1\": \"1 Robotics Road\"\ ,\n \"address2\": \"Robotics Park\",\n \"address3\": \"\",\n \"country\"\ : \"USA\",\n \"postcode\": \"92328\",\n \"contactName\": \"No User\",\n \"\ contactEmail\": \"null@brandwatch.com\",\n \"contactTitle\": \"Wile E. Coyote\"\ ,\n \"contactTelephone\": \"0800-999-999-999\",\n \"contactMobile\": \"0800-991-991-991\"\ ,\n \"mentionArchiveSize\": 12,\n \"tags\": {\n \"ratelimit.limit\":\ \ \"600\",\n \"ratelimit.period\": \"10\",\n \"rules_only\": \"true\"\ ,\n \"shardName\": \"4\"\n },\n \"maximumSubscribedBrands\": 20000,\n\ \ \"pricingModel\": \"QB\",\n \"priceStructureId\": -1,\n \"priceStructureLineId\"\ : -1,\n \"maxUsers\": 2147483647,\n \"theme\": \"brandwatch\",\n \"owner\"\ : \"example@example.com\",\n \"isLegacy\": true,\n \"mentionBasedPricingMatrixLevel\"\ : -1,\n \"userInactivityTimeoutMinutes\": 1440,\n \"pitchClient\": false,\n\ \ \"shardName\": \"4\"\n}" schema: type: object properties: id: type: integer example: 343832672 default: 0 name: type: string example: ACME Robotics parentId: type: integer example: -1 default: 0 startDate: type: string example: 0024-07-30T00:00:00.000+0000 expiryDate: {} website: type: string example: http://www.example.com address1: type: string example: 1 Robotics Road address2: type: string example: Robotics Park address3: type: string example: '' country: type: string example: USA postcode: type: string example: '92328' contactName: type: string example: No User contactEmail: type: string example: null@brandwatch.com contactTitle: type: string example: Wile E. Coyote contactTelephone: type: string example: 0800-999-999-999 contactMobile: type: string example: 0800-991-991-991 mentionArchiveSize: type: integer example: 12 default: 0 tags: type: object properties: ratelimit.limit: type: string example: '600' ratelimit.period: type: string example: '10' rules_only: type: string example: 'true' shardName: type: string example: '4' maximumSubscribedBrands: type: integer example: 20000 default: 0 pricingModel: type: string example: QB priceStructureId: type: integer example: -1 default: 0 priceStructureLineId: type: integer example: -1 default: 0 maxUsers: type: integer example: 2147483647 default: 0 theme: type: string example: brandwatch owner: type: string example: example@example.com isLegacy: type: boolean example: true default: true mentionBasedPricingMatrixLevel: type: integer example: -1 default: 0 userInactivityTimeoutMinutes: type: integer example: 1440 default: 0 pitchClient: type: boolean example: false default: true shardName: type: string example: '4' '401': description: '401' content: application/json: examples: Result: value: "{\n \"error\": \"unauthorized\",\n \"error_description\": \"Invalid authentication\ \ credentials found on request\"\n}" schema: type: object properties: error: type: string example: unauthorized error_description: type: string example: Invalid authentication credentials found on request '403': description: '403' content: text/plain: examples: Result: value: '' '404': description: '404' content: text/plain: examples: Result: value: '' deprecated: false x-readme: code-samples: - language: curl code: curl -X GET https://api.brandwatch.com/client samples-languages: - curl x-readme: headers: [] explorer-enabled: true proxy-enabled: true x-readme-fauxas: true