Archive Partners API

Archive API allows you to access enriched details about your community. The Archive Community is representative of the social profiles that are captured and tracked through an Archive Community CDP.

This detailed information ranges from profile information to post engagement metrics. This data has been used for enriching ambassador/loyalty programs, automating marketing flows, and performance measurement.

GraphQL

Archive API is built on GraphQL query language: graphql.org. If you already have an API token, you can try it with our API explorer.

Contact

API Support

[email protected]

API Endpoints
POST: https://app.archive.com/api/v1
Headers
# Get token from our team
Authorization: Bearer <YOUR_TOKEN_HERE>
# If you have multiple shops you need to pass Shop ID in header
SHOP-ID: 123

Authentication

All queries require a valid access token. In order to get your access token, contact support@archive.com. Include your token as an Authorization header on all queries.

Webhooks

You can receive webhooks for specific events. List of available events: WebhookSubscriptionsEventsEnum

To start receiving webhooks, you need to subscribe to an event with webhookSubscriptionCreate mutation. Once subscribed, Archive will send MediaItem object with attributes in underscore style to callback_url every time there is an event trigger.

Queries

creator

Description

Returns a Creator resource by ID.

Response

Returns a Creator

Arguments
Name Description
id - Int
accountName - String
provider - IntegrationProviderEnum
fallback - Boolean

Example

Query
query creator(
  $id: Int,
  $accountName: String,
  $provider: IntegrationProviderEnum,
  $fallback: Boolean
) {
  creator(
    id: $id,
    accountName: $accountName,
    provider: $provider,
    fallback: $fallback
  ) {
    accountName
    authorized
    avatarUrl
    biography
    followersCount
    followingCount
    id
    labels
    provider
    verified
  }
}
Variables
{
  "id": 987,
  "accountName": "abc123",
  "provider": "INSTAGRAM",
  "fallback": false
}
Response
{
  "data": {
    "creator": {
      "accountName": "xyz789",
      "authorized": false,
      "avatarUrl": "abc123",
      "biography": "xyz789",
      "followersCount": 987,
      "followingCount": 987,
      "id": 123,
      "labels": ["abc123"],
      "provider": "INSTAGRAM",
      "verified": false
    }
  }
}

creatorAudienceReport

Description

Returns a Creator audience report.

Response

Returns an AudienceReportResponse!

Arguments
Name Description
id - Int
accountName - String
provider - IntegrationProviderEnum

Example

Query
query creatorAudienceReport(
  $id: Int,
  $accountName: String,
  $provider: IntegrationProviderEnum
) {
  creatorAudienceReport(
    id: $id,
    accountName: $accountName,
    provider: $provider
  ) {
    accountName
    audienceReport
    id
    provider
  }
}
Variables
{
  "id": 123,
  "accountName": "xyz789",
  "provider": "INSTAGRAM"
}
Response
{
  "data": {
    "creatorAudienceReport": {
      "accountName": "xyz789",
      "audienceReport": {},
      "id": 123,
      "provider": "INSTAGRAM"
    }
  }
}

creatorPosts

Description

Returns a Creator posts.

Response

Returns a MediaItemConnection!

