Skip to main content

Creator Pay API (1.0)

Getting started

Let's discover the Creator Pay API and what you'll need to get setup.

Sandbox environment

For development purposes, sign up for an API key on the trial site, then you can send requests to the https://dev.creatorpay.co. You can verify the results from your requests back on the trial site. When you're ready to move to production, get your API key from the production site at trial site and send your requests to https://api.creatorpay.co

What you'll need

Generate a new API key

Generate a new API key on the Settings page under the API tab.

Creator Pay Token

Use your API key to get a session token

Your API key is used to get a session token. Your session token is what normally gets passed along in requests to the API. These session tokens expire after 7 days, so be sure to intermittently refresh your session token. You can only have one active session token, so once you get a new session token, the old one will no longer work.

curl https://api.creatorpay.co/v1/org_api_token/session?key=<your_api_key>

Make a request

Now that you've got your session token, you're ready to make a request. Just include the token in the headers as session-token and you will be able to hit any of the endpoints available to the API with admin-level privileges.

curl https://api.creatorpay.co/v1/creators \
  --header 'session-token: <session token>'

Creators

Creators are the accounts for content creators of an organization. Each organization may create creator accounts for its creators to let them access the website via creator dashboard.

Retrieve Creators for an organization

Get all creators of your organization

header Parameters
session-token
required
string

Your session token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Creates Creators

creates creators for an org and an associated user row if necessary

header Parameters
session-token
required
string

Your session token

Request Body schema: application/json

body

Array
account_number
string
business_name
string
email
required
string
entity_type
string
Enum: "individual" "business"
first_name
string
last_name
string
manager_id
string
phone_number
string
routing_number
string

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
[
  • {
    }
]

Update data for Creator

Updates available data for a creator

header Parameters
session-token
required
string

Your session token

Request Body schema: application/json

body

account_number
string
object
affiliated_persons
string
bio
string
business_name
string
date_of_birth
string
entity_type
string
Enum: "individual" "business"
first_name
string
id
string
is_active
boolean
is_shipping_same_as_home
boolean
last_name
string
manager_id
string
manager_split
integer
notes
string
paypal_email
string
phone_number
string
platforms
string
pronouns
string
qb_acct
string
qb_vendor
string
routing_number
string
selected_payment_method
string
object
split
number
state_tax_id
string
tax_id
string
venmo_phone_number
string

Responses

Request samples

Content type
application/json
{
  • "account_number": "123456789",
  • "address": {
    },
  • "affiliated_persons": "string",
  • "bio": "YouTube creator with gaming content",
  • "business_name": "The Blue Boat",
  • "date_of_birth": "2000-01-02",
  • "entity_type": "individual",
  • "first_name": "Joe",
  • "id": "string",
  • "is_active": true,
  • "is_shipping_same_as_home": true,
  • "last_name": "Morgan",
  • "manager_id": "00000000-0000-0000-0000-000000000000",
  • "manager_split": 10,
  • "notes": "Prefers to be texted",
  • "paypal_email": "[email protected]",
  • "phone_number": "+12223334444",
  • "platforms": "['https://www.youtube.com','http://facebook.com/pageurl']",
  • "pronouns": "He",
  • "qb_acct": "string",
  • "qb_vendor": "string",
  • "routing_number": "123456789",
  • "selected_payment_method": "paypal",
  • "shipping_address": {
    },
  • "split": 20,
  • "state_tax_id": "000000000",
  • "tax_id": "000000000",
  • "venmo_phone_number": "+12223334444"
}

Response samples

