An account sees the creators it works with: creators in its programs and, for a partner, the creators on its roster.
List creators
GET /v1/creators filters by q (a name, email or handle), status, program, relationship and visibility:
const { data: page } = await lucra.creators.list({
query: { program: "prog_00lhuAJjQgdtNt5WnqTBc95", q: "sam" },
})
Add a creator to your roster
A partner adds a creator by email with POST /v1/creators:
const { data: creator } = await lucra.creators.create({
body: { email: "sam@example.com", name: "Sam Rivera", visibility: "private" },
})
What happens next depends on the creator:
- New to Lucra: they get an account to claim later, and you can act for them right away with
Lucra-Account: crtr_…. - Already on Lucra, or left your roster before: they're emailed an invite and show as
invited. You can act for them once they accept. - Already on your roster: you get them back with
200.
A creator can be on one partner's roster at a time.
Manage the roster
Choose which client brands a roster creator works with by sending the full list. A brand left out stops working with them:
await lucra.creators.update({
path: { id: "crtr_026UYfiw1Y6OvUpuKWiOpeL" },
body: { brands: ["acct_07RodMW6bE7BBO6e1I3UzSi"] },
})
Send { "status": "removed" } to take a creator off the roster, or takeRate to set your cut of their pay.
Edit a creator's profile
Acting as the creator (Lucra-Account: crtr_…), PATCH /v1/creators/:id with their own ID edits their name, bio, interests and location.
- Location: search the city catalog with
GET /v1/cities?q=…, then send the picked city aslocationDetails, with itsdisplayNameaslocation. - Photo: send
profilePicture, aprofile_picturefile uploaded as the creator. Or sendpictureFrom: "instagram"or"tiktok"to use a connected account's photo.
Visibility
private hides a creator from brands browsing Explore; network lets any brand find them. Either way, they can apply to programs open to the network.
Getting paid
A creator is paid to their own Stripe balance once payouts.identity.status is verified. Until then they keep earning. To finish setup, send them to the URL from POST /v1/connections with provider: "stripe". The creator.payouts_updated webhook tells you when their setup changes.
Endpoints
/v1/creatorsList the account's creators and, for a partner, its roster
const { data } = await lucra.creators.list({
query: { q: "…" },
})Query parameters
qstringMatches the name, email or a handle.
statusstringOne or more of invited, live, paused, review, removed; removed creators are left out unless asked for.
programprog_…Only creators approved into this program.
relationshipenumdirectrepresentedvisibilityenumprivatenetwork
Plus paging: limit, cursor, createdAfter and createdBefore.
Response200A page of items, 32 fields each, and nextCursorShow
idcrtr_…namestringhandlestringnullableemailstringnullablephonestringnullableprofilePicturefile_…nullableimageobjectnullableThe creator's picture, with a short-lived
url.Show 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
biostringnullablelocationstringnullableplatformHandlesobjectHandles by platform, e.g. { tiktok: "@sam" }.
tagsstring[]notesstringnullablestatusenumnullableThe creator's status with this account; null on a marketplace listing of a creator not in it.
invitedlivepausedreviewremovedrelationshipenumnullabledirect: in this account; represented: on a partner's roster; null on a marketplace listing of a creator not in it.
directrepresentedmanagedByacct_…nullablevisibilityenumprivate: hidden from brands' discovery; network: brands can find them.
privatenetworkchatAvailablebooleanprogramsprog_…[]Programs the creator is approved into in this account.
brandsacct_…[]A partner's roster creator: the client brands they work with through the partner.
retainerobjectnullableThe creator's open retainer with this account and its terms; GET /v1/retainers/:id has the rest.
Show 8 child fieldsHide child fields
idret_…statusenumofferedacceptedactivecancelingpayobjectShow 5 child fieldsHide child fields
rulesobject[]baseintegerGuaranteed each period, in cents.
capintegernullableThe most one creator is paid per period, in cents; null or left out for no cap.
scheduleobjectapprovalenumautomatic pays each period on its own; manual waits for the brand to approve the calculated amount.
automaticmanual
summarystringThe pay in plain English.
currencystringLowercase ISO 4217 code, e.g. usd.
deliverablesstringnullablenotesstringnullablecurrentPeriodEndAtstringnullable
payoutsobjectnullableWhere the creator is paid. To finish setup, send the creator to the URL from POST /v1/connections with provider: "stripe"; creator.payouts_updated fires when it changes. Null on a marketplace listing.
Show 2 child fieldsHide child fields
identityobjectShow 1 child fieldHide child fields
statusenumrequiredpendingverified
bankAccountobjectnullableShow 1 child fieldHide child fields
statusenummissingadded
statsobjectShow 4 child fieldsHide child fields
approvedVideosintegerpendingVideosintegerapprovalRatenumberPercent of reviewed submissions approved.
installsinteger
tierenumThe tier the creator's XP reaches, Bronze to Diamond.
bronzesilvergoldplatinumdiamondperformanceobjectnullableDaily ad results of the creator's work and submissions approved each day, for this account; null outside its own creators.
Show 2 child fieldsHide child fields
currencystringLowercase ISO 4217 code, e.g. usd.
daysobject[]Show 7 child fieldsHide child fields
datestringspendintegerrevenueintegerclicksintegerimpressionsintegerpurchasesintegerapprovedSubmissionsinteger
referenceVideosobject[]Posts the creator shows brands, newest choice first.
Show 10 child fieldsHide child fields
platformenuminstagramtiktokuploadpoststringThe post's ID on its platform; for an
upload, the uploaded video'sfile_….filefile_…nullableurlstringnullabletitlestringnullablepublishedAtstringnullabledurationLabelstringnullablethumbnailUrlstringnullablethumbnailImageobjectnullableShow 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
videoUrlstringnullable
takeRateobjectnullableA partner's roster creator: the partner's cut of their pay. Null elsewhere.
Show 2 child fieldsHide child fields
percentnumbercustombooleanSet for this creator alone; false follows the partner's default.
claimobjectnullableA partner's roster creator: whether they've claimed the account Lucra made for them. They claim it by signing in to Lucra with that email, verified.
Show 1 child fieldHide child fields
statusenuminvitedclaimed
listingobjectA marketplace listing's fields; only on GET /v1/marketplace/creators.
Show 12 child fieldsHide child fields
headlinestringnullablespecialtystringnullableagenumbernullablegenderstringnullablecategoriesstring[]creativeStylesstring[]interestsstring[]requestStatusenumnullableYour account's latest connection request to them.
pendingaccepteddeclinedaudiencestringnullablelastActivestringnullableresponseTimestringnullablesubmissionsobject[]Work the creator submitted on Lucra; on one creator's read.
Show 10 child fieldsHide child fields
idsub_…programNamestringnullableplatformenumnullableinstagramtiktokstatusenumapprovedliverejectedreviewrevisionsubmittedAtstringnullabledurationstringnullableformatstringnullablethumbnailUrlstringnullablevideoUrlstringnullablethumbnailImageobjectnullableShow 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
profileobjectOnly when a creator reads themselves.
Show 8 child fieldsHide child fields
birthDatestringnullablegenderstringnullableinterestsstring[]creativeStylesstring[]locationDetailsobjectnullableShow 9 child fieldsHide child fields
citystringcountryCodestringcountryNamestringdisplayNamestringgeonamesIdstringlatitudenumberlongitudenumberregionCodestringregionNamestring
onboardingCompletedAtstringnullablehiddenFromacct_…[]Partners that hide this creator from their Discover.
partnerFeeobjectnullableThe share of the creator's pay the partner representing them (
managedBy) takes, if any.Show 2 child fieldsHide child fields
partneracct_…percentnumber
versionintegerSend it back on PATCH to reject edits based on a stale read.
createdAtstringupdatedAtstring
/v1/creators/:idGet one of the account's creators, or, as a creator, yourself
const { data } = await lucra.creators.retrieve({
path: { id: "crtr_…" },
})Path parameters
idcrtr_…· required
Response20032 fieldsShow
idcrtr_…namestringhandlestringnullableemailstringnullablephonestringnullableprofilePicturefile_…nullableimageobjectnullableThe creator's picture, with a short-lived
url.Show 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
biostringnullablelocationstringnullableplatformHandlesobjectHandles by platform, e.g. { tiktok: "@sam" }.
tagsstring[]notesstringnullablestatusenumnullableThe creator's status with this account; null on a marketplace listing of a creator not in it.
invitedlivepausedreviewremovedrelationshipenumnullabledirect: in this account; represented: on a partner's roster; null on a marketplace listing of a creator not in it.
directrepresentedmanagedByacct_…nullablevisibilityenumprivate: hidden from brands' discovery; network: brands can find them.
privatenetworkchatAvailablebooleanprogramsprog_…[]Programs the creator is approved into in this account.
brandsacct_…[]A partner's roster creator: the client brands they work with through the partner.
retainerobjectnullableThe creator's open retainer with this account and its terms; GET /v1/retainers/:id has the rest.
Show 8 child fieldsHide child fields
idret_…statusenumofferedacceptedactivecancelingpayobjectShow 5 child fieldsHide child fields
rulesobject[]baseintegerGuaranteed each period, in cents.
capintegernullableThe most one creator is paid per period, in cents; null or left out for no cap.
scheduleobjectapprovalenumautomatic pays each period on its own; manual waits for the brand to approve the calculated amount.
automaticmanual
summarystringThe pay in plain English.
currencystringLowercase ISO 4217 code, e.g. usd.
deliverablesstringnullablenotesstringnullablecurrentPeriodEndAtstringnullable
payoutsobjectnullableWhere the creator is paid. To finish setup, send the creator to the URL from POST /v1/connections with provider: "stripe"; creator.payouts_updated fires when it changes. Null on a marketplace listing.
Show 2 child fieldsHide child fields
identityobjectShow 1 child fieldHide child fields
statusenumrequiredpendingverified
bankAccountobjectnullableShow 1 child fieldHide child fields
statusenummissingadded
statsobjectShow 4 child fieldsHide child fields
approvedVideosintegerpendingVideosintegerapprovalRatenumberPercent of reviewed submissions approved.
installsinteger
tierenumThe tier the creator's XP reaches, Bronze to Diamond.
bronzesilvergoldplatinumdiamondperformanceobjectnullableDaily ad results of the creator's work and submissions approved each day, for this account; null outside its own creators.
Show 2 child fieldsHide child fields
currencystringLowercase ISO 4217 code, e.g. usd.
daysobject[]Show 7 child fieldsHide child fields
datestringspendintegerrevenueintegerclicksintegerimpressionsintegerpurchasesintegerapprovedSubmissionsinteger
referenceVideosobject[]Posts the creator shows brands, newest choice first.
Show 10 child fieldsHide child fields
platformenuminstagramtiktokuploadpoststringThe post's ID on its platform; for an
upload, the uploaded video'sfile_….filefile_…nullableurlstringnullabletitlestringnullablepublishedAtstringnullabledurationLabelstringnullablethumbnailUrlstringnullablethumbnailImageobjectnullableShow 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
videoUrlstringnullable
takeRateobjectnullableA partner's roster creator: the partner's cut of their pay. Null elsewhere.
Show 2 child fieldsHide child fields
percentnumbercustombooleanSet for this creator alone; false follows the partner's default.
claimobjectnullableA partner's roster creator: whether they've claimed the account Lucra made for them. They claim it by signing in to Lucra with that email, verified.
Show 1 child fieldHide child fields
statusenuminvitedclaimed
listingobjectA marketplace listing's fields; only on GET /v1/marketplace/creators.
Show 12 child fieldsHide child fields
headlinestringnullablespecialtystringnullableagenumbernullablegenderstringnullablecategoriesstring[]creativeStylesstring[]interestsstring[]requestStatusenumnullableYour account's latest connection request to them.
pendingaccepteddeclinedaudiencestringnullablelastActivestringnullableresponseTimestringnullablesubmissionsobject[]Work the creator submitted on Lucra; on one creator's read.
Show 10 child fieldsHide child fields
idsub_…programNamestringnullableplatformenumnullableinstagramtiktokstatusenumapprovedliverejectedreviewrevisionsubmittedAtstringnullabledurationstringnullableformatstringnullablethumbnailUrlstringnullablevideoUrlstringnullablethumbnailImageobjectnullableShow 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
profileobjectOnly when a creator reads themselves.
Show 8 child fieldsHide child fields
birthDatestringnullablegenderstringnullableinterestsstring[]creativeStylesstring[]locationDetailsobjectnullableShow 9 child fieldsHide child fields
citystringcountryCodestringcountryNamestringdisplayNamestringgeonamesIdstringlatitudenumberlongitudenumberregionCodestringregionNamestring
onboardingCompletedAtstringnullablehiddenFromacct_…[]Partners that hide this creator from their Discover.
partnerFeeobjectnullableThe share of the creator's pay the partner representing them (
managedBy) takes, if any.Show 2 child fieldsHide child fields
partneracct_…percentnumber
versionintegerSend it back on PATCH to reject edits based on a stale read.
createdAtstringupdatedAtstring
/v1/creatorsAdd a creator to a partner's roster; one already on it is returned with 200, and one with a Lucra account is invited (status invited) until they accept
const { data } = await lucra.creators.create({
body: { email: "…" },
})Body
emailstring· requirednamestringphonestringvisibilityenumprivatenetwork
Response20132 fieldsShow
idcrtr_…namestringhandlestringnullableemailstringnullablephonestringnullableprofilePicturefile_…nullableimageobjectnullableThe creator's picture, with a short-lived
url.Show 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
biostringnullablelocationstringnullableplatformHandlesobjectHandles by platform, e.g. { tiktok: "@sam" }.
tagsstring[]notesstringnullablestatusenumnullableThe creator's status with this account; null on a marketplace listing of a creator not in it.
invitedlivepausedreviewremovedrelationshipenumnullabledirect: in this account; represented: on a partner's roster; null on a marketplace listing of a creator not in it.
directrepresentedmanagedByacct_…nullablevisibilityenumprivate: hidden from brands' discovery; network: brands can find them.
privatenetworkchatAvailablebooleanprogramsprog_…[]Programs the creator is approved into in this account.
brandsacct_…[]A partner's roster creator: the client brands they work with through the partner.
retainerobjectnullableThe creator's open retainer with this account and its terms; GET /v1/retainers/:id has the rest.
Show 8 child fieldsHide child fields
idret_…statusenumofferedacceptedactivecancelingpayobjectShow 5 child fieldsHide child fields
rulesobject[]baseintegerGuaranteed each period, in cents.
capintegernullableThe most one creator is paid per period, in cents; null or left out for no cap.
scheduleobjectapprovalenumautomatic pays each period on its own; manual waits for the brand to approve the calculated amount.
automaticmanual
summarystringThe pay in plain English.
currencystringLowercase ISO 4217 code, e.g. usd.
deliverablesstringnullablenotesstringnullablecurrentPeriodEndAtstringnullable
payoutsobjectnullableWhere the creator is paid. To finish setup, send the creator to the URL from POST /v1/connections with provider: "stripe"; creator.payouts_updated fires when it changes. Null on a marketplace listing.
Show 2 child fieldsHide child fields
identityobjectShow 1 child fieldHide child fields
statusenumrequiredpendingverified
bankAccountobjectnullableShow 1 child fieldHide child fields
statusenummissingadded
statsobjectShow 4 child fieldsHide child fields
approvedVideosintegerpendingVideosintegerapprovalRatenumberPercent of reviewed submissions approved.
installsinteger
tierenumThe tier the creator's XP reaches, Bronze to Diamond.
bronzesilvergoldplatinumdiamondperformanceobjectnullableDaily ad results of the creator's work and submissions approved each day, for this account; null outside its own creators.
Show 2 child fieldsHide child fields
currencystringLowercase ISO 4217 code, e.g. usd.
daysobject[]Show 7 child fieldsHide child fields
datestringspendintegerrevenueintegerclicksintegerimpressionsintegerpurchasesintegerapprovedSubmissionsinteger
referenceVideosobject[]Posts the creator shows brands, newest choice first.
Show 10 child fieldsHide child fields
platformenuminstagramtiktokuploadpoststringThe post's ID on its platform; for an
upload, the uploaded video'sfile_….filefile_…nullableurlstringnullabletitlestringnullablepublishedAtstringnullabledurationLabelstringnullablethumbnailUrlstringnullablethumbnailImageobjectnullableShow 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
videoUrlstringnullable
takeRateobjectnullableA partner's roster creator: the partner's cut of their pay. Null elsewhere.
Show 2 child fieldsHide child fields
percentnumbercustombooleanSet for this creator alone; false follows the partner's default.
claimobjectnullableA partner's roster creator: whether they've claimed the account Lucra made for them. They claim it by signing in to Lucra with that email, verified.
Show 1 child fieldHide child fields
statusenuminvitedclaimed
listingobjectA marketplace listing's fields; only on GET /v1/marketplace/creators.
Show 12 child fieldsHide child fields
headlinestringnullablespecialtystringnullableagenumbernullablegenderstringnullablecategoriesstring[]creativeStylesstring[]interestsstring[]requestStatusenumnullableYour account's latest connection request to them.
pendingaccepteddeclinedaudiencestringnullablelastActivestringnullableresponseTimestringnullablesubmissionsobject[]Work the creator submitted on Lucra; on one creator's read.
Show 10 child fieldsHide child fields
idsub_…programNamestringnullableplatformenumnullableinstagramtiktokstatusenumapprovedliverejectedreviewrevisionsubmittedAtstringnullabledurationstringnullableformatstringnullablethumbnailUrlstringnullablevideoUrlstringnullablethumbnailImageobjectnullableShow 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
profileobjectOnly when a creator reads themselves.
Show 8 child fieldsHide child fields
birthDatestringnullablegenderstringnullableinterestsstring[]creativeStylesstring[]locationDetailsobjectnullableShow 9 child fieldsHide child fields
citystringcountryCodestringcountryNamestringdisplayNamestringgeonamesIdstringlatitudenumberlongitudenumberregionCodestringregionNamestring
onboardingCompletedAtstringnullablehiddenFromacct_…[]Partners that hide this creator from their Discover.
partnerFeeobjectnullableThe share of the creator's pay the partner representing them (
managedBy) takes, if any.Show 2 child fieldsHide child fields
partneracct_…percentnumber
versionintegerSend it back on PATCH to reject edits based on a stale read.
createdAtstringupdatedAtstring
/v1/creators/:idUpdate a creator: a brand's labels and status, a partner's roster creator, or, as a creator, your own profile
const { data } = await lucra.creators.update({
path: { id: "crtr_…" },
body: { visibility: "private" },
})Path parameters
idcrtr_…· required
Body
visibilityenumprivatenetworkprofilePicturefile_…nullabletagsstring[]notesstringnullablestatusenumlivepausedremovedbrandsacct_…[]A partner's roster creator works with exactly these client brands; brands left out stop working with them.
takeRatenumbernullableA partner's roster creator: the partner's cut of their pay, as a percent, from now on; null puts them back on the partner's default.
biostringbirthDatestringnullablecreativeStylesenum[]product_demotestimonial_reviewtalking_headvoiceover_brolllifestyle_routineunboxingscreen_recordingcomedy_skitemailstringgenderenumnullablewomanmannonbinaryself_describeundisclosedhandlestringYour @handle, unique on Lucra: 1–30 letters, numbers, periods, underscores or hyphens. A leading @ is dropped and it is saved lowercase.
interestsenum[]fitnessbeautyfashionfood_drinktech_gamingtravelhome_diyparentingfinancewellnesspetscomedyeducationoutdoorsfitness_gymfitness_runningfitness_yogafitness_sportsbeauty_makeupbeauty_skincarebeauty_hairbeauty_nailsfashion_streetwearfashion_luxuryfashion_thriftfashion_menswearfood_drink_cookingfood_drink_bakingfood_drink_restaurantsfood_drink_coffeetech_gaming_gamingtech_gaming_gadgetstech_gaming_appstech_gaming_aitravel_budgettravel_luxurytravel_citytravel_adventurehome_diy_renovationhome_diy_decorhome_diy_gardeninghome_diy_organizationparenting_pregnancyparenting_babiesparenting_school_ageparenting_teensfinance_investingfinance_budgetingfinance_side_hustlesfinance_cryptowellness_mental_healthwellness_meditationwellness_nutritionwellness_sleeppets_dogspets_catspets_exoticpets_trainingcomedy_skitscomedy_prankscomedy_memescomedy_standupeducation_studyeducation_languageseducation_scienceeducation_historyoutdoors_campingoutdoors_hikingoutdoors_fishingoutdoors_climbinglocationstringlocationDetailsobjectnullableShow 9 child fieldsHide child fields
citystring· requiredcountryCodestring· requiredcountryNamestring· requireddisplayNamestring· requiredgeonamesIdstringlatitudenumberlongitudenumberregionCodestringregionNamestring
namestringplatformHandlesobjectShow 2 child fieldsHide child fields
instagramstringtiktokstring
referenceVideoSelectionsobject[]Show 10 child fieldsHide child fields
durationLabelstringmediaAssetIdstringplatformenum· requiredinstagramtiktokuploadpublishedAtstringsourceContentIdstring· requiredsourceUrlstringthumbnailImageobjectnullableShow 5 child fieldsHide child fields
fileIdstring· requiredurlstringwidthintegernullableheightintegernullableblurHashstringnullable
thumbnailUrlstringtitlestringvideoUrlstring
referenceVideosstring[]pictureFromenumUse this connected account's profile photo as the creator's picture.
instagramtiktokversioninteger
Response20032 fieldsShow
idcrtr_…namestringhandlestringnullableemailstringnullablephonestringnullableprofilePicturefile_…nullableimageobjectnullableThe creator's picture, with a short-lived
url.Show 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
biostringnullablelocationstringnullableplatformHandlesobjectHandles by platform, e.g. { tiktok: "@sam" }.
tagsstring[]notesstringnullablestatusenumnullableThe creator's status with this account; null on a marketplace listing of a creator not in it.
invitedlivepausedreviewremovedrelationshipenumnullabledirect: in this account; represented: on a partner's roster; null on a marketplace listing of a creator not in it.
directrepresentedmanagedByacct_…nullablevisibilityenumprivate: hidden from brands' discovery; network: brands can find them.
privatenetworkchatAvailablebooleanprogramsprog_…[]Programs the creator is approved into in this account.
brandsacct_…[]A partner's roster creator: the client brands they work with through the partner.
retainerobjectnullableThe creator's open retainer with this account and its terms; GET /v1/retainers/:id has the rest.
Show 8 child fieldsHide child fields
idret_…statusenumofferedacceptedactivecancelingpayobjectShow 5 child fieldsHide child fields
rulesobject[]baseintegerGuaranteed each period, in cents.
capintegernullableThe most one creator is paid per period, in cents; null or left out for no cap.
scheduleobjectapprovalenumautomatic pays each period on its own; manual waits for the brand to approve the calculated amount.
automaticmanual
summarystringThe pay in plain English.
currencystringLowercase ISO 4217 code, e.g. usd.
deliverablesstringnullablenotesstringnullablecurrentPeriodEndAtstringnullable
payoutsobjectnullableWhere the creator is paid. To finish setup, send the creator to the URL from POST /v1/connections with provider: "stripe"; creator.payouts_updated fires when it changes. Null on a marketplace listing.
Show 2 child fieldsHide child fields
identityobjectShow 1 child fieldHide child fields
statusenumrequiredpendingverified
bankAccountobjectnullableShow 1 child fieldHide child fields
statusenummissingadded
statsobjectShow 4 child fieldsHide child fields
approvedVideosintegerpendingVideosintegerapprovalRatenumberPercent of reviewed submissions approved.
installsinteger
tierenumThe tier the creator's XP reaches, Bronze to Diamond.
bronzesilvergoldplatinumdiamondperformanceobjectnullableDaily ad results of the creator's work and submissions approved each day, for this account; null outside its own creators.
Show 2 child fieldsHide child fields
currencystringLowercase ISO 4217 code, e.g. usd.
daysobject[]Show 7 child fieldsHide child fields
datestringspendintegerrevenueintegerclicksintegerimpressionsintegerpurchasesintegerapprovedSubmissionsinteger
referenceVideosobject[]Posts the creator shows brands, newest choice first.
Show 10 child fieldsHide child fields
platformenuminstagramtiktokuploadpoststringThe post's ID on its platform; for an
upload, the uploaded video'sfile_….filefile_…nullableurlstringnullabletitlestringnullablepublishedAtstringnullabledurationLabelstringnullablethumbnailUrlstringnullablethumbnailImageobjectnullableShow 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
videoUrlstringnullable
takeRateobjectnullableA partner's roster creator: the partner's cut of their pay. Null elsewhere.
Show 2 child fieldsHide child fields
percentnumbercustombooleanSet for this creator alone; false follows the partner's default.
claimobjectnullableA partner's roster creator: whether they've claimed the account Lucra made for them. They claim it by signing in to Lucra with that email, verified.
Show 1 child fieldHide child fields
statusenuminvitedclaimed
listingobjectA marketplace listing's fields; only on GET /v1/marketplace/creators.
Show 12 child fieldsHide child fields
headlinestringnullablespecialtystringnullableagenumbernullablegenderstringnullablecategoriesstring[]creativeStylesstring[]interestsstring[]requestStatusenumnullableYour account's latest connection request to them.
pendingaccepteddeclinedaudiencestringnullablelastActivestringnullableresponseTimestringnullablesubmissionsobject[]Work the creator submitted on Lucra; on one creator's read.
Show 10 child fieldsHide child fields
idsub_…programNamestringnullableplatformenumnullableinstagramtiktokstatusenumapprovedliverejectedreviewrevisionsubmittedAtstringnullabledurationstringnullableformatstringnullablethumbnailUrlstringnullablevideoUrlstringnullablethumbnailImageobjectnullableShow 5 child fieldsHide child fields
fileIdfile_…nullableurlstringwidthnumbernullableheightnumbernullableblurHashstringnullable
profileobjectOnly when a creator reads themselves.
Show 8 child fieldsHide child fields
birthDatestringnullablegenderstringnullableinterestsstring[]creativeStylesstring[]locationDetailsobjectnullableShow 9 child fieldsHide child fields
citystringcountryCodestringcountryNamestringdisplayNamestringgeonamesIdstringlatitudenumberlongitudenumberregionCodestringregionNamestring
onboardingCompletedAtstringnullablehiddenFromacct_…[]Partners that hide this creator from their Discover.
partnerFeeobjectnullableThe share of the creator's pay the partner representing them (
managedBy) takes, if any.Show 2 child fieldsHide child fields
partneracct_…percentnumber
versionintegerSend it back on PATCH to reject edits based on a stale read.
createdAtstringupdatedAtstring
/v1/citiesSearch cities by name, exact matches first
const { data } = await lucra.cities.list({
query: { q: "…" },
})Query parameters
qstring· requiredA city name, or the start of one.
countrystringOnly cities in this country (ISO 3166-1 alpha-2, e.g. US).
limitintegerCities per page.
cursorstringnextCursorfrom the previous page, with the same q and country.
Response200A page of items, 12 fields each, and nextCursorShow
geonamesIdstringnamestringdisplayNamestringcitystringregionstringnullableregionCodestringnullableregionNamestringnullablecountryCodestringcountryNamestringlatitudenumberlongitudenumbertimeZonestring