openapi: 3.1.0 info: title: CleverTap REST Campaigns Profiles API description: 'CleverTap customer engagement and retention REST API. The base URL is region-specific: replace {region} with your account''s region code (e.g. in1, us1, eu1, sg1, sk1, mec1). All requests must include X-CleverTap-Account-Id and X-CleverTap-Passcode headers. Rate limits: concurrent requests capped at 15 per account; campaign creation limited to 3 RPS. ' version: 1.0.0 contact: name: CleverTap Developers url: https://developer.clevertap.com/docs servers: - url: https://{region}.api.clevertap.com description: CleverTap region-specific API variables: region: default: in1 enum: - in1 - us1 - eu1 - sg1 - sk1 - mec1 - aps3 description: CleverTap data-center region security: - AccountId: [] Passcode: [] tags: - name: Profiles paths: /1/upload: post: summary: Upload user profiles or events description: 'Upload an array of records, each typed as "profile" or "event". Maximum 1000 records per call. ' operationId: upload tags: - Profiles requestBody: required: true content: application/json: schema: type: object required: - d properties: d: type: array maxItems: 1000 items: type: object required: - type properties: type: type: string enum: - profile - event identity: type: string FBID: type: string GPID: type: string objectId: type: string profileData: type: object evtName: type: string evtData: type: object ts: type: integer description: Unix epoch seconds responses: '200': description: Upload accepted content: application/json: schema: type: object properties: status: type: string processed: type: integer unprocessed: type: array items: type: object '429': description: Concurrency / rate limit exceeded /1/profile.json: get: summary: Get a user profile operationId: getProfile tags: - Profiles parameters: - in: query name: identity schema: type: string - in: query name: objectId schema: type: string responses: '200': description: User profile /1/profiles.json: post: summary: Search/query user profiles operationId: queryProfiles tags: - Profiles requestBody: required: true content: application/json: schema: type: object responses: '200': description: Profile query result /1/disassociate: post: summary: Disassociate (delete) user profiles operationId: disassociateProfile tags: - Profiles requestBody: required: true content: application/json: schema: type: object responses: '200': description: Disassociated components: securitySchemes: AccountId: type: apiKey in: header name: X-CleverTap-Account-Id description: CleverTap account identifier Passcode: type: apiKey in: header name: X-CleverTap-Passcode description: CleverTap account or user passcode