2016-06-21 21 views
6

ho un id di articolo creato e ho anche può ottenere lo status di questo articolo con il metodo GET:Impossibile eliminare un articolo di metodo DELETE Facebook Instant articolo API

{article_id}?access_token={access_token} 

ricevo una risposta come:

{ 
    "id": {article_id}, 
    "status": "SUCCESS" 
} 

Ma quando provo a cancellare l'articolo con il metodo dELETE con le stesse params che sto ricevendo questa risposta:

{ 
    "error": { 
    "message": "(#240) Requires a valid user to be specified (either via the session or via the API parameter for specifying the user.", 
    "type": "OAuthException", 
    "code": 240, 
    "fbtrace_id": "GsXXXXBjq" 
    } 
} 

Tutto è stato fatto in base allo documentation.

sto usando v2.6 grafico versione di Pentecoste questo permesso:

publish_pages, pages_manage_instant_articles, manage_pages 

Io uso di un token pagina che non scadono, l'ho presa da @Simon.Ponder's answer.

Ho l'unico utente amministratore per l'applicazione e la pagina.

Come può essere risolto?

+0

Che tipo di token hai usato? – CBroe

+0

@CBroe Uso un token di pagina che non scade. – whitesiroi

+0

Solo curioso, potrebbe essere che l'endpoint non fosse correttamente documentato. Prova 'DELETE/{page-id}/instant_articles/{article-id}'. Questa [parte del grafico api docs] (https://developers.facebook.com/docs/graph-api/reference/page/instant_articles/#Deleting) è in conflitto con l'altro link che hai condiviso –

risposta

1

sono stato in grado di eliminare messaggio utilizzando facebook-instant-articles-sdk-php

 $client = Client::create(
        $this->options->app_id, 
        $this->options->app_secret, 
        $this->options->access_token, 
        $this->options->page_id, 
        true); 

    try { 
      $client->removeArticle($my_canonical_url) 
    } catch (Exception $e) { 
      throw $e->getMessage(); 
    } 

Speranza che aiuta qualcuno.

1

Nella tua domanda si dicono dopo aver postato il tuo articolo hai trovato risposta in questo modo

{ 
    "id": {article_id}, 
    "status": "SUCCESS" 
} 

Ma questo non è article_id questo è import_status_id. Così

{ 
     "id": {import_status_id}, 
    "status": "SUCCESS" 
} 

Con import_status_id si può ottenere utilizzando article_idthis api se i vostri articoli è pubblicato con successo. quindi puoi cancellare il tuo articolo usando delete api come al solito. Grazie.

+0

Grazie compagno per il tuo aiuto. – whitesiroi