You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

596 lines
20 KiB

  1. {
  2. "auth": {
  3. "oauth2": {
  4. "scopes": {
  5. "https://www.googleapis.com/auth/adexchange.buyer": {
  6. "description": "Manage your Ad Exchange buyer account configuration"
  7. }
  8. }
  9. }
  10. },
  11. "basePath": "/adexchangebuyer/v1.2/",
  12. "baseUrl": "https://www.googleapis.com/adexchangebuyer/v1.2/",
  13. "batchPath": "batch/adexchangebuyer/v1.2",
  14. "canonicalName": "Ad Exchange Buyer",
  15. "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.",
  16. "discoveryVersion": "v1",
  17. "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest",
  18. "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/F_9WJQnvLgGfABacvXvQLtkcuXw\"",
  19. "icons": {
  20. "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif",
  21. "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif"
  22. },
  23. "id": "adexchangebuyer:v1.2",
  24. "kind": "discovery#restDescription",
  25. "name": "adexchangebuyer",
  26. "ownerDomain": "google.com",
  27. "ownerName": "Google",
  28. "parameters": {
  29. "alt": {
  30. "default": "json",
  31. "description": "Data format for the response.",
  32. "enum": [
  33. "json"
  34. ],
  35. "enumDescriptions": [
  36. "Responses with Content-Type of application/json"
  37. ],
  38. "location": "query",
  39. "type": "string"
  40. },
  41. "fields": {
  42. "description": "Selector specifying which fields to include in a partial response.",
  43. "location": "query",
  44. "type": "string"
  45. },
  46. "key": {
  47. "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
  48. "location": "query",
  49. "type": "string"
  50. },
  51. "oauth_token": {
  52. "description": "OAuth 2.0 token for the current user.",
  53. "location": "query",
  54. "type": "string"
  55. },
  56. "prettyPrint": {
  57. "default": "true",
  58. "description": "Returns response with indentations and line breaks.",
  59. "location": "query",
  60. "type": "boolean"
  61. },
  62. "quotaUser": {
  63. "description": "An opaque string that represents a user for quota purposes. Must not exceed 40 characters.",
  64. "location": "query",
  65. "type": "string"
  66. },
  67. "userIp": {
  68. "description": "Deprecated. Please use quotaUser instead.",
  69. "location": "query",
  70. "type": "string"
  71. }
  72. },
  73. "protocol": "rest",
  74. "resources": {
  75. "accounts": {
  76. "methods": {
  77. "get": {
  78. "description": "Gets one account by ID.",
  79. "httpMethod": "GET",
  80. "id": "adexchangebuyer.accounts.get",
  81. "parameterOrder": [
  82. "id"
  83. ],
  84. "parameters": {
  85. "id": {
  86. "description": "The account id",
  87. "format": "int32",
  88. "location": "path",
  89. "required": true,
  90. "type": "integer"
  91. }
  92. },
  93. "path": "accounts/{id}",
  94. "response": {
  95. "$ref": "Account"
  96. },
  97. "scopes": [
  98. "https://www.googleapis.com/auth/adexchange.buyer"
  99. ]
  100. },
  101. "list": {
  102. "description": "Retrieves the authenticated user's list of accounts.",
  103. "httpMethod": "GET",
  104. "id": "adexchangebuyer.accounts.list",
  105. "path": "accounts",
  106. "response": {
  107. "$ref": "AccountsList"
  108. },
  109. "scopes": [
  110. "https://www.googleapis.com/auth/adexchange.buyer"
  111. ]
  112. },
  113. "patch": {
  114. "description": "Updates an existing account. This method supports patch semantics.",
  115. "httpMethod": "PATCH",
  116. "id": "adexchangebuyer.accounts.patch",
  117. "parameterOrder": [
  118. "id"
  119. ],
  120. "parameters": {
  121. "id": {
  122. "description": "The account id",
  123. "format": "int32",
  124. "location": "path",
  125. "required": true,
  126. "type": "integer"
  127. }
  128. },
  129. "path": "accounts/{id}",
  130. "request": {
  131. "$ref": "Account"
  132. },
  133. "response": {
  134. "$ref": "Account"
  135. },
  136. "scopes": [
  137. "https://www.googleapis.com/auth/adexchange.buyer"
  138. ]
  139. },
  140. "update": {
  141. "description": "Updates an existing account.",
  142. "httpMethod": "PUT",
  143. "id": "adexchangebuyer.accounts.update",
  144. "parameterOrder": [
  145. "id"
  146. ],
  147. "parameters": {
  148. "id": {
  149. "description": "The account id",
  150. "format": "int32",
  151. "location": "path",
  152. "required": true,
  153. "type": "integer"
  154. }
  155. },
  156. "path": "accounts/{id}",
  157. "request": {
  158. "$ref": "Account"
  159. },
  160. "response": {
  161. "$ref": "Account"
  162. },
  163. "scopes": [
  164. "https://www.googleapis.com/auth/adexchange.buyer"
  165. ]
  166. }
  167. }
  168. },
  169. "creatives": {
  170. "methods": {
  171. "get": {
  172. "description": "Gets the status for a single creative. A creative will be available 30-40 minutes after submission.",
  173. "httpMethod": "GET",
  174. "id": "adexchangebuyer.creatives.get",
  175. "parameterOrder": [
  176. "accountId",
  177. "buyerCreativeId"
  178. ],
  179. "parameters": {
  180. "accountId": {
  181. "description": "The id for the account that will serve this creative.",
  182. "format": "int32",
  183. "location": "path",
  184. "required": true,
  185. "type": "integer"
  186. },
  187. "buyerCreativeId": {
  188. "description": "The buyer-specific id for this creative.",
  189. "location": "path",
  190. "required": true,
  191. "type": "string"
  192. }
  193. },
  194. "path": "creatives/{accountId}/{buyerCreativeId}",
  195. "response": {
  196. "$ref": "Creative"
  197. },
  198. "scopes": [
  199. "https://www.googleapis.com/auth/adexchange.buyer"
  200. ]
  201. },
  202. "insert": {
  203. "description": "Submit a new creative.",
  204. "httpMethod": "POST",
  205. "id": "adexchangebuyer.creatives.insert",
  206. "path": "creatives",
  207. "request": {
  208. "$ref": "Creative"
  209. },
  210. "response": {
  211. "$ref": "Creative"
  212. },
  213. "scopes": [
  214. "https://www.googleapis.com/auth/adexchange.buyer"
  215. ]
  216. },
  217. "list": {
  218. "description": "Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.",
  219. "httpMethod": "GET",
  220. "id": "adexchangebuyer.creatives.list",
  221. "parameters": {
  222. "maxResults": {
  223. "description": "Maximum number of entries returned on one result page. If not set, the default is 100. Optional.",
  224. "format": "uint32",
  225. "location": "query",
  226. "maximum": "1000",
  227. "minimum": "1",
  228. "type": "integer"
  229. },
  230. "pageToken": {
  231. "description": "A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of \"nextPageToken\" from the previous response. Optional.",
  232. "location": "query",
  233. "type": "string"
  234. },
  235. "statusFilter": {
  236. "description": "When specified, only creatives having the given status are returned.",
  237. "enum": [
  238. "approved",
  239. "disapproved",
  240. "not_checked"
  241. ],
  242. "enumDescriptions": [
  243. "Creatives which have been approved.",
  244. "Creatives which have been disapproved.",
  245. "Creatives whose status is not yet checked."
  246. ],
  247. "location": "query",
  248. "type": "string"
  249. }
  250. },
  251. "path": "creatives",
  252. "response": {
  253. "$ref": "CreativesList"
  254. },
  255. "scopes": [
  256. "https://www.googleapis.com/auth/adexchange.buyer"
  257. ]
  258. }
  259. }
  260. }
  261. },
  262. "revision": "20180222",
  263. "rootUrl": "https://www.googleapis.com/",
  264. "schemas": {
  265. "Account": {
  266. "description": "Configuration data for an Ad Exchange buyer account.",
  267. "id": "Account",
  268. "properties": {
  269. "bidderLocation": {
  270. "description": "Your bidder locations that have distinct URLs.",
  271. "items": {
  272. "properties": {
  273. "maximumQps": {
  274. "description": "The maximum queries per second the Ad Exchange will send.",
  275. "format": "int32",
  276. "type": "integer"
  277. },
  278. "region": {
  279. "description": "The geographical region the Ad Exchange should send requests from. Only used by some quota systems, but always setting the value is recommended. Allowed values: \n- ASIA \n- EUROPE \n- US_EAST \n- US_WEST",
  280. "type": "string"
  281. },
  282. "url": {
  283. "description": "The URL to which the Ad Exchange will send bid requests.",
  284. "type": "string"
  285. }
  286. },
  287. "type": "object"
  288. },
  289. "type": "array"
  290. },
  291. "cookieMatchingNid": {
  292. "description": "The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.",
  293. "type": "string"
  294. },
  295. "cookieMatchingUrl": {
  296. "description": "The base URL used in cookie match requests.",
  297. "type": "string"
  298. },
  299. "id": {
  300. "description": "Account id.",
  301. "format": "int32",
  302. "type": "integer"
  303. },
  304. "kind": {
  305. "default": "adexchangebuyer#account",
  306. "description": "Resource type.",
  307. "type": "string"
  308. },
  309. "maximumActiveCreatives": {
  310. "description": "The maximum number of active creatives that an account can have, where a creative is active if it was inserted or bid with in the last 30 days. Please contact your technical account manager if you need to change this.",
  311. "format": "int32",
  312. "type": "integer"
  313. },
  314. "maximumTotalQps": {
  315. "description": "The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.",
  316. "format": "int32",
  317. "type": "integer"
  318. },
  319. "numberActiveCreatives": {
  320. "description": "The number of creatives that this account inserted or bid with in the last 30 days.",
  321. "format": "int32",
  322. "type": "integer"
  323. }
  324. },
  325. "type": "object"
  326. },
  327. "AccountsList": {
  328. "description": "An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.",
  329. "id": "AccountsList",
  330. "properties": {
  331. "items": {
  332. "description": "A list of accounts.",
  333. "items": {
  334. "$ref": "Account"
  335. },
  336. "type": "array"
  337. },
  338. "kind": {
  339. "default": "adexchangebuyer#accountsList",
  340. "description": "Resource type.",
  341. "type": "string"
  342. }
  343. },
  344. "type": "object"
  345. },
  346. "Creative": {
  347. "description": "A creative and its classification data.",
  348. "id": "Creative",
  349. "properties": {
  350. "HTMLSnippet": {
  351. "description": "The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.",
  352. "type": "string"
  353. },
  354. "accountId": {
  355. "annotations": {
  356. "required": [
  357. "adexchangebuyer.creatives.insert"
  358. ]
  359. },
  360. "description": "Account id.",
  361. "format": "int32",
  362. "type": "integer"
  363. },
  364. "advertiserId": {
  365. "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.",
  366. "items": {
  367. "format": "int64",
  368. "type": "string"
  369. },
  370. "type": "array"
  371. },
  372. "advertiserName": {
  373. "annotations": {
  374. "required": [
  375. "adexchangebuyer.creatives.insert"
  376. ]
  377. },
  378. "description": "The name of the company being advertised in the creative.",
  379. "type": "string"
  380. },
  381. "agencyId": {
  382. "description": "The agency id for this creative.",
  383. "format": "int64",
  384. "type": "string"
  385. },
  386. "apiUploadTimestamp": {
  387. "description": "The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).",
  388. "format": "date-time",
  389. "type": "string"
  390. },
  391. "attribute": {
  392. "description": "All attributes for the ads that may be shown from this snippet.",
  393. "items": {
  394. "format": "int32",
  395. "type": "integer"
  396. },
  397. "type": "array"
  398. },
  399. "buyerCreativeId": {
  400. "annotations": {
  401. "required": [
  402. "adexchangebuyer.creatives.insert"
  403. ]
  404. },
  405. "description": "A buyer-specific id identifying the creative in this ad.",
  406. "type": "string"
  407. },
  408. "clickThroughUrl": {
  409. "annotations": {
  410. "required": [
  411. "adexchangebuyer.creatives.insert"
  412. ]
  413. },
  414. "description": "The set of destination urls for the snippet.",
  415. "items": {
  416. "type": "string"
  417. },
  418. "type": "array"
  419. },
  420. "corrections": {
  421. "description": "Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.",
  422. "items": {
  423. "properties": {
  424. "details": {
  425. "description": "Additional details about the correction.",
  426. "items": {
  427. "type": "string"
  428. },
  429. "type": "array"
  430. },
  431. "reason": {
  432. "description": "The type of correction that was applied to the creative.",
  433. "type": "string"
  434. }
  435. },
  436. "type": "object"
  437. },
  438. "type": "array"
  439. },
  440. "disapprovalReasons": {
  441. "description": "The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.",
  442. "items": {
  443. "properties": {
  444. "details": {
  445. "description": "Additional details about the reason for disapproval.",
  446. "items": {
  447. "type": "string"
  448. },
  449. "type": "array"
  450. },
  451. "reason": {
  452. "description": "The categorized reason for disapproval.",
  453. "type": "string"
  454. }
  455. },
  456. "type": "object"
  457. },
  458. "type": "array"
  459. },
  460. "filteringReasons": {
  461. "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.",
  462. "properties": {
  463. "date": {
  464. "description": "The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.",
  465. "type": "string"
  466. },
  467. "reasons": {
  468. "description": "The filtering reasons.",
  469. "items": {
  470. "properties": {
  471. "filteringCount": {
  472. "description": "The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.",
  473. "format": "int64",
  474. "type": "string"
  475. },
  476. "filteringStatus": {
  477. "description": "The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.",
  478. "format": "int32",
  479. "type": "integer"
  480. }
  481. },
  482. "type": "object"
  483. },
  484. "type": "array"
  485. }
  486. },
  487. "type": "object"
  488. },
  489. "height": {
  490. "annotations": {
  491. "required": [
  492. "adexchangebuyer.creatives.insert"
  493. ]
  494. },
  495. "description": "Ad height.",
  496. "format": "int32",
  497. "type": "integer"
  498. },
  499. "impressionTrackingUrl": {
  500. "description": "The set of urls to be called to record an impression.",
  501. "items": {
  502. "type": "string"
  503. },
  504. "type": "array"
  505. },
  506. "kind": {
  507. "default": "adexchangebuyer#creative",
  508. "description": "Resource type.",
  509. "type": "string"
  510. },
  511. "productCategories": {
  512. "description": "Detected product categories, if any. Read-only. This field should not be set in requests.",
  513. "items": {
  514. "format": "int32",
  515. "type": "integer"
  516. },
  517. "type": "array"
  518. },
  519. "restrictedCategories": {
  520. "description": "All restricted categories for the ads that may be shown from this snippet.",
  521. "items": {
  522. "format": "int32",
  523. "type": "integer"
  524. },
  525. "type": "array"
  526. },
  527. "sensitiveCategories": {
  528. "description": "Detected sensitive categories, if any. Read-only. This field should not be set in requests.",
  529. "items": {
  530. "format": "int32",
  531. "type": "integer"
  532. },
  533. "type": "array"
  534. },
  535. "status": {
  536. "description": "Creative serving status. Read-only. This field should not be set in requests.",
  537. "type": "string"
  538. },
  539. "vendorType": {
  540. "description": "All vendor types for the ads that may be shown from this snippet.",
  541. "items": {
  542. "format": "int32",
  543. "type": "integer"
  544. },
  545. "type": "array"
  546. },
  547. "version": {
  548. "description": "The version for this creative. Read-only. This field should not be set in requests.",
  549. "format": "int32",
  550. "type": "integer"
  551. },
  552. "videoURL": {
  553. "description": "The url to fetch a video ad. If set, HTMLSnippet should not be set.",
  554. "type": "string"
  555. },
  556. "width": {
  557. "annotations": {
  558. "required": [
  559. "adexchangebuyer.creatives.insert"
  560. ]
  561. },
  562. "description": "Ad width.",
  563. "format": "int32",
  564. "type": "integer"
  565. }
  566. },
  567. "type": "object"
  568. },
  569. "CreativesList": {
  570. "description": "The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.",
  571. "id": "CreativesList",
  572. "properties": {
  573. "items": {
  574. "description": "A list of creatives.",
  575. "items": {
  576. "$ref": "Creative"
  577. },
  578. "type": "array"
  579. },
  580. "kind": {
  581. "default": "adexchangebuyer#creativesList",
  582. "description": "Resource type.",
  583. "type": "string"
  584. },
  585. "nextPageToken": {
  586. "description": "Continuation token used to page through creatives. To retrieve the next page of results, set the next request's \"pageToken\" value to this.",
  587. "type": "string"
  588. }
  589. },
  590. "type": "object"
  591. }
  592. },
  593. "servicePath": "adexchangebuyer/v1.2/",
  594. "title": "Ad Exchange Buyer API",
  595. "version": "v1.2"
  596. }