Arguments
Name Description
id - Int
accountName - String
provider - IntegrationProviderEnum
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query creatorPosts(
  $id: Int,
  $accountName: String,
  $provider: IntegrationProviderEnum,
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  creatorPosts(
    id: $id,
    accountName: $accountName,
    provider: $provider,
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    additionalFilters {
      accountNames
      accountTypes
      audienceTopAges
      audienceTopGender
      avgCommissionRate {
        from
        to
      }
      avgEcLivePlayCount {
        from
        to
      }
      avgEcVideoPlayCount {
        from
        to
      }
      brandsNames
      contentTypes
      creatorAge
      creatorEmail
      creatorGender
      creatorSimilarSearch
      crmInstagramWhitelistingEligibility
      crmInstagramWhitelistingStatus
      crmTiktokWhitelistingEligibility
      crmTiktokWhitelistingStatus
      engagement {
        field
        range {
          from
          to
        }
      }
      followersCount {
        from
        to
      }
      gmvAmount {
        from
        to
      }
      ids
      importType
      itemTypes
      mediaItemsUsageRightsStatus
      platform
      postingActivity
      sentiment
      shopifyProductsIds
      sourcesIds
      superSearch {
        fileName
        imageUrl
        mode
        searchQuery
        similarMediaContentId
      }
      tagsIds
      tagsNames
      takenAt {
        from
        to
      }
      tiktokAffiliate
      unitsSold {
        from
        to
      }
      verified
    }
    edges {
      cursor
      node {
        caption
        contents {
          contentUrl
          displayUrl
          height
          id
          type
          width
        }
        creator {
          accountName
          authorized
          avatarUrl
          biography
          followersCount
          followingCount
          id
          labels
          provider
          verified
        }
        engagement {
          at
          commentCount
          likeCount
          playCount
          viewCount
        }
        engagementHistory {
          at
          commentCount
          likeCount
          playCount
          viewCount
        }
        externalId
        hashtags
        id
        location {
          address
          city
          lat
          lng
          name
        }
        mentions
        provider
        takenAt
        type
        usageRightsStatus
      }
    }
    filtersQuery
    nodes {
      caption
      contents {
        contentUrl
        displayUrl
        height
        id
        type
        width
      }
      creator {
        accountName
        authorized
        avatarUrl
        biography
        followersCount
        followingCount
        id
        labels
        provider
        verified
      }
      engagement {
        at
        commentCount
        likeCount
        playCount
        viewCount
      }
      engagementHistory {
        at
        commentCount
        likeCount
        playCount
        viewCount
      }
      externalId
      hashtags
      id
      location {
        address
        city
        lat
        lng
        name
      }
      mentions
      provider
      takenAt
      type
      usageRightsStatus
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
    totalCount
  }
}
Variables
{
  "id": 987,
  "accountName": "abc123",
  "provider": "INSTAGRAM",
  "after": "xyz789",
  "before": "xyz789",
  "first": 987,
  "last": 123
}
Response
{
  "data": {
    "creatorPosts": {
      "additionalFilters": AllFilters,
      "edges": [MediaItemEdge],
      "filtersQuery": {},
      "nodes": [MediaItem],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

getWorkspace

Description

Gets workspace info

Response

Returns a Workspace!

Example

Query
query getWorkspace {
  getWorkspace {
    hashtags {
      id
      name
      provider
    }
    id
    mentions {
      id
      name
      provider
    }
    name
  }
}
Response
{
  "data": {
    "getWorkspace": {
      "hashtags": [Hashtag],
      "id": 4,
      "mentions": [Mention],
      "name": "xyz789"
    }
  }
}

items

Description

Gets portion of media items.

Response

Returns a MediaItemConnection!

Arguments
Name Description
filter - Filter
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query items(
  $filter: Filter,
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  items(
    filter: $filter,
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    additionalFilters {
      accountNames
      accountTypes
      audienceTopAges
      audienceTopGender
      avgCommissionRate {
        from
        to
      }
      avgEcLivePlayCount {
        from
        to
      }
      avgEcVideoPlayCount {
        from
        to
      }
      brandsNames
      contentTypes
      creatorAge
      creatorEmail
      creatorGender
      creatorSimilarSearch
      crmInstagramWhitelistingEligibility
      crmInstagramWhitelistingStatus
      crmTiktokWhitelistingEligibility
      crmTiktokWhitelistingStatus
      engagement {
        field
        range {
          from
          to
        }
      }
      followersCount {
        from
        to
      }
      gmvAmount {
        from
        to
      }
      ids
      importType
      itemTypes
      mediaItemsUsageRightsStatus
      platform
      postingActivity
      sentiment
      shopifyProductsIds
      sourcesIds
      superSearch {
        fileName
        imageUrl
        mode
        searchQuery
        similarMediaContentId
      }
      tagsIds
      tagsNames
      takenAt {
        from
        to
      }
      tiktokAffiliate
      unitsSold {
        from
        to
      }
      verified
    }
    edges {
      cursor
      node {
        caption
        contents {
          contentUrl
          displayUrl
          height
          id
          type
          width
        }
        creator {
          accountName
          authorized
          avatarUrl
          biography
          followersCount
          followingCount
          id
          labels
          provider
          verified
        }
        engagement {
          at
          commentCount
          likeCount
          playCount
          viewCount
        }
        engagementHistory {
          at
          commentCount
          likeCount
          playCount
          viewCount
        }
        externalId
        hashtags
        id
        location {
          address
          city
          lat
          lng
          name
        }
        mentions
        provider
        takenAt
        type
        usageRightsStatus
      }
    }
    filtersQuery
    nodes {
      caption
      contents {
        contentUrl
        displayUrl
        height
        id
        type
        width
      }
      creator {
        accountName
        authorized
        avatarUrl
        biography
        followersCount
        followingCount
        id
        labels
        provider
        verified
      }
      engagement {
        at
        commentCount
        likeCount
        playCount
        viewCount
      }
      engagementHistory {
        at
        commentCount
        likeCount
        playCount
        viewCount
      }
      externalId
      hashtags
      id
      location {
        address
        city
        lat
        lng
        name
      }
      mentions
      provider
      takenAt
      type
      usageRightsStatus
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
    totalCount
  }
}
Variables
{
  "filter": Filter,
  "after": "xyz789",
  "before": "abc123",
  "first": 123,
  "last": 123
}
Response
{
  "data": {
    "items": {
      "additionalFilters": AllFilters,
      "edges": [MediaItemEdge],
      "filtersQuery": {},
      "nodes": [MediaItem],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

listWorkspaces

Description

Gets workspaces

Response

Returns [Workspace!]!

Example

Query
query listWorkspaces {
  listWorkspaces {
    hashtags {
      id
      name
      provider
    }
    id
    mentions {
      id
      name
      provider
    }
    name
  }
}
Response
{
  "data": {
    "listWorkspaces": [
      {
        "hashtags": [Hashtag],
        "id": "4",
        "mentions": [Mention],
        "name": "abc123"
      }
    ]
  }
}

mediaItem

Description

Returns a MediaItem resource by ID or externalID.

Response

Returns a MediaItem

Arguments
Name Description
id - String
externalId - String

Example

Query
query mediaItem(
  $id: String,
  $externalId: String
) {
  mediaItem(
    id: $id,
    externalId: $externalId
  ) {
    caption
    contents {
      contentUrl
      displayUrl
      height
      id
      type
      width
    }
    creator {
      accountName
      authorized
      avatarUrl
      biography
      followersCount
      followingCount
      id
      labels
      provider
      verified
    }
    engagement {
      at
      commentCount
      likeCount
      playCount
      viewCount
    }
    engagementHistory {
      at
      commentCount
      likeCount
      playCount
      viewCount
    }
    externalId
    hashtags
    id
    location {
      address
      city
      lat
      lng
      name
    }
    mentions
    provider
    takenAt
    type
    usageRightsStatus
  }
}
Variables
{
  "id": "xyz789",
  "externalId": "abc123"
}
Response
{
  "data": {
    "mediaItem": {
      "caption": "xyz789",
      "contents": [MediaContent],
      "creator": Creator,
      "engagement": [MediaItemsEngagement],
      "engagementHistory": [MediaItemsEngagement],
      "externalId": "abc123",
      "hashtags": ["xyz789"],
      "id": "4",
      "location": MediaItemLocation,
      "mentions": ["xyz789"],
      "provider": "INSTAGRAM",
      "takenAt": ISO8601DateTime,
      "type": "POST",
      "usageRightsStatus": "REQUESTED"
    }
  }
}

mediaItems

Description

Gets portion of media items.

Response

Returns a MediaItemConnection!

Arguments
Name Description
filter - Filter
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query mediaItems(
  $filter: Filter,
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  mediaItems(
    filter: $filter,
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    additionalFilters {
      accountNames
      accountTypes
      audienceTopAges
      audienceTopGender
      avgCommissionRate {
        from
        to
      }
      avgEcLivePlayCount {
        from
        to
      }
      avgEcVideoPlayCount {
        from
        to
      }
      brandsNames
      contentTypes
      creatorAge
      creatorEmail
      creatorGender
      creatorSimilarSearch
      crmInstagramWhitelistingEligibility
      crmInstagramWhitelistingStatus
      crmTiktokWhitelistingEligibility
      crmTiktokWhitelistingStatus
      engagement {
        field
        range {
          from
          to
        }
      }
      followersCount {
        from
        to
      }
      gmvAmount {
        from
        to
      }
      ids
      importType
      itemTypes
      mediaItemsUsageRightsStatus
      platform
      postingActivity
      sentiment
      shopifyProductsIds
      sourcesIds
      superSearch {
        fileName
        imageUrl
        mode
        searchQuery
        similarMediaContentId
      }
      tagsIds
      tagsNames
      takenAt {
        from
        to
      }
      tiktokAffiliate
      unitsSold {
        from
        to
      }
      verified
    }
    edges {
      cursor
      node {
        caption
        contents {
          contentUrl
          displayUrl
          height
          id
          type
          width
        }
        creator {
          accountName
          authorized
          avatarUrl
          biography
          followersCount
          followingCount
          id
          labels
          provider
          verified
        }
        engagement {
          at
          commentCount
          likeCount
          playCount
          viewCount
        }
        engagementHistory {
          at
          commentCount
          likeCount
          playCount
          viewCount
        }
        externalId
        hashtags
        id
        location {
          address
          city
          lat
          lng
          name
        }
        mentions
        provider
        takenAt
        type
        usageRightsStatus
      }
    }
    filtersQuery
    nodes {
      caption
      contents {
        contentUrl
        displayUrl
        height
        id
        type
        width
      }
      creator {
        accountName
        authorized
        avatarUrl
        biography
        followersCount
        followingCount
        id
        labels
        provider
        verified
      }
      engagement {
        at
        commentCount
        likeCount
        playCount
        viewCount
      }
      engagementHistory {
        at
        commentCount
        likeCount
        playCount
        viewCount
      }
      externalId
      hashtags
      id
      location {
        address
        city
        lat
        lng
        name
      }
      mentions
      provider
      takenAt
      type
      usageRightsStatus
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
    totalCount
  }
}
Variables
{
  "filter": Filter,
  "after": "abc123",
  "before": "xyz789",
  "first": 123,
  "last": 987
}
Response
{
  "data": {
    "mediaItems": {
      "additionalFilters": AllFilters,
      "edges": [MediaItemEdge],
      "filtersQuery": {},
      "nodes": [MediaItem],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

webhookSubscriptions

Description

Gets list of webhook subscriptions by event.

Response

Returns [WebhookSubscription!]

Arguments
Name Description
event - WebhookSubscriptionsEventsEnum

Example

Query
query webhookSubscriptions($event: WebhookSubscriptionsEventsEnum) {
  webhookSubscriptions(event: $event) {
    callbackUrl
    event
    id
    version
  }
}
Variables
{"event": "MEDIA_ITEM_CREATED"}
Response
{
  "data": {
    "webhookSubscriptions": [
      {
        "callbackUrl": "xyz789",
        "event": "MEDIA_ITEM_CREATED",
        "id": "4",
        "version": "v0"
      }
    ]
  }
}

Mutations

createWorkspace

Description

Create Workspace.

Response

Returns a Workspace

Arguments
Name Description
name - String!
instagramHashtags - [String!]
instagramMentions - [String!]
tiktokHashtags - [String!]
tiktokMentions - [String!]

Example

Query
mutation createWorkspace(
  $name: String!,
  $instagramHashtags: [String!],
  $instagramMentions: [String!],
  $tiktokHashtags: [String!],
  $tiktokMentions: [String!]
) {
  createWorkspace(
    name: $name,
    instagramHashtags: $instagramHashtags,
    instagramMentions: $instagramMentions,
    tiktokHashtags: $tiktokHashtags,
    tiktokMentions: $tiktokMentions
  ) {
    hashtags {
      id
      name
      provider
    }
    id
    mentions {
      id
      name
      provider
    }
    name
  }
}
Variables
{
  "name": "xyz789",
  "instagramHashtags": ["xyz789"],
  "instagramMentions": ["abc123"],
  "tiktokHashtags": ["abc123"],
  "tiktokMentions": ["abc123"]
}
Response
{
  "data": {
    "createWorkspace": {
      "hashtags": [Hashtag],
      "id": 4,
      "mentions": [Mention],
      "name": "abc123"
    }
  }
}

mediaItemAddToCollection

Description

Add media item to collection.

Response

Returns a Boolean

Arguments
Name Description
id - ID!
collectionId - ID
collectionName - String

Example

Query
mutation mediaItemAddToCollection(
  $id: ID!,
  $collectionId: ID,
  $collectionName: String
) {
  mediaItemAddToCollection(
    id: $id,
    collectionId: $collectionId,
    collectionName: $collectionName
  )
}
Variables
{
  "id": "4",
  "collectionId": 4,
  "collectionName": "xyz789"
}
Response
{"data": {"mediaItemAddToCollection": true}}

sendInstagramMessage

Description

Send Instagram direct message.

Response

Returns a Boolean!

Arguments
Name Description
accountName - String!
message - String!

Example

Query
mutation sendInstagramMessage(
  $accountName: String!,
  $message: String!
) {
  sendInstagramMessage(
    accountName: $accountName,
    message: $message
  )
}
Variables
{
  "accountName": "abc123",
  "message": "abc123"
}
Response
{"data": {"sendInstagramMessage": false}}

updateWorkspace

Description

Update Workspace.

Response

Returns a Workspace

Arguments
Name Description
name - String
instagramHashtags - [String!]
instagramMentions - [String!]
tiktokHashtags - [String!]
tiktokMentions - [String!]

Example

Query
mutation updateWorkspace(
  $name: String,
  $instagramHashtags: [String!],
  $instagramMentions: [String!],
  $tiktokHashtags: [String!],
  $tiktokMentions: [String!]
) {
  updateWorkspace(
    name: $name,
    instagramHashtags: $instagramHashtags,
    instagramMentions: $instagramMentions,
    tiktokHashtags: $tiktokHashtags,
    tiktokMentions: $tiktokMentions
  ) {
    hashtags {
      id
      name
      provider
    }
    id
    mentions {
      id
      name
      provider
    }
    name
  }
}
Variables
{
  "name": "abc123",
  "instagramHashtags": ["abc123"],
  "instagramMentions": ["xyz789"],
  "tiktokHashtags": ["abc123"],
  "tiktokMentions": ["abc123"]
}
Response
{
  "data": {
    "updateWorkspace": {
      "hashtags": [Hashtag],
      "id": 4,
      "mentions": [Mention],
      "name": "xyz789"
    }
  }
}

webhookSubscriptionCreate

Description

Creates a new webhook subscription.

Response

Returns a WebhookSubscription

Arguments
Name Description
version - WebhookSubscriptionsVersionsEnum!
event - WebhookSubscriptionsEventsEnum!
callbackUrl - String!

Example

Query
mutation webhookSubscriptionCreate(
  $version: WebhookSubscriptionsVersionsEnum!,
  $event: WebhookSubscriptionsEventsEnum!,
  $callbackUrl: String!
) {
  webhookSubscriptionCreate(
    version: $version,
    event: $event,
    callbackUrl: $callbackUrl
  ) {
    callbackUrl
    event
    id
    version
  }
}
Variables
{
  "version": "v0",
  "event": "MEDIA_ITEM_CREATED",
  "callbackUrl": "abc123"
}
Response
{
  "data": {
    "webhookSubscriptionCreate": {
      "callbackUrl": "abc123",
      "event": "MEDIA_ITEM_CREATED",
      "id": "4",
      "version": "v0"
    }
  }
}

webhookSubscriptionDelete

Description

Deletes a webhook subscription.

Response

Returns a Boolean

Arguments
Name Description
event - WebhookSubscriptionsEventsEnum!

Example

Query
mutation webhookSubscriptionDelete($event: WebhookSubscriptionsEventsEnum!) {
  webhookSubscriptionDelete(event: $event)
}
Variables
{"event": "MEDIA_ITEM_CREATED"}
Response
{"data": {"webhookSubscriptionDelete": true}}

Types

AccountTypeEnum

Values
Enum Value Description

instagram__personal

instagram__creator

instagram__business

Example
"instagram__personal"

AllFilters

Fields
Field Name Description
accountNames - [String!] Influencer Account Names
accountTypes - [AccountTypeEnum!] Account Types
audienceTopAges - [String!] Audience top ages
audienceTopGender - String Audience top gender
avgCommissionRate - FilterIntegerRange Average commission rate
avgEcLivePlayCount - FilterIntegerRange Average viewers per LIVE
avgEcVideoPlayCount - FilterIntegerRange Average views per video
brandsNames - [String!] Brands names
contentTypes - [FilterContentTypeEnum!] Content Types of the items
creatorAge - [FilterCreatorAgeEnum!]
creatorEmail - [Boolean!]
creatorGender - [FilterCreatorGenderEnum!]
creatorSimilarSearch - [String!]
crmInstagramWhitelistingEligibility - WhitelistingEligibilityEnum Instagram Whitelisting Eligibility
crmInstagramWhitelistingStatus - [FilterContractStatusEnum!] CRM Instagram Whitelisting Contract status
crmTiktokWhitelistingEligibility - WhitelistingEligibilityEnum TikTok Whitelisting Eligibility
crmTiktokWhitelistingStatus - [FilterContractStatusEnum!] CRM TikTok Whitelisting Contract status
engagement - [FilterEngagementRange!]
followersCount - FilterIntegerRange
gmvAmount - FilterIntegerRange GMV amount
ids - [ID!] ShopItem IDs
importType - ImportTypeEnum
itemTypes - [FilterMediaItemTypeEnum!] Types of the items
mediaItemsUsageRightsStatus - [MediaItemsUsageRightsStatusEnum!] Usage Rights status Replaced by crm
platform - PlatformEnum
postingActivity - FilterPostingActivityEnum
sentiment - [SentimentValueEnum!]
shopifyProductsIds - [ID!] Shopify Products IDs
sourcesIds - [ID!] Sources ids
superSearch - FilterSuperSearch
tagsIds - [ID!] Tags ids
tagsNames - [String!] Tags names
takenAt - FilterDateRange Taken At Date Range
tiktokAffiliate - Boolean
unitsSold - FilterIntegerRange Units sold
verified - [Boolean!] Only verified influencers
Example
{
  "accountNames": ["abc123"],
  "accountTypes": ["instagram__personal"],
  "audienceTopAges": ["abc123"],
  "audienceTopGender": "abc123",
  "avgCommissionRate": FilterIntegerRange,
  "avgEcLivePlayCount": FilterIntegerRange,
  "avgEcVideoPlayCount": FilterIntegerRange,
  "brandsNames": ["abc123"],
  "contentTypes": ["IMAGE"],
  "creatorAge": ["age13_17"],
  "creatorEmail": [true],
  "creatorGender": ["Male"],
  "creatorSimilarSearch": ["abc123"],
  "crmInstagramWhitelistingEligibility": "ALL",
  "crmInstagramWhitelistingStatus": ["Approved"],
  "crmTiktokWhitelistingEligibility": "ALL",
  "crmTiktokWhitelistingStatus": ["Approved"],
  "engagement": [FilterEngagementRange],
  "followersCount": FilterIntegerRange,
  "gmvAmount": FilterIntegerRange,
  "ids": [4],
  "importType": "manual",
  "itemTypes": ["POST"],
  "mediaItemsUsageRightsStatus": ["requested"],
  "platform": "instagram",
  "postingActivity": "posted",
  "sentiment": ["negative"],
  "shopifyProductsIds": ["4"],
  "sourcesIds": [4],
  "superSearch": FilterSuperSearch,
  "tagsIds": [4],
  "tagsNames": ["xyz789"],
  "takenAt": FilterDateRange,
  "tiktokAffiliate": true,
  "unitsSold": FilterIntegerRange,
  "verified": [true]
}

AudienceReportResponse

Fields
Field Name Description
accountName - String! Name of creator account on Instagram or TikTok.
audienceReport - JSON! Audience report.
id - Int! Creator's unique identifier in Archive's system.
provider - IntegrationProviderEnum! Platform where creator exists. INSTAGRAM or TIKTOK.
Example
{
  "accountName": "abc123",
  "audienceReport": {},
  "id": 987,
  "provider": "INSTAGRAM"
}

Boolean

Description

Represents true or false values.

Example
true

Creator

Fields
Field Name Description
accountName - String! Name of creator account on Instagram or TikTok.
authorized - Boolean! Whether the creator has been authorized.
avatarUrl - String URL of the creator's profile picture.
biography - String Creator's bio (if available).
followersCount - Int Number of creator's followers.
followingCount - Int Number of accounts creator is following.
id - Int! Unique identifier in Archive's system.
labels - [String!] Labels assigned to creator.
provider - IntegrationProviderEnum! Platform where creator exists. INSTAGRAM or TIKTOK.
verified - Boolean Whether the creator is verified by the platform.
Example
{
  "accountName": "xyz789",
  "authorized": true,
  "avatarUrl": "abc123",
  "biography": "abc123",
  "followersCount": 987,
  "followingCount": 987,
  "id": 987,
  "labels": ["xyz789"],
  "provider": "INSTAGRAM",
  "verified": false
}

EngagementFieldEnum

Values
Enum Value Description

like_count

comment_count

merged_view_play_count

share_count

engagements_rate

impressions_rate

earned_media_value

Example
"like_count"

Filter

Fields
Input Field Description
itemProviders - [IntegrationProviderEnum!] Types of the items
itemTypes - [TypesEnum!] Types of the items
itemTakenAt - FilterDateRangeInput Taken At Date Range
creatorAccountName - [String!] Creator Account Names. Default = []
creatorVerified - [Boolean!] Only verified influencers
creatorLabels - [String!] Creator labels. Default = []
usageRightsStatus - [StatusesEnum!] Usage Rights request status
Example
{
  "itemProviders": ["INSTAGRAM"],
  "itemTypes": ["POST"],
  "itemTakenAt": FilterDateRangeInput,
  "creatorAccountName": ["abc123"],
  "creatorVerified": [false],
  "creatorLabels": ["xyz789"],
  "usageRightsStatus": ["REQUESTED"]
}

FilterContentTypeEnum

Values
Enum Value Description

IMAGE

VIDEO

Example
"IMAGE"

FilterContractStatusEnum

Values
Enum Value Description

Approved

Expired

In_Queue

Rejected

Requested

not_requested

Example
"Approved"

FilterCreatorAgeEnum

Values
Enum Value Description

age13_17

age18_24

age25_34

age35_44

age45_54

age55_64

age65

Example
"age13_17"

FilterCreatorGenderEnum

Values
Enum Value Description

Male

Female

Example
"Male"

FilterDateRange

Fields
Field Name Description
from - ISO8601DateTime
to - ISO8601DateTime
Example
{
  "from": ISO8601DateTime,
  "to": ISO8601DateTime
}

FilterDateRangeInput

Fields
Input Field Description
from - ISO8601DateTime
to - ISO8601DateTime
Example
{
  "from": ISO8601DateTime,
  "to": ISO8601DateTime
}

FilterEngagementRange

Fields
Field Name Description
field - EngagementFieldEnum
range - FilterIntegerRange
Example
{"field": "like_count", "range": FilterIntegerRange}

FilterIntegerRange

Fields
Field Name Description
from - Int
to - Int
Example
{"from": 123, "to": 123}

FilterMediaItemTypeEnum

Values
Enum Value Description

POST

REEL

STORY

TIKTOK

YOUTUBE

YOUTUBE_SHORT

Example
"POST"

FilterPostingActivityEnum

Values
Enum Value Description

posted

not_posted

Example
"posted"

FilterSuperSearch

Fields
Field Name Description
fileName - String Name the image to use for search
imageUrl - String URL of the image to use for search
mode - SuperSearchModeEnum SuperSearch mode
searchQuery - String SuperSearch text query
similarMediaContentId - ID ID of similar media content item for SuperSearch
Example
{
  "fileName": "abc123",
  "imageUrl": "xyz789",
  "mode": "embedding__content",
  "searchQuery": "abc123",
  "similarMediaContentId": "4"
}

Hashtag

Fields
Field Name Description
id - ID!
name - String!
provider - IntegrationProviderEnum!
Example
{
  "id": "4",
  "name": "abc123",
  "provider": "INSTAGRAM"
}

ID

Description

Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "VXNlci0xMA==") or integer (such as 4) input value will be accepted as an ID.

Example
"4"

ISO8601DateTime

Description

An ISO 8601-encoded datetime

Example
ISO8601DateTime

ImportTypeEnum

Values
Enum Value Description

manual

automatic

Example
"manual"

Int

Description

Represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
123

IntegrationProviderEnum

Values
Enum Value Description

INSTAGRAM

TIKTOK

INTERNAL

YOUTUBE

Example
"INSTAGRAM"

JSON

Description

Represents untyped JSON

Example
{}

MediaContent

Fields
Field Name Description
contentUrl - String URL of image or video file.
displayUrl - String URL of video thumbnail. Will be the same as content_url for images.
height - Int Height of media file in px.
id - Int! Unique identifier in Archive's system.
type - String! Type of media file. IMAGE or VIDEO.
width - Int Width of media file in px.
Example
{
  "contentUrl": "xyz789",
  "displayUrl": "abc123",
  "height": 987,
  "id": 123,
  "type": "xyz789",
  "width": 987
}

MediaItem

Fields
Field Name Description
caption - String Content caption.
contents - [MediaContent!]! Files which represent the content of an item. For carousels, there will be multiple.
creator - Creator! Information about the content creator.
engagement - [MediaItemsEngagement!] We can track posts for X days and gather post engagement dynamics.
engagementHistory - [MediaItemsEngagement!] We can track posts for X days and gather post engagement dynamics.
externalId - String! The ID of an item on Instagram or TikTok.
hashtags - [String!] Hashtags that are used in the content.
id - ID! Unique identifier in Archive's system.
location - MediaItemLocation Content location description.
mentions - [String!] Mentions that are used in the content.
provider - IntegrationProviderEnum! Platform where content exists. INSTAGRAM or TIKTOK.
takenAt - ISO8601DateTime! Timestamp of when content was uploaded to social media (UTC).
type - TypesEnum! Type of archived content. POST, REEL, STORY or TIKTOK.
usageRightsStatus - StatusesEnum Status of usage rights request for content. REQUESTED, APPROVED or REJECTED.
Example
{
  "caption": "xyz789",
  "contents": [MediaContent],
  "creator": Creator,
  "engagement": [MediaItemsEngagement],
  "engagementHistory": [MediaItemsEngagement],
  "externalId": "xyz789",
  "hashtags": ["abc123"],
  "id": 4,
  "location": MediaItemLocation,
  "mentions": ["abc123"],
  "provider": "INSTAGRAM",
  "takenAt": ISO8601DateTime,
  "type": "POST",
  "usageRightsStatus": "REQUESTED"
}

MediaItemConnection

Description

The connection type for MediaItem.

Fields
Field Name Description
additionalFilters - AllFilters
edges - [MediaItemEdge!]! A list of edges.
filtersQuery - JSON
nodes - [MediaItem!]! A list of nodes.
pageInfo - PageInfo! Information to aid in pagination.
totalCount - Int!
Example
{
  "additionalFilters": AllFilters,
  "edges": [MediaItemEdge],
  "filtersQuery": {},
  "nodes": [MediaItem],
  "pageInfo": PageInfo,
  "totalCount": 987
}

MediaItemEdge

Description

An edge in a connection.

Fields
Field Name Description
cursor - String! A cursor for use in pagination.
node - MediaItem The item at the end of the edge.
Example
{
  "cursor": "xyz789",
  "node": MediaItem
}

MediaItemLocation

Fields
Field Name Description
address - String
city - String
lat - String
lng - String
name - String
Example
{
  "address": "xyz789",
  "city": "abc123",
  "lat": "abc123",
  "lng": "abc123",
  "name": "abc123"
}

MediaItemsEngagement

Fields
Field Name Description
at - ISO8601DateTime! Timestamp of when engagement metrics were captured.
commentCount - Int Number of comments.
likeCount - Int Number of likes.
playCount - Int Number of plays (if available).
viewCount - Int Number of views (if available).
Example
{
  "at": ISO8601DateTime,
  "commentCount": 123,
  "likeCount": 987,
  "playCount": 123,
  "viewCount": 123
}

MediaItemsUsageRightsStatusEnum

Values
Enum Value Description

requested

approved

rejected

not_requested

Example
"requested"

Mention

Fields
Field Name Description
id - ID!
name - String!
provider - IntegrationProviderEnum!
Example
{
  "id": 4,
  "name": "abc123",
  "provider": "INSTAGRAM"
}

PageInfo

Description

Information about pagination in a connection.

Fields
Field Name Description
endCursor - String When paginating forwards, the cursor to continue.
hasNextPage - Boolean! When paginating forwards, are there more items?
hasPreviousPage - Boolean! When paginating backwards, are there more items?
startCursor - String When paginating backwards, the cursor to continue.
Example
{
  "endCursor": "xyz789",
  "hasNextPage": false,
  "hasPreviousPage": true,
  "startCursor": "abc123"
}

PlatformEnum

Values
Enum Value Description

instagram

tiktok

youtube

Example
"instagram"

SentimentValueEnum

Values
Enum Value Description

negative

mixed

neutral

positive

Example
"negative"

StatusesEnum

Values
Enum Value Description

REQUESTED

APPROVED

REJECTED

Example
"REQUESTED"

String

Description

Represents textual data as UTF-8 character sequences. This type is most often used by GraphQL to represent free-form human-readable text.

Example
"abc123"

SuperSearchModeEnum

Values
Enum Value Description

embedding__content

fuzzy__transcription

fuzzy__caption

Example
"embedding__content"

TypesEnum

Values
Enum Value Description

POST

REEL

STORY

SHORT

Example
"POST"

WebhookSubscription

Fields
Field Name Description
callbackUrl - String! URL of where we will send webhook payload.
event - WebhookSubscriptionsEventsEnum! Event which triggers webhook.
id - ID! Unique identifier in Archive's system.
version - WebhookSubscriptionsVersionsEnum! Which version of payloads are used.
Example
{
  "callbackUrl": "xyz789",
  "event": "MEDIA_ITEM_CREATED",
  "id": 4,
  "version": "v0"
}

WebhookSubscriptionsEventsEnum

Values
Enum Value Description

MEDIA_ITEM_CREATED

Triggers when media item comes to Archive.

MEDIA_ITEM_ENGAGEMENT_UPDATED

Triggers when we add a record into media item engagement history.
Example
"MEDIA_ITEM_CREATED"

WebhookSubscriptionsVersionsEnum

Values
Enum Value Description

v0

v1

Example
"v0"

WhitelistingEligibilityEnum

Values
Enum Value Description

ALL

AUTO

Example
"ALL"

Workspace

Fields
Field Name Description
hashtags - [Hashtag!] Tracked hashtags.
id - ID! Unique identifier in Archive's system.
mentions - [Mention!] Tracked mentions.
name - String! Workspace name.
Example
{
  "hashtags": [Hashtag],
  "id": "4",
  "mentions": [Mention],
  "name": "abc123"
}