Content type
application/json
{
  • "account_number": "123456789",
  • "address_city": "New York City",
  • "address_line_1": "1 Main St",
  • "address_line_2": "string",
  • "address_shipping_city": "New York City",
  • "address_shipping_line_1": "1 Main St",
  • "address_shipping_line_2": "string",
  • "address_shipping_state": "NY",
  • "address_shipping_zip": "10001",
  • "address_state": "NY",
  • "address_zip": "10001",
  • "affiliated_persons": "[{'name':'James Hoffman','role':'Lawyer','email':'[email protected]','phone':'50957793793'}]",
  • "bio": "YouTube content creator in music area",
  • "business_name": "Red Guitar",
  • "created_at": "2022-03-30T20:41:44.483039Z",
  • "date_of_birth": "2000-01-02",
  • "email": "[email protected]",
  • "entity_type": "business",
  • "first_name": "John",
  • "id": "ace932c9-9bkj-467a-99a4-bc74499c4843",
  • "is_active": "true",
  • "is_shipping_same_as_home": "true",
  • "last_name": "Doe",
  • "manager_id": "00000000-0000-0000-0000-000000000000",
  • "manager_split": 10,
  • "notes": "Prefers to be texted",
  • "org_id": "ace932c9-9bkj-467a-99a4-bc74499c4843",
  • "paypal_email": "[email protected]",
  • "phone_number": "+12223334444",
  • "platforms": "['https://www.youtube.com','http://facebook.com/pageurl']",
  • "pronouns": "She",
  • "qb_acct": "{'Name':'Test Account', 'Id':'1234'}",
  • "qb_vendor": "{'DisplayName':'Test Vendor', 'Id':'5678'}",
  • "routing_number": "123456789",
  • "selected_payment_method": "paypal",
  • "split": "80",
  • "state_tax_id": "123456789",
  • "tax_id": "123456789",
  • "user_id": "ace932c9-9bkj-467a-99a4-bc74499c4843",
  • "venmo_phone_number": "12223334444"
}

Payments

Payment entities are the payments done by organizations to the creators. A payment represents a financial transaction (an actual exchange of money).

Deletes payments specified by the body

Deletes payments as long as they are in draft

header Parameters
session-token
required
string

Your session token

Request Body schema: application/json

body

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0
}

Get payments

Get payments based on the query parameters

query Parameters
start_date
string

Start Date

end_date
string

End Date

status
string

Status

header Parameters
session-token
required
string

Your session token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create payments

Creates payments to send money to a Creator. Amounts are always done in cents.

header Parameters
session-token
required
string

Your session token

Request Body schema: application/json

body

Array
amount
integer
audit
string
earnings
integer
federal_withholdings
integer
id
string
managed_creator_id
string
memo
string
payment_group_id
string
recipient
string
recipient_role
string
split
number
state_withholdings
integer

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
[
  • {
    }
]

Updates Payments

Updates any available metadata for multiple payments

header Parameters
session-token
required
string

Your session token

Request Body schema: application/json

body

Array
amount
integer
audit
string
earnings
integer
federal_withholdings
integer
id
string
managed_creator_id
string
memo
string
payment_group_id
string
recipient
string
recipient_role
string
split
number
state_withholdings
integer

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "amount": 100,
  • "audit": "",
  • "created_at": "2022-03-30T20:41:44.483039Z",
  • "date_failed": "2022-03-30T20:41:44.483039Z",
  • "date_initiated": "2022-03-30T20:41:44.483039Z",
  • "date_posted": "2022-03-30T20:41:44.483039Z",
  • "earnings": 20,
  • "expected_arrival_date": "2022-03-30T20:41:44.483039Z",
  • "federal_withholdings": 10,
  • "fee": 3,
  • "fee_reference_id": "outp_1Jao4a0klqL2RlPbAgU0wyHz",
  • "id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "is_deleted": "false",
  • "memo": "Payment for April",
  • "method": "paypal",
  • "org_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "payment_group_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "paypal_payout_batch_id": "SDWBDSNMOPLCN",
  • "paypal_payout_item_id": "LPFBJSPMSYMIO",
  • "recipient": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "reference_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "split": 80,
  • "state_withholdings": 10,
  • "status": "draft",
  • "updated_at": "2022-03-30T20:41:44.483039Z"
}

Retrieve a single payment

Retrieves a single payment using ID in the route params

header Parameters
session-token
required
string

Your session token

Responses

Response samples

Content type
application/json
{
  • "amount": 100,
  • "audit": "",
  • "created_at": "2022-03-30T20:41:44.483039Z",
  • "date_failed": "2022-03-30T20:41:44.483039Z",
  • "date_initiated": "2022-03-30T20:41:44.483039Z",
  • "date_posted": "2022-03-30T20:41:44.483039Z",
  • "earnings": 20,
  • "expected_arrival_date": "2022-03-30T20:41:44.483039Z",
  • "federal_withholdings": 10,
  • "fee": 3,
  • "fee_reference_id": "outp_1Jao4a0klqL2RlPbAgU0wyHz",
  • "id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "is_deleted": "false",
  • "memo": "Payment for April",
  • "method": "paypal",
  • "org_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "payment_group_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "paypal_payout_batch_id": "SDWBDSNMOPLCN",
  • "paypal_payout_item_id": "LPFBJSPMSYMIO",
  • "recipient": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "reference_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "split": 80,
  • "state_withholdings": 10,
  • "status": "draft",
  • "updated_at": "2022-03-30T20:41:44.483039Z"
}

Get payment totals for recipient

Get payment total amounts grouped by recipient

Responses

Response samples

Content type
application/json
{
  • "property1": 0,
  • "property2": 0
}

Campaigns

Social media campaign that encompasses payments, contracts, invoices and all other data needed during planning and execution

Retrieve Campaigns

Retrieve all campaigns for an org. Type should always be "campaigns".

query Parameters
type
required
string

type

header Parameters
session-token
required
string

Your session token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a Campaign

Create a Campaign object to keep track of payments, invoices and other necesssary elements.

header Parameters
session-token
required
string

Your session token

Request Body schema: application/json

body

agent_id
string
campaign_end_date
string
campaign_ref_id
string
campaign_start_date
string
campaign_status
string
customer_id
string
deal_size
integer
description
string
is_archived
boolean
terms
string
title
string

Responses

Request samples

Content type
application/json
{
  • "agent_id": "00000000-0000-0000-0000-000000000000",
  • "campaign_end_date": "2021-3-3",
  • "campaign_ref_id": "internal_ref_abcd",
  • "campaign_start_date": "2021-1-1",
  • "campaign_status": "active",
  • "customer_id": "00000000-0000-0000-0000-000000000000",
  • "deal_size": 2500000,
  • "description": "Promoting winter clothing for partner brand",
  • "is_archived": false,
  • "terms": "Net 30",
  • "title": "Winter Campaign"
}

Response samples

Content type
application/json
{
  • "campaign_end_date": "2021-3-3",
  • "campaign_ref_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "campaign_start_date": "2021-1-1",
  • "campaign_status": "active",
  • "created_at": "2022-03-30T20:41:44.483039Z",
  • "description": "Promoting winter clothing for partner brand",
  • "id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "ignored_rows": "string",
  • "is_archived": false,
  • "org_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "payment_group_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "title": "Winter Campaign",
  • "type": "string",
  • "updated_at": "2022-03-30T20:41:44.483039Z"
}

Retrieve a Campaign

Retrieves a single Campaign using ID in the route params

header Parameters
session-token
required
string

Your session token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update a Campaign

Updates various fields for a Campaign.

header Parameters
session-token
required
string

Your session token

Request Body schema: application/json

body

agent_id
string
campaign_end_date
string
campaign_ref_id
string
campaign_start_date
string
campaign_status
string
customer_id
string
deal_size
integer
description
string
is_archived
boolean
terms
string
title
string

Responses

Request samples

Content type
application/json
{
  • "agent_id": "00000000-0000-0000-0000-000000000000",
  • "campaign_end_date": "2021-3-3",
  • "campaign_ref_id": "internal_ref_abcd",
  • "campaign_start_date": "2021-1-1",
  • "campaign_status": "active",
  • "customer_id": "00000000-0000-0000-0000-000000000000",
  • "deal_size": 2500000,
  • "description": "Promoting winter clothing for partner brand",
  • "is_archived": false,
  • "terms": "Net 30",
  • "title": "Winter Campaign"
}

Response samples

Content type
application/json
{
  • "campaign_end_date": "2021-3-3",
  • "campaign_ref_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "campaign_start_date": "2021-1-1",
  • "campaign_status": "active",
  • "created_at": "2022-03-30T20:41:44.483039Z",
  • "description": "Promoting winter clothing for partner brand",
  • "id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "ignored_rows": "string",
  • "is_archived": false,
  • "org_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "payment_group_id": "ace932c9-9bkj-467a-99a4-bk74499c4843",
  • "title": "Winter Campaign",
  • "type": "string",
  • "updated_at": "2022-03-30T20:41:44.483039Z"
}

Initiate Campaign Payments

Initiate the execution for all payments currently marked as draft in a campaign.

header Parameters
session-token
required
string

Your session token

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0
}